--- title: Getting started weight: 10 aliases: /maas-quickstart/getting-started/ --- :toc: :imagesdir: /images :_content-type: ASSEMBLY include::modules/comm-attributes.adoc[] [id="deploying-maas-quickstart-pattern"] == Deploying the MaaS Code Assistant AI Quickstart pattern .Prerequisites * An OpenShift cluster (version 4.20 or later). This pattern requires at least 2 NVIDIA GPU nodes with 48 GB or more of VRAM each. ** *AWS*: The pattern automatically provisions 2 `g6e.2xlarge` GPU worker nodes (NVIDIA L40S) during installation. No GPU nodes need to be present before you deploy. ** *Other providers and bare metal*: GPU nodes must already be part of the OpenShift cluster before you deploy this pattern. The pattern installs all required operators automatically. ** To create an OpenShift cluster, go to the https://console.redhat.com/[Red Hat Hybrid Cloud console]. ** Select *OpenShift \-> Red Hat OpenShift Container Platform \-> Create cluster*. * The Helm binary. For instructions, see link:https://helm.sh/docs/intro/install/[Installing Helm]. * The `oc` CLI tool. For instructions, see link:https://docs.openshift.com/container-platform/latest/cli_reference/openshift_cli/getting-started-cli.html[Getting started with the OpenShift CLI]. * Additional installation tool dependencies. For details, see link:https://validatedpatterns.io/learn/quickstart/[Patterns quick start]. [id="preparing-for-deployment-maas"] == Preparing for deployment .Procedure . Fork the link:https://github.com/validatedpatterns-sandbox/ai-quickstart-maas-code-assistant[ai-quickstart-maas-code-assistant] repository on GitHub. You must fork the repository to customize this pattern. . Clone the forked copy of this repository. + [source,terminal] ---- $ git clone git@github.com:your-username/ai-quickstart-maas-code-assistant.git ---- . Go to the root directory of your Git repository: + [source,terminal] ---- $ cd ai-quickstart-maas-code-assistant ---- . Run the following command to set the upstream repository: + [source,terminal] ---- $ git remote add -f upstream git@github.com:validatedpatterns-sandbox/ai-quickstart-maas-code-assistant.git ---- . Verify the setup of your remote repositories by running the following command: + [source,terminal] ---- $ git remote -v ---- + .Example output + [source,terminal] ---- origin git@github.com:your-username/ai-quickstart-maas-code-assistant.git (fetch) origin git@github.com:your-username/ai-quickstart-maas-code-assistant.git (push) upstream git@github.com:validatedpatterns-sandbox/ai-quickstart-maas-code-assistant.git (fetch) upstream git@github.com:validatedpatterns-sandbox/ai-quickstart-maas-code-assistant.git (push) ---- . Make a local copy of the secrets template outside of your repository to hold credentials for the pattern. + [WARNING] ==== Do not add, commit, or push this file to your repository. Doing so might expose personal credentials to GitHub. ==== + Run the following command: + [source,terminal] ---- $ cp values-secret.yaml.template ~/values-secret-ai-quickstart-maas-code-assistant.yaml ---- . Populate this file with the user passwords needed for the pattern: + [source,terminal] ---- $ vim ~/values-secret-ai-quickstart-maas-code-assistant.yaml ---- .. Edit the `htpasswd` section to set passwords for each user tier: + [source,yaml] ---- - name: htpasswd fields: - name: admin value: - name: free-user value: - name: premium-user value: - name: enterprise-user value: ---- . Optional: To customize the deployment, create and switch to a new branch by running the following command: + [source,terminal] ---- $ git checkout -b my-branch ---- + Make your changes, then stage and commit them: + [source,terminal] ---- $ git add $ git commit -m "Customize deployment" ---- + Push the changes to your forked repository: + [source,terminal] ---- $ git push origin my-branch ---- [id="deploying-cluster-using-patternsh-file-maas"] == Deploying the pattern by using the pattern.sh file To deploy the pattern by using the `pattern.sh` file, complete the following steps: . Log in to your cluster by following this procedure: .. Obtain an API token by visiting link:https://oauth-openshift.apps../oauth/token/request[https://oauth-openshift.apps../oauth/token/request]. .. Log in to the cluster by running the following command: + [source,terminal] ---- $ oc login --token= --server=https://api..:6443 ---- + Or log in by running the following command: + [source,terminal] ---- $ export KUBECONFIG=~/ ---- . Deploy the pattern to your cluster. Run the following command: + [source,terminal] ---- $ ./pattern.sh make install ---- .Verification To verify a successful installation, check the health of the ArgoCD applications: . Run the following command: + [source,terminal] ---- $ ./pattern.sh make argo-healthcheck ---- + It might take several minutes for all applications to synchronize and reach a healthy state. This includes downloading the NVIDIA Nemotron models and configuring the inference endpoints. . Verify that the Operators are installed by navigating to *Operators -> Installed Operators* in the {ocp} web console. Confirm the following Operators are present: + * NVIDIA GPU Operator * {rhoai} * Red Hat OpenShift DevSpaces * Red Hat Connectivity Link . After all applications are healthy, verify the inference endpoints are serving by running: + [source,terminal] ---- $ oc get inferenceservice -A ---- . Access the OpenShift DevSpaces dashboard to confirm the IDE environment is available. Navigate to *Networking -> Routes* in the DevSpaces namespace and open the route URL. [id="next-steps-getting-started-maas"] == Next steps * link:customizing-this-pattern[Customizing this pattern] * link:cluster-sizing[Cluster sizing] * link:troubleshooting[Troubleshooting]