Skip to content

Proxy settings not being applied when no certConfigMap is specified #700

@tgdfool2

Description

@tgdfool2

1. Quick Debug Information

  • OS/Version(e.g. RHEL8.6, Ubuntu22.04): Ubuntu 22.04
  • Kernel Version: 5.15.0-1081-nvidia
  • Container Runtime Type/Version(e.g. Containerd, CRI-O, Docker): containerd-1.7.25
  • K8s Flavor/Version(e.g. K8s, OCP, Rancher, GKE, EKS): Kubernetes
  • GPU Operator Version: v25.10.0
  • NIM Operator Version: v3.0.1
  • LLM NIM Versions: nvcr.io/nim/meta/llama-3.3-70b-instruct:1.12.0

2. Issue or feature description

Setting the following proxy settings to the NIMService:

---
apiVersion: apps.nvidia.com/v1alpha1
kind: NIMService
metadata:
  name: llama-3-3-70b-instruct
spec:
  image:
    repository: nvcr.io/nim/meta/llama-3.3-70b-instruct
    tag: "1.12.0"
    pullPolicy: IfNotPresent
    pullSecrets:
      - nvcrimagepullsecret
  authSecret: ngc-api
  proxy:
    httpProxy: "<REDACTED>"
    httpsProxy: "<REDACTED>"
    noProxy: "<REDACTED>"
  storage:
    nimCache:
      name: llama-3-3-70b-instruct
  replicas: 1
  resources:
    limits:
      nvidia.com/gpu: "4"
    requests:
      nvidia.com/gpu: "4"
  expose:
    service:
      type: ClusterIP
      port: 8000
  metrics:
    enabled: true
  scale:
    enabled: false

Makes the reconciliation fail with the following error message:

nim-operator-k8s-nim-operator-5fcd5f57b-jvf4k manager {"level":"info","ts":"2025-11-03T14:16:18Z","logger":"controllers.NIMService","msg":"Reconciling NIMService instance","nimservice":"llama-3-3-70b-instruct"}
nim-operator-k8s-nim-operator-5fcd5f57b-jvf4k manager {"level":"error","ts":"2025-11-03T14:16:18Z","msg":"failed to sync","controller":"nimservice","controllerGroup":"apps.nvidia.com","controllerKind":"NIMService","NIMService":{"name":"llama-3-3-70b-instruct","namespace":"swiss-ai-platform"},"namespace":"swiss-ai-platform","name":"llama-3-3-70b-instruct","reconcileID":"9512f062-d314-4a41-af52-1c0bf354bf8d","Deployment":{"name":"llama-3-3-70b-instruct","namespace":"swiss-ai-platform"},"error":"Deployment.apps \"llama-3-3-70b-instruct\" is invalid: [spec.template.spec.volumes[3].configMap.name: Required value, spec.template.spec.initContainers[0].volumeMounts[1].name: Not found: \"custom-ca\"]","stacktrace":"github.com/NVIDIA/k8s-nim-operator/internal/controller/platform/standalone.(*NIMServiceReconciler).renderAndSyncResource\n\t/workspace/internal/controller/platform/standalone/nimservice.go:808\ngithub.com/NVIDIA/k8s-nim-operator/internal/controller/platform/standalone.(*NIMServiceReconciler).reconcileNIMService\n\t/workspace/internal/controller/platform/standalone/nimservice.go:476\ngithub.com/NVIDIA/k8s-nim-operator/internal/controller/platform/standalone.(*Standalone).Sync\n\t/workspace/internal/controller/platform/standalone/standalone.go:119\ngithub.com/NVIDIA/k8s-nim-operator/internal/controller.(*NIMServiceReconciler).Reconcile\n\t/workspace/internal/controller/nimservice_controller.go:179\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller[...]).Reconcile\n\t/workspace/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:119\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller[...]).reconcileHandler\n\t/workspace/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:334\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller[...]).processNextWorkItem\n\t/workspace/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:294\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller[...]).Start.func2.2\n\t/workspace/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:255"}

It looks like the spec.proxy.certConfigMap would be required, but we don't need it in our infrastructure. How can we bypass this issue?

Currently, we are defining the proxy settings through http_proxy, https_proxy and no_proxy environment variables, and this is working just fine. We just wanted to switch to the more "supported" approach since NIM Operator v2.

Thanks in advance for your support!

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions