$ podman --versionTroubleshooting the MaaS Code Assistant AI Quickstart pattern
Use this page to diagnose and resolve common issues when deploying or operating this pattern.
Prerequisite and tooling issues
Podman version not supported
The pattern.sh script requires Podman 4.3.0 or later. Earlier versions do not support the --userns=keep-id flag required for correct UID/GID mapping inside the container.
The script exits with an error referencing the Podman version or keep-id.
Check your Podman version:
If the version is earlier than 4.3.0, upgrade Podman. For instructions, see the Podman installation documentation.
KUBECONFIG path is outside the HOME directory
The pattern.sh script runs inside a container and mounts your $HOME directory. If your KUBECONFIG file is located outside $HOME, the container cannot access it.
The script fails to connect to the cluster or reports that the kubeconfig file cannot be found.
Move your kubeconfig file to a path inside your home directory and export the updated path:
$ cp <current-kubeconfig-path> ~/kubeconfig
$ export KUBECONFIG=~/kubeconfigDeployment issues
ArgoCD applications are not syncing or are unhealthy
After running ./pattern.sh make install, ArgoCD applications can take 15–30 minutes to reach a healthy state. Model downloads and GPU operator initialization take additional time.
Running ./pattern.sh make argo-healthcheck reports applications in Progressing or Degraded state.
Check which applications are not healthy:
$ oc get applications -n openshift-gitopsInspect the failing application for error details:
$ oc describe application <application-name> -n openshift-gitopsCheck the logs of the ArgoCD application controller:
$ oc logs -n openshift-gitops deployment/openshift-gitops-application-controllerIf applications are stuck in
Progressing, wait an additional 10 minutes and re-run the health check. Model downloads from OCI registries can take significant time depending on network conditions.
Values file schema validation fails
The pattern validates values-*.yaml files against a schema before deployment.
Running ./pattern.sh make install fails with a schema validation error.
Run the validation step independently to see the full error output:
$ ./pattern.sh make validate-schemaReview the error message to identify the malformed field and correct the value in your
values-secret.yamloroverrides/maas-quickstart.yamlfile.
GPU and inference issues
GPU nodes are not ready
The NVIDIA GPU Operator must successfully initialize on each GPU node before model serving can start.
Inference service pods remain in Pending state, or oc get inferenceservice -A shows services not ready.
Check the status of GPU nodes:
$ oc get nodes -l nvidia.com/gpu.present=trueCheck the NVIDIA GPU Operator pods:
$ oc get pods -n nvidia-gpu-operatorCheck for driver initialization errors:
$ oc logs -n nvidia-gpu-operator -l app=nvidia-driver-daemonsetIf you are using a provider other than AWS, confirm that GPU nodes were present in the cluster before you deployed the pattern. The pattern does not provision GPU nodes on providers other than AWS.
Inference endpoints are not serving
oc get inferenceservice -A shows inference services in a non-ready state, or the Continue AI extension in DevSpaces returns connection errors.
Check the status of inference services:
$ oc get inferenceservice -ACheck the vLLM model server pod logs for a specific model:
$ oc logs -n redhat-ods-applications -l serving.kserve.io/inferenceservice=<model-name>Confirm that the GPU nodes have sufficient available VRAM. Each model requires a GPU with at least 48 GB of VRAM. If both models are scheduled on the same node, the node requires at least 96 GB of VRAM or you must use two separate GPU nodes.
Rate limiting and authentication issues
Rate limiting is not enforced
Requests from all users succeed regardless of the configured rate limits, or requests are blocked for all users.
Check the status of the Kuadrant operator and Limitador pod:
$ oc get pods -n kuadrant-systemCheck the Limitador logs for policy errors:
$ oc logs -n kuadrant-system deployment/limitadorConfirm that rate limit policies are applied correctly:
$ oc get ratelimitpolicy -A
Users cannot authenticate
Users receive authentication errors when accessing the inference API or DevSpaces.
Confirm that the htpasswd secret was correctly provisioned by the External Secrets Operator:
$ oc get externalsecret -A $ oc get secret htpasswd-secret -n openshift-configIf the secret is missing or incorrect, verify that your
values-secret.yamlfile contains the correct passwords for all four users (admin,free-user,premium-user,enterprise-user) and redeploy the pattern.
OpenShift DevSpaces issues
Continue AI extension cannot connect to inference endpoints
Code suggestions are not returned in DevSpaces, or the Continue extension reports a connection error.
Confirm that the inference services are healthy:
$ oc get inferenceservice -ANavigate to Networking → Routes in the namespace where the inference services are running and confirm the routes are accessible.
In DevSpaces, open the Continue extension settings and verify that the endpoint URL matches the route URL for the vLLM service.
Getting help
If you cannot resolve an issue using this guide:
Check the GitHub issues for known problems and workarounds.
Open a new issue with the output of the following command to help diagnose the problem:
$ oc get pods -A | grep -v Running | grep -v Completed
