--- apiVersion: v1 items: - apiVersion: v1 kind: Pod metadata: annotations: app.opendatahub.io/KserveConfigHash: P35ozkSL0msVEalVZIGO0zuFehzAwvjUWSycn-gndok k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.133.0.21/23"],"mac_address":"0a:58:0a:85:00:15","gateway_ips":["10.133.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.133.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.133.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.133.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.133.0.1"}],"ip_address":"10.133.0.21/23","gateway_ip":"10.133.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.133.0.21" ], "mac": "0a:58:0a:85:00:15", "default": true, "dns": {} }] kubectl.kubernetes.io/default-container: manager openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: user creationTimestamp: "2026-07-02T23:12:24Z" generateName: kserve-controller-manager-d6f4b65b8- generation: 1 labels: app.kubernetes.io/name: kserve-controller-manager app.kubernetes.io/part-of: kserve app.opendatahub.io/kserve: "true" control-plane: kserve-controller-manager controller-tools.k8s.io: "1.0" pod-template-hash: d6f4b65b8 managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-136-243 operation: Update subresource: status time: "2026-07-02T23:12:24Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:app.opendatahub.io/KserveConfigHash: {} f:kubectl.kubernetes.io/default-container: {} f:generateName: {} f:labels: .: {} f:app.kubernetes.io/name: {} f:app.kubernetes.io/part-of: {} f:app.opendatahub.io/kserve: {} f:control-plane: {} f:controller-tools.k8s.io: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"c49ed522-6aba-478f-b8b6-dab38e242620"}: {} f:spec: f:containers: k:{"name":"manager"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"LLM_INFERENCE_SERVICE_CONFIG_PREFIX"}: .: {} f:name: {} f:value: {} k:{"name":"POD_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"SECRET_NAME"}: .: {} f:name: {} f:value: {} f:image: {} f:imagePullPolicy: {} f:livenessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:ports: .: {} k:{"containerPort":9443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:privileged: {} f:readOnlyRootFilesystem: {} f:runAsNonRoot: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/tmp/k8s-webhook-server/serving-certs"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-07-02T23:12:24Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-02T23:12:24Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.133.0.21"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-02T23:12:59Z" name: kserve-controller-manager-d6f4b65b8-5nccz namespace: opendatahub ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: kserve-controller-manager-d6f4b65b8 uid: c49ed522-6aba-478f-b8b6-dab38e242620 resourceVersion: "15555" uid: 3dc2f7e3-a8b3-4280-a2f1-828b24282c70 spec: containers: - args: - --metrics-addr=127.0.0.1:8080 - --leader-elect command: - /manager env: - name: POD_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: SECRET_NAME value: kserve-webhook-server-cert - name: LLM_INFERENCE_SERVICE_CONFIG_PREFIX value: v3-5-0-ea-2-kserve- image: quay.io/opendatahub/kserve-controller:odh-v3.5-EA2 imagePullPolicy: Always livenessProbe: failureThreshold: 5 httpGet: path: /healthz port: 8081 scheme: HTTP initialDelaySeconds: 30 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 5 name: manager ports: - containerPort: 9443 name: webhook-server protocol: TCP readinessProbe: failureThreshold: 5 httpGet: path: /readyz port: 8081 scheme: HTTP initialDelaySeconds: 30 periodSeconds: 5 successThreshold: 1 timeoutSeconds: 5 resources: limits: cpu: 500m memory: 500Mi requests: cpu: 100m memory: 200Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL privileged: false readOnlyRootFilesystem: true runAsNonRoot: true runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: cert readOnly: true - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-9zlvb readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: kserve-controller-manager-dockercfg-m8zh7 nodeName: ip-10-0-136-243.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000660000 runAsNonRoot: true seLinuxOptions: level: s0:c26,c5 seccompProfile: type: RuntimeDefault serviceAccount: kserve-controller-manager serviceAccountName: kserve-controller-manager terminationGracePeriodSeconds: 10 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - name: cert secret: defaultMode: 420 secretName: kserve-webhook-server-cert - name: kube-api-access-9zlvb projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:28Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:24Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:59Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:59Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:24Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 100m memory: 200Mi containerID: cri-o://81b9cec7d5970516f3623fb7d14d95c501e69f957493e120519cae6e594caa07 image: quay.io/opendatahub/kserve-controller:odh-v3.5-EA2 imageID: quay.io/opendatahub/kserve-controller@sha256:0367496c5c5155e53df50ad25a64a7016e5f7496ae22a4c9dedce7d296b8e9e1 lastState: {} name: manager ready: true resources: limits: cpu: 500m memory: 500Mi requests: cpu: 100m memory: 200Mi restartCount: 0 started: true state: running: startedAt: "2026-07-02T23:12:28Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: cert readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-9zlvb readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.136.243 hostIPs: - ip: 10.0.136.243 observedGeneration: 1 phase: Running podIP: 10.133.0.21 podIPs: - ip: 10.133.0.21 qosClass: Burstable startTime: "2026-07-02T23:12:24Z" - apiVersion: v1 kind: Pod metadata: annotations: k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.133.0.22/23"],"mac_address":"0a:58:0a:85:00:16","gateway_ips":["10.133.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.133.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.133.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.133.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.133.0.1"}],"ip_address":"10.133.0.22/23","gateway_ip":"10.133.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.133.0.22" ], "mac": "0a:58:0a:85:00:16", "default": true, "dns": {} }] kubectl.kubernetes.io/default-container: manager openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: user creationTimestamp: "2026-07-02T23:12:24Z" generateName: llmisvc-controller-manager-777c6bd7d5- generation: 1 labels: app.kubernetes.io/component: controller app.kubernetes.io/name: llmisvc-controller-manager app.kubernetes.io/part-of: kserve app.opendatahub.io/kserve: "true" control-plane: llmisvc-controller-manager controller-tools.k8s.io: "1.0" pod-template-hash: 777c6bd7d5 managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-136-243 operation: Update subresource: status time: "2026-07-02T23:12:24Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:kubectl.kubernetes.io/default-container: {} f:generateName: {} f:labels: .: {} f:app.kubernetes.io/component: {} f:app.kubernetes.io/name: {} f:app.kubernetes.io/part-of: {} f:app.opendatahub.io/kserve: {} f:control-plane: {} f:controller-tools.k8s.io: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"04341e19-2aca-4f69-93c8-584489b9452c"}: {} f:spec: f:containers: k:{"name":"manager"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"LLM_INFERENCE_SERVICE_CONFIG_PREFIX"}: .: {} f:name: {} f:value: {} k:{"name":"POD_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} f:image: {} f:imagePullPolicy: {} f:livenessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:ports: .: {} k:{"containerPort":8443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} k:{"containerPort":9443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:privileged: {} f:readOnlyRootFilesystem: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/tmp/k8s-webhook-server/serving-certs"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-07-02T23:12:24Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-02T23:12:24Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.133.0.22"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-02T23:12:59Z" name: llmisvc-controller-manager-777c6bd7d5-lgpbn namespace: opendatahub ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: llmisvc-controller-manager-777c6bd7d5 uid: 04341e19-2aca-4f69-93c8-584489b9452c resourceVersion: "15549" uid: 26539bc2-ca5b-4dae-a116-5475c9ff79b5 spec: containers: - args: - --metrics-addr=127.0.0.1:8443 - --leader-elect command: - /manager env: - name: POD_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: LLM_INFERENCE_SERVICE_CONFIG_PREFIX value: v3-5-0-ea-2-kserve- image: quay.io/opendatahub/odh-kserve-llmisvc-controller:odh-v3.5-EA2 imagePullPolicy: Always livenessProbe: failureThreshold: 5 httpGet: path: /healthz port: 8081 scheme: HTTP initialDelaySeconds: 30 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 5 name: manager ports: - containerPort: 9443 name: webhook-server protocol: TCP - containerPort: 8443 name: metrics protocol: TCP readinessProbe: failureThreshold: 5 httpGet: path: /readyz port: 8081 scheme: HTTP initialDelaySeconds: 30 periodSeconds: 5 successThreshold: 1 timeoutSeconds: 5 resources: limits: cpu: 100m memory: 300Mi requests: cpu: 100m memory: 300Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL privileged: false readOnlyRootFilesystem: true runAsNonRoot: true runAsUser: 1000660000 seccompProfile: type: RuntimeDefault terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: cert readOnly: true - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-gbszw readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: llmisvc-controller-manager-dockercfg-dpbxk nodeName: ip-10-0-136-243.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000660000 runAsNonRoot: true seLinuxOptions: level: s0:c26,c5 seccompProfile: type: RuntimeDefault serviceAccount: llmisvc-controller-manager serviceAccountName: llmisvc-controller-manager terminationGracePeriodSeconds: 30 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - name: cert secret: defaultMode: 420 secretName: llmisvc-webhook-server-cert - name: kube-api-access-gbszw projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:28Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:24Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:59Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:59Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:24Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 100m memory: 300Mi containerID: cri-o://d460187d9e04ebe15b9ccd783b0ab04e3ac20986e7c7aab1571578ef909cac17 image: quay.io/opendatahub/odh-kserve-llmisvc-controller:odh-v3.5-EA2 imageID: quay.io/opendatahub/odh-kserve-llmisvc-controller@sha256:69f28de9d143763eab2e1375f62f916b462a137aeb1c0f72be43ab1345e87f6c lastState: {} name: manager ready: true resources: limits: cpu: 100m memory: 300Mi requests: cpu: 100m memory: 300Mi restartCount: 0 started: true state: running: startedAt: "2026-07-02T23:12:28Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: cert readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-gbszw readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.136.243 hostIPs: - ip: 10.0.136.243 observedGeneration: 1 phase: Running podIP: 10.133.0.22 podIPs: - ip: 10.133.0.22 qosClass: Guaranteed startTime: "2026-07-02T23:12:24Z" - apiVersion: v1 kind: Pod metadata: annotations: k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.134.0.35/23"],"mac_address":"0a:58:0a:86:00:23","gateway_ips":["10.134.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.134.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.134.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.134.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.134.0.1"}],"ip_address":"10.134.0.35/23","gateway_ip":"10.134.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.134.0.35" ], "mac": "0a:58:0a:86:00:23", "default": true, "dns": {} }] openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: user creationTimestamp: "2026-07-02T23:16:13Z" generateName: maas-api-58b7999567- generation: 1 labels: app.kubernetes.io/component: api app.kubernetes.io/name: maas-api app.kubernetes.io/part-of: models-as-a-service maas.opendatahub.io/tenant-instance: maas-api pod-template-hash: 58b7999567 managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-141-220 operation: Update subresource: status time: "2026-07-02T23:16:13Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:generateName: {} f:labels: .: {} f:app.kubernetes.io/component: {} f:app.kubernetes.io/name: {} f:app.kubernetes.io/part-of: {} f:maas.opendatahub.io/tenant-instance: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"c809b2a3-1081-4e48-a17a-6f36509f4e05"}: {} f:spec: f:containers: k:{"name":"maas-api"}: .: {} f:env: .: {} k:{"name":"API_KEY_MAX_EXPIRATION_DAYS"}: .: {} f:name: {} f:value: {} k:{"name":"GATEWAY_NAME"}: .: {} f:name: {} f:value: {} k:{"name":"GATEWAY_NAMESPACE"}: .: {} f:name: {} f:value: {} k:{"name":"MAAS_SUBSCRIPTION_NAMESPACE"}: .: {} f:name: {} f:value: {} k:{"name":"METRICS_PORT"}: .: {} f:name: {} f:value: {} k:{"name":"NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"SECURE"}: .: {} f:name: {} f:value: {} k:{"name":"SSL_CERT_DIR"}: .: {} f:name: {} f:value: {} k:{"name":"TENANT_NAME"}: .: {} f:name: {} f:value: {} k:{"name":"TLS_CERT"}: .: {} f:name: {} f:value: {} k:{"name":"TLS_KEY"}: .: {} f:name: {} f:value: {} f:image: {} f:imagePullPolicy: {} f:livenessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:ports: .: {} k:{"containerPort":8443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:readOnlyRootFilesystem: {} f:runAsNonRoot: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/etc/maas-api/tls"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} k:{"mountPath":"/etc/ssl/certs/openshift-service-ca"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"maas-api-tls"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"openshift-service-ca"}: .: {} f:configMap: .: {} f:defaultMode: {} f:name: {} f:name: {} manager: kube-controller-manager operation: Update time: "2026-07-02T23:16:13Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-02T23:16:14Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.134.0.35"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-02T23:16:22Z" name: maas-api-58b7999567-25htw namespace: opendatahub ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: maas-api-58b7999567 uid: c809b2a3-1081-4e48-a17a-6f36509f4e05 resourceVersion: "22158" uid: 2f421f72-9544-476e-bfcf-1b8931a2c51f spec: containers: - env: - name: SECURE value: "true" - name: TLS_CERT value: /etc/maas-api/tls/tls.crt - name: TLS_KEY value: /etc/maas-api/tls/tls.key - name: SSL_CERT_DIR value: /etc/ssl/certs:/etc/ssl/certs/openshift-service-ca - name: NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: MAAS_SUBSCRIPTION_NAMESPACE value: models-as-a-service - name: METRICS_PORT value: "9090" - name: GATEWAY_NAMESPACE value: openshift-ingress - name: GATEWAY_NAME value: maas-default-gateway - name: API_KEY_MAX_EXPIRATION_DAYS value: "90" - name: TENANT_NAME value: models-as-a-service image: quay.io/opendatahub/maas-api@sha256:c9dd6fb486c6a52cc393a83c5fbc24febbdfa5a7b9487e2af534bbb3e7e619eb imagePullPolicy: Always livenessProbe: failureThreshold: 3 httpGet: path: /health port: https scheme: HTTPS initialDelaySeconds: 30 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 5 name: maas-api ports: - containerPort: 8443 name: https protocol: TCP readinessProbe: failureThreshold: 3 httpGet: path: /health port: https scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 5 successThreshold: 1 timeoutSeconds: 3 resources: limits: cpu: 200m memory: 128Mi requests: cpu: 50m memory: 64Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsNonRoot: true runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /etc/maas-api/tls name: maas-api-tls readOnly: true - mountPath: /etc/ssl/certs/openshift-service-ca name: openshift-service-ca readOnly: true - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-lkzcd readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: maas-api-dockercfg-c9hnp nodeName: ip-10-0-141-220.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000660000 runAsNonRoot: true seLinuxOptions: level: s0:c26,c5 seccompProfile: type: RuntimeDefault serviceAccount: maas-api serviceAccountName: maas-api terminationGracePeriodSeconds: 30 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - name: maas-api-tls secret: defaultMode: 420 secretName: maas-api-serving-cert - configMap: defaultMode: 420 name: openshift-service-ca.crt name: openshift-service-ca - name: kube-api-access-lkzcd projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-02T23:16:16Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-02T23:16:13Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-02T23:16:22Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-02T23:16:22Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-02T23:16:13Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 50m memory: 64Mi containerID: cri-o://d104935e52102535a5867a822d969fb65ec24f8e42f28fb0dc525a1f305a0bfd image: quay.io/opendatahub/maas-api@sha256:c9dd6fb486c6a52cc393a83c5fbc24febbdfa5a7b9487e2af534bbb3e7e619eb imageID: quay.io/opendatahub/maas-api@sha256:879e2571a3d3139cdc5647c088913e491e7838efb0448886e03424a0d89758a5 lastState: {} name: maas-api ready: true resources: limits: cpu: 200m memory: 128Mi requests: cpu: 50m memory: 64Mi restartCount: 0 started: true state: running: startedAt: "2026-07-02T23:16:15Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /etc/maas-api/tls name: maas-api-tls readOnly: true recursiveReadOnly: Disabled - mountPath: /etc/ssl/certs/openshift-service-ca name: openshift-service-ca readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-lkzcd readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.141.220 hostIPs: - ip: 10.0.141.220 observedGeneration: 1 phase: Running podIP: 10.134.0.35 podIPs: - ip: 10.134.0.35 qosClass: Burstable startTime: "2026-07-02T23:16:13Z" - apiVersion: v1 kind: Pod metadata: annotations: k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.133.0.44/23"],"mac_address":"0a:58:0a:85:00:2c","gateway_ips":["10.133.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.133.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.133.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.133.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.133.0.1"}],"ip_address":"10.133.0.44/23","gateway_ip":"10.133.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.133.0.44" ], "mac": "0a:58:0a:85:00:2c", "default": true, "dns": {} }] openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: user creationTimestamp: "2026-07-02T23:30:00Z" generateName: maas-api-key-cleanup-29717250- generation: 1 labels: app: maas-api-cleanup app.kubernetes.io/component: api app.kubernetes.io/name: maas-api app.kubernetes.io/part-of: models-as-a-service batch.kubernetes.io/controller-uid: b9bb5824-4959-432e-a595-87c02859dd1f batch.kubernetes.io/job-name: maas-api-key-cleanup-29717250 controller-uid: b9bb5824-4959-432e-a595-87c02859dd1f job-name: maas-api-key-cleanup-29717250 managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-136-243 operation: Update subresource: status time: "2026-07-02T23:30:00Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:generateName: {} f:labels: .: {} f:app: {} f:app.kubernetes.io/component: {} f:app.kubernetes.io/name: {} f:app.kubernetes.io/part-of: {} f:batch.kubernetes.io/controller-uid: {} f:batch.kubernetes.io/job-name: {} f:controller-uid: {} f:job-name: {} f:ownerReferences: .: {} k:{"uid":"b9bb5824-4959-432e-a595-87c02859dd1f"}: {} f:spec: f:containers: k:{"name":"cleanup"}: .: {} f:command: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:readOnlyRootFilesystem: {} f:runAsNonRoot: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} manager: kube-controller-manager operation: Update time: "2026-07-02T23:30:00Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-02T23:30:00Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:reason: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:reason: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:reason: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.133.0.44"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-02T23:30:06Z" name: maas-api-key-cleanup-29717250-kckqj namespace: opendatahub ownerReferences: - apiVersion: batch/v1 blockOwnerDeletion: true controller: true kind: Job name: maas-api-key-cleanup-29717250 uid: b9bb5824-4959-432e-a595-87c02859dd1f resourceVersion: "37184" uid: 24e21038-26ea-4a86-a69c-45b52904e31b spec: containers: - command: - /bin/sh - -c - | curl -sf -k -X POST https://maas-api:8443/internal/v1/api-keys/cleanup image: registry.redhat.io/ubi9/ubi-minimal:9.7 imagePullPolicy: IfNotPresent name: cleanup resources: limits: cpu: 50m memory: 32Mi requests: cpu: 10m memory: 16Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsNonRoot: true runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-sbmtb readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: maas-api-dockercfg-c9hnp nodeName: ip-10-0-136-243.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: OnFailure schedulerName: default-scheduler securityContext: fsGroup: 1000660000 runAsNonRoot: true seLinuxOptions: level: s0:c26,c5 seccompProfile: type: RuntimeDefault serviceAccount: maas-api serviceAccountName: maas-api terminationGracePeriodSeconds: 30 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - name: kube-api-access-sbmtb projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-02T23:30:06Z" observedGeneration: 1 status: "False" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-02T23:30:00Z" observedGeneration: 1 reason: PodCompleted status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-02T23:30:04Z" observedGeneration: 1 reason: PodCompleted status: "False" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-02T23:30:04Z" observedGeneration: 1 reason: PodCompleted status: "False" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-02T23:30:00Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 10m memory: 16Mi containerID: cri-o://41dc6bbf2dd4843fd41068d92f2ecd12f58c0569ec13c60317963e821e2d4542 image: registry.redhat.io/ubi9/ubi-minimal:9.7 imageID: registry.redhat.io/ubi9/ubi-minimal@sha256:907b68736aa798b2d38255b7aa070b2a70acb90803864a40f05d0ec47556ddd0 lastState: {} name: cleanup ready: false resources: limits: cpu: 50m memory: 32Mi requests: cpu: 10m memory: 16Mi restartCount: 0 started: false state: terminated: containerID: cri-o://41dc6bbf2dd4843fd41068d92f2ecd12f58c0569ec13c60317963e821e2d4542 exitCode: 0 finishedAt: "2026-07-02T23:30:03Z" reason: Completed startedAt: "2026-07-02T23:30:03Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-sbmtb readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.136.243 hostIPs: - ip: 10.0.136.243 observedGeneration: 1 phase: Succeeded podIP: 10.133.0.44 podIPs: - ip: 10.133.0.44 qosClass: Burstable startTime: "2026-07-02T23:30:00Z" - apiVersion: v1 kind: Pod metadata: annotations: k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.134.0.39/23"],"mac_address":"0a:58:0a:86:00:27","gateway_ips":["10.134.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.134.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.134.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.134.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.134.0.1"}],"ip_address":"10.134.0.39/23","gateway_ip":"10.134.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.134.0.39" ], "mac": "0a:58:0a:86:00:27", "default": true, "dns": {} }] kubectl.kubernetes.io/restartedAt: "2026-07-02T23:15:39Z" openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: user creationTimestamp: "2026-07-02T23:20:03Z" generateName: maas-controller-54f69f846c- generation: 1 labels: app: maas-controller control-plane: maas-controller pod-template-hash: 54f69f846c managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-141-220 operation: Update subresource: status time: "2026-07-02T23:20:03Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:kubectl.kubernetes.io/restartedAt: {} f:generateName: {} f:labels: .: {} f:app: {} f:control-plane: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"8479d76e-16b5-4ebb-b252-0984818c2e97"}: {} f:spec: f:containers: k:{"name":"manager"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"AITENANT_NAMESPACE"}: .: {} f:name: {} f:value: {} k:{"name":"CONTROLLER_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"GATEWAY_NAME"}: .: {} f:name: {} f:value: {} k:{"name":"GATEWAY_NAMESPACE"}: .: {} f:name: {} f:value: {} k:{"name":"MAAS_API_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"MAAS_SUBSCRIPTION_NAMESPACE"}: .: {} f:name: {} f:value: {} k:{"name":"MONITORING_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:configMapKeyRef: {} k:{"name":"RELATED_IMAGE_ODH_AI_GATEWAY_PAYLOAD_PROCESSING_IMAGE"}: .: {} f:name: {} f:valueFrom: .: {} f:configMapKeyRef: {} k:{"name":"RELATED_IMAGE_ODH_MAAS_API_IMAGE"}: .: {} f:name: {} f:valueFrom: .: {} f:configMapKeyRef: {} k:{"name":"RELATED_IMAGE_UBI_MINIMAL_IMAGE"}: .: {} f:name: {} f:valueFrom: .: {} f:configMapKeyRef: {} f:image: {} f:imagePullPolicy: {} f:livenessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:ports: .: {} k:{"containerPort":8080,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/tmp/k8s-webhook-server/serving-certs"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"webhook-cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-07-02T23:20:03Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-02T23:20:04Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.134.0.39"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-02T23:20:16Z" name: maas-controller-54f69f846c-hpsgv namespace: opendatahub ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: maas-controller-54f69f846c uid: 8479d76e-16b5-4ebb-b252-0984818c2e97 resourceVersion: "26193" uid: ad953538-ed65-4b38-8bf8-18d01bfcf60f spec: containers: - args: - --leader-elect - --health-probe-bind-address=:8081 - --controller-namespace=$(CONTROLLER_NAMESPACE) - --gateway-name=$(GATEWAY_NAME) - --gateway-namespace=$(GATEWAY_NAMESPACE) - --maas-api-namespace=$(MAAS_API_NAMESPACE) - --maas-subscription-namespace=$(MAAS_SUBSCRIPTION_NAMESPACE) - --aitenant-namespace=$(AITENANT_NAMESPACE) - --monitoring-namespace=$(MONITORING_NAMESPACE) - --enable-tenant-namespace-discovery - --metadata-cache-ttl=60 - --authz-cache-ttl=60 command: - /manager env: - name: CONTROLLER_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: GATEWAY_NAME value: maas-default-gateway - name: GATEWAY_NAMESPACE value: openshift-ingress - name: MAAS_API_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: MAAS_SUBSCRIPTION_NAMESPACE value: models-as-a-service - name: AITENANT_NAMESPACE value: ai-tenants - name: RELATED_IMAGE_ODH_MAAS_API_IMAGE valueFrom: configMapKeyRef: key: maas-api-image name: maas-parameters optional: true - name: RELATED_IMAGE_ODH_AI_GATEWAY_PAYLOAD_PROCESSING_IMAGE valueFrom: configMapKeyRef: key: payload-processing-image name: maas-parameters optional: true - name: RELATED_IMAGE_UBI_MINIMAL_IMAGE valueFrom: configMapKeyRef: key: maas-api-key-cleanup-image name: maas-parameters optional: true - name: MONITORING_NAMESPACE valueFrom: configMapKeyRef: key: monitoring-namespace name: maas-parameters optional: true image: quay.io/opendatahub/maas-controller@sha256:325c5d72830b2dd059ae313f88b361ac2b2111bd6a8228668d08db4e80230b80 imagePullPolicy: Always livenessProbe: failureThreshold: 3 httpGet: path: /healthz port: 8081 scheme: HTTP initialDelaySeconds: 15 periodSeconds: 20 successThreshold: 1 timeoutSeconds: 1 name: manager ports: - containerPort: 8080 name: metrics protocol: TCP readinessProbe: failureThreshold: 3 httpGet: path: /readyz port: 8081 scheme: HTTP initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 1 resources: limits: cpu: 500m memory: 512Mi requests: cpu: 10m memory: 64Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: webhook-cert readOnly: true - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-nq46p readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: maas-controller-dockercfg-bh578 nodeName: ip-10-0-141-220.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000660000 runAsNonRoot: true seLinuxOptions: level: s0:c26,c5 seccompProfile: type: RuntimeDefault serviceAccount: maas-controller serviceAccountName: maas-controller terminationGracePeriodSeconds: 30 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - name: webhook-cert secret: defaultMode: 420 secretName: maas-controller-webhook-cert - name: kube-api-access-nq46p projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-02T23:20:05Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-02T23:20:03Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-02T23:20:16Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-02T23:20:16Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-02T23:20:03Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 10m memory: 64Mi containerID: cri-o://e0bcbf8cb47b3a310e2dbca8ad20420d983e1ab8511c0fd419e81f9ae9f3443b image: quay.io/opendatahub/maas-controller@sha256:325c5d72830b2dd059ae313f88b361ac2b2111bd6a8228668d08db4e80230b80 imageID: quay.io/opendatahub/maas-controller@sha256:325c5d72830b2dd059ae313f88b361ac2b2111bd6a8228668d08db4e80230b80 lastState: {} name: manager ready: true resources: limits: cpu: 500m memory: 512Mi requests: cpu: 10m memory: 64Mi restartCount: 0 started: true state: running: startedAt: "2026-07-02T23:20:04Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: webhook-cert readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-nq46p readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.141.220 hostIPs: - ip: 10.0.141.220 observedGeneration: 1 phase: Running podIP: 10.134.0.39 podIPs: - ip: 10.134.0.39 qosClass: Burstable startTime: "2026-07-02T23:20:03Z" - apiVersion: v1 kind: Pod metadata: annotations: k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.133.0.18/23"],"mac_address":"0a:58:0a:85:00:12","gateway_ips":["10.133.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.133.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.133.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.133.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.133.0.1"}],"ip_address":"10.133.0.18/23","gateway_ip":"10.133.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.133.0.18" ], "mac": "0a:58:0a:85:00:12", "default": true, "dns": {} }] openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: user creationTimestamp: "2026-07-02T23:12:14Z" generateName: model-serving-api-54d89bd5fc- generation: 1 labels: app: model-serving-api app.kubernetes.io/component: server app.kubernetes.io/name: model-serving-api app.kubernetes.io/part-of: odh-model-controller app.opendatahub.io/odh-model-controller: "true" pod-template-hash: 54d89bd5fc managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-136-243 operation: Update subresource: status time: "2026-07-02T23:12:14Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:generateName: {} f:labels: .: {} f:app: {} f:app.kubernetes.io/component: {} f:app.kubernetes.io/name: {} f:app.kubernetes.io/part-of: {} f:app.opendatahub.io/odh-model-controller: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"adce692b-6f02-4e7f-8a7e-7fdb389b2c42"}: {} f:spec: f:containers: k:{"name":"server"}: .: {} f:env: .: {} k:{"name":"GATEWAY_LABEL_SELECTOR"}: .: {} f:name: {} k:{"name":"TLS_CERT_DIR"}: .: {} f:name: {} f:value: {} f:image: {} f:imagePullPolicy: {} f:livenessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:ports: .: {} k:{"containerPort":8080,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} k:{"containerPort":8443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:readOnlyRootFilesystem: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/tls"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:topologySpreadConstraints: .: {} k:{"topologyKey":"kubernetes.io/hostname","whenUnsatisfiable":"ScheduleAnyway"}: .: {} f:labelSelector: {} f:maxSkew: {} f:topologyKey: {} f:whenUnsatisfiable: {} k:{"topologyKey":"topology.kubernetes.io/zone","whenUnsatisfiable":"ScheduleAnyway"}: .: {} f:labelSelector: {} f:maxSkew: {} f:topologyKey: {} f:whenUnsatisfiable: {} f:volumes: .: {} k:{"name":"tls-certs"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-07-02T23:12:14Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-02T23:12:14Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.133.0.18"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-02T23:12:27Z" name: model-serving-api-54d89bd5fc-n48md namespace: opendatahub ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: model-serving-api-54d89bd5fc uid: adce692b-6f02-4e7f-8a7e-7fdb389b2c42 resourceVersion: "15185" uid: c43b5a76-ece9-47b6-bab2-c44debab52e2 spec: containers: - env: - name: TLS_CERT_DIR value: /tls - name: GATEWAY_LABEL_SELECTOR image: quay.io/opendatahub/odh-model-serving-api:odh-v3.5-EA2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 httpGet: path: /healthz port: 8443 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 1 name: server ports: - containerPort: 8443 name: https protocol: TCP - containerPort: 8080 name: metrics protocol: TCP readinessProbe: failureThreshold: 3 httpGet: path: /readyz port: 8443 scheme: HTTPS initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 1 resources: limits: cpu: 500m memory: 1Gi requests: cpu: 50m memory: 64Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /tls name: tls-certs readOnly: true - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-f7gsd readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true nodeName: ip-10-0-136-243.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000660000 runAsNonRoot: true seLinuxOptions: level: s0:c26,c5 seccompProfile: type: RuntimeDefault serviceAccount: model-serving-api serviceAccountName: model-serving-api terminationGracePeriodSeconds: 30 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists topologySpreadConstraints: - labelSelector: matchLabels: app: model-serving-api app.kubernetes.io/component: server app.kubernetes.io/name: model-serving-api app.kubernetes.io/part-of: odh-model-controller maxSkew: 1 topologyKey: topology.kubernetes.io/zone whenUnsatisfiable: ScheduleAnyway - labelSelector: matchLabels: app: model-serving-api app.kubernetes.io/component: server app.kubernetes.io/name: model-serving-api app.kubernetes.io/part-of: odh-model-controller maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: ScheduleAnyway volumes: - name: tls-certs secret: defaultMode: 420 secretName: model-serving-api-tls - name: kube-api-access-f7gsd projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:16Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:14Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:27Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:27Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:14Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 50m memory: 64Mi containerID: cri-o://10fddfd3be17e2072998346c534dceb79fd98bd3e5df18b11c643b5852516429 image: quay.io/opendatahub/odh-model-serving-api:odh-v3.5-EA2 imageID: quay.io/opendatahub/odh-model-serving-api@sha256:1929e79badf1d62e5b70ce54c9e7d8ade0b0d411b05d72a032ce2f1bb84dce69 lastState: {} name: server ready: true resources: limits: cpu: 500m memory: 1Gi requests: cpu: 50m memory: 64Mi restartCount: 0 started: true state: running: startedAt: "2026-07-02T23:12:16Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /tls name: tls-certs readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-f7gsd readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.136.243 hostIPs: - ip: 10.0.136.243 observedGeneration: 1 phase: Running podIP: 10.133.0.18 podIPs: - ip: 10.133.0.18 qosClass: Burstable startTime: "2026-07-02T23:12:14Z" - apiVersion: v1 kind: Pod metadata: annotations: k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.132.0.31/23"],"mac_address":"0a:58:0a:84:00:1f","gateway_ips":["10.132.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.132.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.132.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.132.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.132.0.1"}],"ip_address":"10.132.0.31/23","gateway_ip":"10.132.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.132.0.31" ], "mac": "0a:58:0a:84:00:1f", "default": true, "dns": {} }] kubectl.kubernetes.io/default-container: manager openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: user creationTimestamp: "2026-07-02T23:12:13Z" generateName: odh-model-controller-7998c67dc4- generation: 1 labels: app: odh-model-controller app.kubernetes.io/part-of: odh-model-controller app.opendatahub.io/odh-model-controller: "true" control-plane: odh-model-controller pod-template-hash: 7998c67dc4 managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-131-33 operation: Update subresource: status time: "2026-07-02T23:12:13Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:kubectl.kubernetes.io/default-container: {} f:generateName: {} f:labels: .: {} f:app: {} f:app.kubernetes.io/part-of: {} f:app.opendatahub.io/odh-model-controller: {} f:control-plane: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"9345648b-08b5-4a79-9c20-85b9dd0e2eb6"}: {} f:spec: f:containers: k:{"name":"manager"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"KSERVE_STATE"}: .: {} f:name: {} f:value: {} k:{"name":"MODELREGISTRY_STATE"}: .: {} f:name: {} f:value: {} k:{"name":"NIM_STATE"}: .: {} f:name: {} f:value: {} k:{"name":"POD_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} f:image: {} f:imagePullPolicy: {} f:livenessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:ports: .: {} k:{"containerPort":9443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/tmp/k8s-webhook-server/serving-certs"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-07-02T23:12:13Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-02T23:12:14Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.132.0.31"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-02T23:12:29Z" name: odh-model-controller-7998c67dc4-z79g4 namespace: opendatahub ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: odh-model-controller-7998c67dc4 uid: 9345648b-08b5-4a79-9c20-85b9dd0e2eb6 resourceVersion: "15248" uid: b63d08e3-f29e-44c4-96c5-fe7545e75ee1 spec: containers: - args: - --metrics-bind-address=:8080 - --leader-elect - --health-probe-bind-address=:8081 command: - /manager env: - name: POD_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: NIM_STATE value: managed - name: KSERVE_STATE value: managed - name: MODELREGISTRY_STATE value: removed image: quay.io/opendatahub/odh-model-controller:odh-v3.5-EA2 imagePullPolicy: Always livenessProbe: failureThreshold: 3 httpGet: path: /healthz port: 8081 scheme: HTTP initialDelaySeconds: 15 periodSeconds: 20 successThreshold: 1 timeoutSeconds: 1 name: manager ports: - containerPort: 9443 name: webhook-server protocol: TCP readinessProbe: failureThreshold: 3 httpGet: path: /readyz port: 8081 scheme: HTTP initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 1 resources: limits: cpu: 500m memory: 2Gi requests: cpu: 10m memory: 64Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: cert readOnly: true - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-rccp5 readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: odh-model-controller-dockercfg-r2gqc nodeName: ip-10-0-131-33.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000660000 runAsNonRoot: true seLinuxOptions: level: s0:c26,c5 seccompProfile: type: RuntimeDefault serviceAccount: odh-model-controller serviceAccountName: odh-model-controller terminationGracePeriodSeconds: 10 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - name: cert secret: defaultMode: 420 secretName: odh-model-controller-webhook-cert - name: kube-api-access-rccp5 projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:18Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:13Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:29Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:29Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:13Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 10m memory: 64Mi containerID: cri-o://fb096281dc4a6afebb37d8a3c044ab92f880a392896ba8b04a1ade1a833ce4bf image: quay.io/opendatahub/odh-model-controller:odh-v3.5-EA2 imageID: quay.io/opendatahub/odh-model-controller@sha256:1e2397cbb77c598f2eaff55caa3f0ef39f9f499bc7388d4d92be8d2a5d5ff121 lastState: {} name: manager ready: true resources: limits: cpu: 500m memory: 2Gi requests: cpu: 10m memory: 64Mi restartCount: 0 started: true state: running: startedAt: "2026-07-02T23:12:18Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: cert readOnly: true recursiveReadOnly: Disabled - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-rccp5 readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.131.33 hostIPs: - ip: 10.0.131.33 observedGeneration: 1 phase: Running podIP: 10.132.0.31 podIPs: - ip: 10.132.0.31 qosClass: Burstable startTime: "2026-07-02T23:12:13Z" - apiVersion: v1 kind: Pod metadata: annotations: alm-examples: |- [ { "apiVersion": "datasciencecluster.opendatahub.io/v2", "kind": "DataScienceCluster", "metadata": { "labels": { "app.kubernetes.io/name": "datasciencecluster" }, "name": "default-dsc" }, "spec": { "components": { "aipipelines": { "managementState": "Managed" }, "dashboard": { "managementState": "Managed" }, "feastoperator": { "managementState": "Managed" }, "kserve": { "managementState": "Managed", "nim": { "managementState": "Managed" }, "rawDeploymentServiceConfig": "Headed", "wva": { "managementState": "Removed" } }, "kueue": { "managementState": "Removed" }, "llamastackoperator": { "managementState": "Removed" }, "mlflowoperator": { "managementState": "Removed" }, "modelregistry": { "managementState": "Managed", "registriesNamespace": "odh-model-registries" }, "ogx": { "managementState": "Removed" }, "ray": { "managementState": "Managed" }, "sparkoperator": { "managementState": "Removed" }, "trainer": { "managementState": "Managed" }, "trainingoperator": { "managementState": "Removed" }, "trustyai": { "managementState": "Managed" }, "workbenches": { "managementState": "Managed" } } } }, { "apiVersion": "dscinitialization.opendatahub.io/v2", "kind": "DSCInitialization", "metadata": { "labels": { "app.kubernetes.io/name": "dscinitialization" }, "name": "default-dsci" }, "spec": { "applicationsNamespace": "opendatahub", "monitoring": { "managementState": "Managed", "metrics": {}, "namespace": "opendatahub" }, "trustedCABundle": { "customCABundle": "", "managementState": "Managed" } } } ] capabilities: Full Lifecycle categories: AI/Machine Learning, Big Data certified: "False" containerImage: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 createdAt: "2026-06-25T09:46:28Z" k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.133.0.17/23"],"mac_address":"0a:58:0a:85:00:11","gateway_ips":["10.133.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.133.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.133.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.133.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.133.0.1"}],"ip_address":"10.133.0.17/23","gateway_ip":"10.133.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.133.0.17" ], "mac": "0a:58:0a:85:00:11", "default": true, "dns": {} }] kubectl.kubernetes.io/default-container: manager olm.operatorGroup: opendatahub-operatorgroup olm.operatorNamespace: opendatahub olm.targetNamespaces: "" olmcahash: e039067ebcae2bc8e140fafdbf702cb1e3708da5149c5792f79ff8bff653ce40 openshift.io/scc: restricted-v2 operatorframework.io/properties: '{"properties":[{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Dashboard","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"DataSciencePipelines","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"FeastOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Kserve","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Kueue","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"MLflowOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"ModelController","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"ModelRegistry","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"ModelsAsService","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"OGX","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Ray","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"SparkOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Trainer","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"TrainingOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"TrustyAI","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Workbenches","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"config.opendatahub.io","kind":"Platform","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"datasciencecluster.opendatahub.io","kind":"DataScienceCluster","version":"v1"}},{"type":"olm.gvk","value":{"group":"datasciencecluster.opendatahub.io","kind":"DataScienceCluster","version":"v2"}},{"type":"olm.gvk","value":{"group":"dscinitialization.opendatahub.io","kind":"DSCInitialization","version":"v1"}},{"type":"olm.gvk","value":{"group":"dscinitialization.opendatahub.io","kind":"DSCInitialization","version":"v2"}},{"type":"olm.gvk","value":{"group":"features.opendatahub.io","kind":"FeatureTracker","version":"v1"}},{"type":"olm.gvk","value":{"group":"infrastructure.opendatahub.io","kind":"HardwareProfile","version":"v1"}},{"type":"olm.gvk","value":{"group":"infrastructure.opendatahub.io","kind":"HardwareProfile","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"services.platform.opendatahub.io","kind":"Auth","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"services.platform.opendatahub.io","kind":"GatewayConfig","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"services.platform.opendatahub.io","kind":"Monitoring","version":"v1alpha1"}},{"type":"olm.package","value":{"packageName":"opendatahub-operator","version":"3.5.0-ea.2"}}]}' operators.operatorframework.io/builder: operator-sdk-v1.39.2 operators.operatorframework.io/internal-objects: '["featuretrackers.features.opendatahub.io", "dashboards.components.platform.opendatahub.io", "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io", "kueues.components.platform.opendatahub.io", "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io", "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io", "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io", "ogxs.components.platform.opendatahub.io", "trainers.components.platform.opendatahub.io", "mlflowoperators.components.platform.opendatahub.io", "modelsasservices.components.platform.opendatahub.io", "sparkoperators.components.platform.opendatahub.io"]' operators.operatorframework.io/project_layout: go.kubebuilder.io/v4 repository: https://github.com/opendatahub-io/opendatahub-operator seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: serviceaccount creationTimestamp: "2026-07-02T23:11:53Z" generateName: opendatahub-operator-controller-manager-fb7747bfc- generation: 1 labels: control-plane: controller-manager name: opendatahub-operator pod-template-hash: fb7747bfc managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:alm-examples: {} f:capabilities: {} f:categories: {} f:certified: {} f:containerImage: {} f:createdAt: {} f:kubectl.kubernetes.io/default-container: {} f:olm.operatorGroup: {} f:olm.operatorNamespace: {} f:olm.targetNamespaces: {} f:olmcahash: {} f:operatorframework.io/properties: {} f:operators.operatorframework.io/builder: {} f:operators.operatorframework.io/internal-objects: {} f:operators.operatorframework.io/project_layout: {} f:repository: {} f:generateName: {} f:labels: .: {} f:control-plane: {} f:name: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"a6708edf-bfb3-42cd-a39f-7e5993a560de"}: {} f:spec: f:affinity: .: {} f:nodeAffinity: .: {} f:requiredDuringSchedulingIgnoredDuringExecution: {} f:podAntiAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"manager"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"DEFAULT_CHARTS_PATH"}: .: {} f:name: {} f:value: {} k:{"name":"DEFAULT_MANIFESTS_PATH"}: .: {} f:name: {} f:value: {} k:{"name":"DISABLE_DSC_CONFIG"}: .: {} f:name: {} f:value: {} k:{"name":"ODH_PLATFORM_TYPE"}: .: {} f:name: {} f:value: {} k:{"name":"OPERATOR_CONDITION_NAME"}: .: {} f:name: {} f:value: {} k:{"name":"OPERATOR_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"RELATED_IMAGE_ODH_KUBE_AUTH_PROXY_IMAGE"}: .: {} f:name: {} f:value: {} k:{"name":"RELATED_IMAGE_ODH_KUBE_RBAC_PROXY_IMAGE"}: .: {} f:name: {} f:value: {} f:image: {} f:imagePullPolicy: {} f:livenessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:ports: .: {} k:{"containerPort":8080,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} k:{"containerPort":9443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:readOnlyRootFilesystem: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/apiserver.local.config/certificates"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/opt/manifests"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/tmp"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/tmp/k8s-webhook-server/serving-certs"}: .: {} f:mountPath: {} f:name: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:initContainers: .: {} k:{"name":"copy-manifests"}: .: {} f:command: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:readOnlyRootFilesystem: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/opt/manifests"}: .: {} f:mountPath: {} f:name: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"apiservice-cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:items: {} f:secretName: {} k:{"name":"cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"manifests"}: .: {} f:emptyDir: .: {} f:sizeLimit: {} f:name: {} k:{"name":"tmp"}: .: {} f:emptyDir: .: {} f:medium: {} f:sizeLimit: {} f:name: {} k:{"name":"webhook-cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:items: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-07-02T23:11:53Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-136-243 operation: Update subresource: status time: "2026-07-02T23:11:54Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-02T23:11:54Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:initContainerStatuses: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.133.0.17"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-02T23:12:10Z" name: opendatahub-operator-controller-manager-fb7747bfc-bh6tc namespace: opendatahub ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: opendatahub-operator-controller-manager-fb7747bfc uid: a6708edf-bfb3-42cd-a39f-7e5993a560de resourceVersion: "13845" uid: 7a14a32a-7506-4b68-b7b5-64dc31561af1 spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/os operator: In values: - linux podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - podAffinityTerm: labelSelector: matchExpressions: - key: name operator: In values: - opendatahub-operator topologyKey: kubernetes.io/hostname weight: 100 containers: - args: - --health-probe-bind-address=:8081 - --metrics-bind-address=0.0.0.0:8080 - --leader-elect command: - /manager env: - name: DISABLE_DSC_CONFIG value: "true" - name: OPERATOR_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: DEFAULT_MANIFESTS_PATH value: /opt/manifests - name: DEFAULT_CHARTS_PATH value: /opt/charts - name: ODH_PLATFORM_TYPE value: OpenDataHub - name: RELATED_IMAGE_ODH_KUBE_AUTH_PROXY_IMAGE value: quay.io/opendatahub/odh-kube-auth-proxy:v3.5.0-ea.2 - name: RELATED_IMAGE_ODH_KUBE_RBAC_PROXY_IMAGE value: quay.io/opendatahub/odh-kube-rbac-proxy:3.5.0-ea.2 - name: OPERATOR_CONDITION_NAME value: opendatahub-operator.v3.5.0-ea.2 image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imagePullPolicy: Always livenessProbe: failureThreshold: 3 httpGet: path: /healthz port: 8081 scheme: HTTP initialDelaySeconds: 15 periodSeconds: 20 successThreshold: 1 timeoutSeconds: 1 name: manager ports: - containerPort: 9443 name: webhook-server protocol: TCP - containerPort: 8080 name: http protocol: TCP readinessProbe: failureThreshold: 3 httpGet: path: /readyz port: 8081 scheme: HTTP initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 1 resources: limits: cpu: "1" memory: 4Gi requests: cpu: 100m memory: 780Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: webhook-cert - mountPath: /opt/manifests name: manifests - mountPath: /tmp name: tmp - mountPath: /apiserver.local.config/certificates name: apiservice-cert - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-9zmqg readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: opendatahub-operator-controller-manager-dockercfg-mfznl initContainers: - command: - cp - -r - /opt/manifests-template/. - /opt/manifests/ image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imagePullPolicy: Always name: copy-manifests resources: limits: cpu: 100m memory: 256Mi requests: cpu: 10m memory: 64Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /opt/manifests name: manifests - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-9zmqg readOnly: true nodeName: ip-10-0-136-243.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000660000 runAsNonRoot: true seLinuxOptions: level: s0:c26,c5 seccompProfile: type: RuntimeDefault serviceAccount: opendatahub-operator-controller-manager serviceAccountName: opendatahub-operator-controller-manager terminationGracePeriodSeconds: 10 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - name: cert secret: defaultMode: 420 secretName: opendatahub-operator-controller-webhook-cert - emptyDir: sizeLimit: 256Mi name: manifests - emptyDir: medium: Memory sizeLimit: 10Mi name: tmp - name: apiservice-cert secret: defaultMode: 420 items: - key: tls.crt path: apiserver.crt - key: tls.key path: apiserver.key secretName: opendatahub-operator-controller-manager-service-cert - name: webhook-cert secret: defaultMode: 420 items: - key: tls.crt path: tls.crt - key: tls.key path: tls.key secretName: opendatahub-operator-controller-manager-service-cert - name: kube-api-access-9zmqg projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-02T23:11:57Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-02T23:11:58Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:10Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:10Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-02T23:11:53Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 100m memory: 780Mi containerID: cri-o://eac76f62ce6879604e2996804234ce5cdad71b2b697d0cf7217c18e3bbc46519 image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imageID: quay.io/opendatahub/opendatahub-operator@sha256:62da7505a0bd1ed943c21ede46ffb0281020eba3b56657307e73ccf96a4ee006 lastState: {} name: manager ready: true resources: limits: cpu: "1" memory: 4Gi requests: cpu: 100m memory: 780Mi restartCount: 0 started: true state: running: startedAt: "2026-07-02T23:11:59Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: webhook-cert - mountPath: /opt/manifests name: manifests - mountPath: /tmp name: tmp - mountPath: /apiserver.local.config/certificates name: apiservice-cert - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-9zmqg readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.136.243 hostIPs: - ip: 10.0.136.243 initContainerStatuses: - allocatedResources: cpu: 10m memory: 64Mi containerID: cri-o://69bd130ed656915e64f21c87097846e0ec75896bb1f6adcc5e3820fd722f2312 image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imageID: quay.io/opendatahub/opendatahub-operator@sha256:62da7505a0bd1ed943c21ede46ffb0281020eba3b56657307e73ccf96a4ee006 lastState: {} name: copy-manifests ready: true resources: limits: cpu: 100m memory: 256Mi requests: cpu: 10m memory: 64Mi restartCount: 0 started: false state: terminated: containerID: cri-o://69bd130ed656915e64f21c87097846e0ec75896bb1f6adcc5e3820fd722f2312 exitCode: 0 finishedAt: "2026-07-02T23:11:58Z" reason: Completed startedAt: "2026-07-02T23:11:57Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /opt/manifests name: manifests - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-9zmqg readOnly: true recursiveReadOnly: Disabled observedGeneration: 1 phase: Running podIP: 10.133.0.17 podIPs: - ip: 10.133.0.17 qosClass: Burstable startTime: "2026-07-02T23:11:54Z" - apiVersion: v1 kind: Pod metadata: annotations: alm-examples: |- [ { "apiVersion": "datasciencecluster.opendatahub.io/v2", "kind": "DataScienceCluster", "metadata": { "labels": { "app.kubernetes.io/name": "datasciencecluster" }, "name": "default-dsc" }, "spec": { "components": { "aipipelines": { "managementState": "Managed" }, "dashboard": { "managementState": "Managed" }, "feastoperator": { "managementState": "Managed" }, "kserve": { "managementState": "Managed", "nim": { "managementState": "Managed" }, "rawDeploymentServiceConfig": "Headed", "wva": { "managementState": "Removed" } }, "kueue": { "managementState": "Removed" }, "llamastackoperator": { "managementState": "Removed" }, "mlflowoperator": { "managementState": "Removed" }, "modelregistry": { "managementState": "Managed", "registriesNamespace": "odh-model-registries" }, "ogx": { "managementState": "Removed" }, "ray": { "managementState": "Managed" }, "sparkoperator": { "managementState": "Removed" }, "trainer": { "managementState": "Managed" }, "trainingoperator": { "managementState": "Removed" }, "trustyai": { "managementState": "Managed" }, "workbenches": { "managementState": "Managed" } } } }, { "apiVersion": "dscinitialization.opendatahub.io/v2", "kind": "DSCInitialization", "metadata": { "labels": { "app.kubernetes.io/name": "dscinitialization" }, "name": "default-dsci" }, "spec": { "applicationsNamespace": "opendatahub", "monitoring": { "managementState": "Managed", "metrics": {}, "namespace": "opendatahub" }, "trustedCABundle": { "customCABundle": "", "managementState": "Managed" } } } ] capabilities: Full Lifecycle categories: AI/Machine Learning, Big Data certified: "False" containerImage: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 createdAt: "2026-06-25T09:46:28Z" k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.132.0.30/23"],"mac_address":"0a:58:0a:84:00:1e","gateway_ips":["10.132.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.132.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.132.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.132.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.132.0.1"}],"ip_address":"10.132.0.30/23","gateway_ip":"10.132.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.132.0.30" ], "mac": "0a:58:0a:84:00:1e", "default": true, "dns": {} }] kubectl.kubernetes.io/default-container: manager olm.operatorGroup: opendatahub-operatorgroup olm.operatorNamespace: opendatahub olm.targetNamespaces: "" olmcahash: e039067ebcae2bc8e140fafdbf702cb1e3708da5149c5792f79ff8bff653ce40 openshift.io/scc: restricted-v2 operatorframework.io/properties: '{"properties":[{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Dashboard","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"DataSciencePipelines","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"FeastOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Kserve","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Kueue","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"MLflowOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"ModelController","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"ModelRegistry","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"ModelsAsService","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"OGX","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Ray","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"SparkOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Trainer","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"TrainingOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"TrustyAI","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Workbenches","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"config.opendatahub.io","kind":"Platform","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"datasciencecluster.opendatahub.io","kind":"DataScienceCluster","version":"v1"}},{"type":"olm.gvk","value":{"group":"datasciencecluster.opendatahub.io","kind":"DataScienceCluster","version":"v2"}},{"type":"olm.gvk","value":{"group":"dscinitialization.opendatahub.io","kind":"DSCInitialization","version":"v1"}},{"type":"olm.gvk","value":{"group":"dscinitialization.opendatahub.io","kind":"DSCInitialization","version":"v2"}},{"type":"olm.gvk","value":{"group":"features.opendatahub.io","kind":"FeatureTracker","version":"v1"}},{"type":"olm.gvk","value":{"group":"infrastructure.opendatahub.io","kind":"HardwareProfile","version":"v1"}},{"type":"olm.gvk","value":{"group":"infrastructure.opendatahub.io","kind":"HardwareProfile","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"services.platform.opendatahub.io","kind":"Auth","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"services.platform.opendatahub.io","kind":"GatewayConfig","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"services.platform.opendatahub.io","kind":"Monitoring","version":"v1alpha1"}},{"type":"olm.package","value":{"packageName":"opendatahub-operator","version":"3.5.0-ea.2"}}]}' operators.operatorframework.io/builder: operator-sdk-v1.39.2 operators.operatorframework.io/internal-objects: '["featuretrackers.features.opendatahub.io", "dashboards.components.platform.opendatahub.io", "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io", "kueues.components.platform.opendatahub.io", "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io", "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io", "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io", "ogxs.components.platform.opendatahub.io", "trainers.components.platform.opendatahub.io", "mlflowoperators.components.platform.opendatahub.io", "modelsasservices.components.platform.opendatahub.io", "sparkoperators.components.platform.opendatahub.io"]' operators.operatorframework.io/project_layout: go.kubebuilder.io/v4 repository: https://github.com/opendatahub-io/opendatahub-operator seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: serviceaccount creationTimestamp: "2026-07-02T23:11:54Z" generateName: opendatahub-operator-controller-manager-fb7747bfc- generation: 1 labels: control-plane: controller-manager name: opendatahub-operator pod-template-hash: fb7747bfc managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-131-33 operation: Update subresource: status time: "2026-07-02T23:11:54Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:alm-examples: {} f:capabilities: {} f:categories: {} f:certified: {} f:containerImage: {} f:createdAt: {} f:kubectl.kubernetes.io/default-container: {} f:olm.operatorGroup: {} f:olm.operatorNamespace: {} f:olm.targetNamespaces: {} f:olmcahash: {} f:operatorframework.io/properties: {} f:operators.operatorframework.io/builder: {} f:operators.operatorframework.io/internal-objects: {} f:operators.operatorframework.io/project_layout: {} f:repository: {} f:generateName: {} f:labels: .: {} f:control-plane: {} f:name: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"a6708edf-bfb3-42cd-a39f-7e5993a560de"}: {} f:spec: f:affinity: .: {} f:nodeAffinity: .: {} f:requiredDuringSchedulingIgnoredDuringExecution: {} f:podAntiAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"manager"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"DEFAULT_CHARTS_PATH"}: .: {} f:name: {} f:value: {} k:{"name":"DEFAULT_MANIFESTS_PATH"}: .: {} f:name: {} f:value: {} k:{"name":"DISABLE_DSC_CONFIG"}: .: {} f:name: {} f:value: {} k:{"name":"ODH_PLATFORM_TYPE"}: .: {} f:name: {} f:value: {} k:{"name":"OPERATOR_CONDITION_NAME"}: .: {} f:name: {} f:value: {} k:{"name":"OPERATOR_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"RELATED_IMAGE_ODH_KUBE_AUTH_PROXY_IMAGE"}: .: {} f:name: {} f:value: {} k:{"name":"RELATED_IMAGE_ODH_KUBE_RBAC_PROXY_IMAGE"}: .: {} f:name: {} f:value: {} f:image: {} f:imagePullPolicy: {} f:livenessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:ports: .: {} k:{"containerPort":8080,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} k:{"containerPort":9443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:readOnlyRootFilesystem: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/apiserver.local.config/certificates"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/opt/manifests"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/tmp"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/tmp/k8s-webhook-server/serving-certs"}: .: {} f:mountPath: {} f:name: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:initContainers: .: {} k:{"name":"copy-manifests"}: .: {} f:command: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:readOnlyRootFilesystem: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/opt/manifests"}: .: {} f:mountPath: {} f:name: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"apiservice-cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:items: {} f:secretName: {} k:{"name":"cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"manifests"}: .: {} f:emptyDir: .: {} f:sizeLimit: {} f:name: {} k:{"name":"tmp"}: .: {} f:emptyDir: .: {} f:medium: {} f:sizeLimit: {} f:name: {} k:{"name":"webhook-cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:items: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-07-02T23:11:54Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-02T23:11:54Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:initContainerStatuses: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.132.0.30"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-02T23:12:11Z" name: opendatahub-operator-controller-manager-fb7747bfc-hzxw5 namespace: opendatahub ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: opendatahub-operator-controller-manager-fb7747bfc uid: a6708edf-bfb3-42cd-a39f-7e5993a560de resourceVersion: "13865" uid: 81ac38f0-bf7c-4459-88f3-1348b39cf316 spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/os operator: In values: - linux podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - podAffinityTerm: labelSelector: matchExpressions: - key: name operator: In values: - opendatahub-operator topologyKey: kubernetes.io/hostname weight: 100 containers: - args: - --health-probe-bind-address=:8081 - --metrics-bind-address=0.0.0.0:8080 - --leader-elect command: - /manager env: - name: DISABLE_DSC_CONFIG value: "true" - name: OPERATOR_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: DEFAULT_MANIFESTS_PATH value: /opt/manifests - name: DEFAULT_CHARTS_PATH value: /opt/charts - name: ODH_PLATFORM_TYPE value: OpenDataHub - name: RELATED_IMAGE_ODH_KUBE_AUTH_PROXY_IMAGE value: quay.io/opendatahub/odh-kube-auth-proxy:v3.5.0-ea.2 - name: RELATED_IMAGE_ODH_KUBE_RBAC_PROXY_IMAGE value: quay.io/opendatahub/odh-kube-rbac-proxy:3.5.0-ea.2 - name: OPERATOR_CONDITION_NAME value: opendatahub-operator.v3.5.0-ea.2 image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imagePullPolicy: Always livenessProbe: failureThreshold: 3 httpGet: path: /healthz port: 8081 scheme: HTTP initialDelaySeconds: 15 periodSeconds: 20 successThreshold: 1 timeoutSeconds: 1 name: manager ports: - containerPort: 9443 name: webhook-server protocol: TCP - containerPort: 8080 name: http protocol: TCP readinessProbe: failureThreshold: 3 httpGet: path: /readyz port: 8081 scheme: HTTP initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 1 resources: limits: cpu: "1" memory: 4Gi requests: cpu: 100m memory: 780Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: webhook-cert - mountPath: /opt/manifests name: manifests - mountPath: /tmp name: tmp - mountPath: /apiserver.local.config/certificates name: apiservice-cert - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-j4szs readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: opendatahub-operator-controller-manager-dockercfg-mfznl initContainers: - command: - cp - -r - /opt/manifests-template/. - /opt/manifests/ image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imagePullPolicy: Always name: copy-manifests resources: limits: cpu: 100m memory: 256Mi requests: cpu: 10m memory: 64Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /opt/manifests name: manifests - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-j4szs readOnly: true nodeName: ip-10-0-131-33.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000660000 runAsNonRoot: true seLinuxOptions: level: s0:c26,c5 seccompProfile: type: RuntimeDefault serviceAccount: opendatahub-operator-controller-manager serviceAccountName: opendatahub-operator-controller-manager terminationGracePeriodSeconds: 10 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - name: cert secret: defaultMode: 420 secretName: opendatahub-operator-controller-webhook-cert - emptyDir: sizeLimit: 256Mi name: manifests - emptyDir: medium: Memory sizeLimit: 10Mi name: tmp - name: apiservice-cert secret: defaultMode: 420 items: - key: tls.crt path: apiserver.crt - key: tls.key path: apiserver.key secretName: opendatahub-operator-controller-manager-service-cert - name: webhook-cert secret: defaultMode: 420 items: - key: tls.crt path: tls.crt - key: tls.key path: tls.key secretName: opendatahub-operator-controller-manager-service-cert - name: kube-api-access-j4szs projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-02T23:11:58Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-02T23:11:59Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:11Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:11Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-02T23:11:54Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 100m memory: 780Mi containerID: cri-o://b10d2568f7bd90f3e6b1588ba1eb69c21ff01c3f0688b2f64cad0c14a1168eff image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imageID: quay.io/opendatahub/opendatahub-operator@sha256:62da7505a0bd1ed943c21ede46ffb0281020eba3b56657307e73ccf96a4ee006 lastState: {} name: manager ready: true resources: limits: cpu: "1" memory: 4Gi requests: cpu: 100m memory: 780Mi restartCount: 0 started: true state: running: startedAt: "2026-07-02T23:11:59Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: webhook-cert - mountPath: /opt/manifests name: manifests - mountPath: /tmp name: tmp - mountPath: /apiserver.local.config/certificates name: apiservice-cert - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-j4szs readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.131.33 hostIPs: - ip: 10.0.131.33 initContainerStatuses: - allocatedResources: cpu: 10m memory: 64Mi containerID: cri-o://4ffc89ca1df4b936ae20c87f63837fe7c3661ab63bcd8732338d74020a62d74c image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imageID: quay.io/opendatahub/opendatahub-operator@sha256:62da7505a0bd1ed943c21ede46ffb0281020eba3b56657307e73ccf96a4ee006 lastState: {} name: copy-manifests ready: true resources: limits: cpu: 100m memory: 256Mi requests: cpu: 10m memory: 64Mi restartCount: 0 started: false state: terminated: containerID: cri-o://4ffc89ca1df4b936ae20c87f63837fe7c3661ab63bcd8732338d74020a62d74c exitCode: 0 finishedAt: "2026-07-02T23:11:58Z" reason: Completed startedAt: "2026-07-02T23:11:57Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /opt/manifests name: manifests - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-j4szs readOnly: true recursiveReadOnly: Disabled observedGeneration: 1 phase: Running podIP: 10.132.0.30 podIPs: - ip: 10.132.0.30 qosClass: Burstable startTime: "2026-07-02T23:11:54Z" - apiVersion: v1 kind: Pod metadata: annotations: alm-examples: |- [ { "apiVersion": "datasciencecluster.opendatahub.io/v2", "kind": "DataScienceCluster", "metadata": { "labels": { "app.kubernetes.io/name": "datasciencecluster" }, "name": "default-dsc" }, "spec": { "components": { "aipipelines": { "managementState": "Managed" }, "dashboard": { "managementState": "Managed" }, "feastoperator": { "managementState": "Managed" }, "kserve": { "managementState": "Managed", "nim": { "managementState": "Managed" }, "rawDeploymentServiceConfig": "Headed", "wva": { "managementState": "Removed" } }, "kueue": { "managementState": "Removed" }, "llamastackoperator": { "managementState": "Removed" }, "mlflowoperator": { "managementState": "Removed" }, "modelregistry": { "managementState": "Managed", "registriesNamespace": "odh-model-registries" }, "ogx": { "managementState": "Removed" }, "ray": { "managementState": "Managed" }, "sparkoperator": { "managementState": "Removed" }, "trainer": { "managementState": "Managed" }, "trainingoperator": { "managementState": "Removed" }, "trustyai": { "managementState": "Managed" }, "workbenches": { "managementState": "Managed" } } } }, { "apiVersion": "dscinitialization.opendatahub.io/v2", "kind": "DSCInitialization", "metadata": { "labels": { "app.kubernetes.io/name": "dscinitialization" }, "name": "default-dsci" }, "spec": { "applicationsNamespace": "opendatahub", "monitoring": { "managementState": "Managed", "metrics": {}, "namespace": "opendatahub" }, "trustedCABundle": { "customCABundle": "", "managementState": "Managed" } } } ] capabilities: Full Lifecycle categories: AI/Machine Learning, Big Data certified: "False" containerImage: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 createdAt: "2026-06-25T09:46:28Z" k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.134.0.24/23"],"mac_address":"0a:58:0a:86:00:18","gateway_ips":["10.134.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.134.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.134.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.134.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.134.0.1"}],"ip_address":"10.134.0.24/23","gateway_ip":"10.134.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.134.0.24" ], "mac": "0a:58:0a:86:00:18", "default": true, "dns": {} }] kubectl.kubernetes.io/default-container: manager olm.operatorGroup: opendatahub-operatorgroup olm.operatorNamespace: opendatahub olm.targetNamespaces: "" olmcahash: e039067ebcae2bc8e140fafdbf702cb1e3708da5149c5792f79ff8bff653ce40 openshift.io/scc: restricted-v2 operatorframework.io/properties: '{"properties":[{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Dashboard","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"DataSciencePipelines","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"FeastOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Kserve","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Kueue","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"MLflowOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"ModelController","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"ModelRegistry","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"ModelsAsService","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"OGX","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Ray","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"SparkOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Trainer","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"TrainingOperator","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"TrustyAI","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"components.platform.opendatahub.io","kind":"Workbenches","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"config.opendatahub.io","kind":"Platform","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"datasciencecluster.opendatahub.io","kind":"DataScienceCluster","version":"v1"}},{"type":"olm.gvk","value":{"group":"datasciencecluster.opendatahub.io","kind":"DataScienceCluster","version":"v2"}},{"type":"olm.gvk","value":{"group":"dscinitialization.opendatahub.io","kind":"DSCInitialization","version":"v1"}},{"type":"olm.gvk","value":{"group":"dscinitialization.opendatahub.io","kind":"DSCInitialization","version":"v2"}},{"type":"olm.gvk","value":{"group":"features.opendatahub.io","kind":"FeatureTracker","version":"v1"}},{"type":"olm.gvk","value":{"group":"infrastructure.opendatahub.io","kind":"HardwareProfile","version":"v1"}},{"type":"olm.gvk","value":{"group":"infrastructure.opendatahub.io","kind":"HardwareProfile","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"services.platform.opendatahub.io","kind":"Auth","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"services.platform.opendatahub.io","kind":"GatewayConfig","version":"v1alpha1"}},{"type":"olm.gvk","value":{"group":"services.platform.opendatahub.io","kind":"Monitoring","version":"v1alpha1"}},{"type":"olm.package","value":{"packageName":"opendatahub-operator","version":"3.5.0-ea.2"}}]}' operators.operatorframework.io/builder: operator-sdk-v1.39.2 operators.operatorframework.io/internal-objects: '["featuretrackers.features.opendatahub.io", "dashboards.components.platform.opendatahub.io", "datasciencepipelines.components.platform.opendatahub.io", "kserves.components.platform.opendatahub.io", "kueues.components.platform.opendatahub.io", "modelregistries.components.platform.opendatahub.io", "rays.components.platform.opendatahub.io", "trainingoperators.components.platform.opendatahub.io", "trustyais.components.platform.opendatahub.io", "workbenches.components.platform.opendatahub.io", "monitorings.services.platform.opendatahub.io", "modelcontrollers.components.platform.opendatahub.io", "feastoperators.components.platform.opendatahub.io", "ogxs.components.platform.opendatahub.io", "trainers.components.platform.opendatahub.io", "mlflowoperators.components.platform.opendatahub.io", "modelsasservices.components.platform.opendatahub.io", "sparkoperators.components.platform.opendatahub.io"]' operators.operatorframework.io/project_layout: go.kubebuilder.io/v4 repository: https://github.com/opendatahub-io/opendatahub-operator seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: serviceaccount creationTimestamp: "2026-07-02T23:11:54Z" generateName: opendatahub-operator-controller-manager-fb7747bfc- generation: 1 labels: control-plane: controller-manager name: opendatahub-operator pod-template-hash: fb7747bfc managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-141-220 operation: Update subresource: status time: "2026-07-02T23:11:54Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: .: {} f:alm-examples: {} f:capabilities: {} f:categories: {} f:certified: {} f:containerImage: {} f:createdAt: {} f:kubectl.kubernetes.io/default-container: {} f:olm.operatorGroup: {} f:olm.operatorNamespace: {} f:olm.targetNamespaces: {} f:olmcahash: {} f:operatorframework.io/properties: {} f:operators.operatorframework.io/builder: {} f:operators.operatorframework.io/internal-objects: {} f:operators.operatorframework.io/project_layout: {} f:repository: {} f:generateName: {} f:labels: .: {} f:control-plane: {} f:name: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"a6708edf-bfb3-42cd-a39f-7e5993a560de"}: {} f:spec: f:affinity: .: {} f:nodeAffinity: .: {} f:requiredDuringSchedulingIgnoredDuringExecution: {} f:podAntiAffinity: .: {} f:preferredDuringSchedulingIgnoredDuringExecution: {} f:containers: k:{"name":"manager"}: .: {} f:args: {} f:command: {} f:env: .: {} k:{"name":"DEFAULT_CHARTS_PATH"}: .: {} f:name: {} f:value: {} k:{"name":"DEFAULT_MANIFESTS_PATH"}: .: {} f:name: {} f:value: {} k:{"name":"DISABLE_DSC_CONFIG"}: .: {} f:name: {} f:value: {} k:{"name":"ODH_PLATFORM_TYPE"}: .: {} f:name: {} f:value: {} k:{"name":"OPERATOR_CONDITION_NAME"}: .: {} f:name: {} f:value: {} k:{"name":"OPERATOR_NAMESPACE"}: .: {} f:name: {} f:valueFrom: .: {} f:fieldRef: {} k:{"name":"RELATED_IMAGE_ODH_KUBE_AUTH_PROXY_IMAGE"}: .: {} f:name: {} f:value: {} k:{"name":"RELATED_IMAGE_ODH_KUBE_RBAC_PROXY_IMAGE"}: .: {} f:name: {} f:value: {} f:image: {} f:imagePullPolicy: {} f:livenessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:name: {} f:ports: .: {} k:{"containerPort":8080,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} k:{"containerPort":9443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:protocol: {} f:readinessProbe: .: {} f:failureThreshold: {} f:httpGet: .: {} f:path: {} f:port: {} f:scheme: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:readOnlyRootFilesystem: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/apiserver.local.config/certificates"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/opt/manifests"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/tmp"}: .: {} f:mountPath: {} f:name: {} k:{"mountPath":"/tmp/k8s-webhook-server/serving-certs"}: .: {} f:mountPath: {} f:name: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:initContainers: .: {} k:{"name":"copy-manifests"}: .: {} f:command: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:securityContext: .: {} f:allowPrivilegeEscalation: {} f:capabilities: .: {} f:drop: {} f:readOnlyRootFilesystem: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/opt/manifests"}: .: {} f:mountPath: {} f:name: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: .: {} f:runAsNonRoot: {} f:seccompProfile: .: {} f:type: {} f:serviceAccount: {} f:serviceAccountName: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"apiservice-cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:items: {} f:secretName: {} k:{"name":"cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:secretName: {} k:{"name":"manifests"}: .: {} f:emptyDir: .: {} f:sizeLimit: {} f:name: {} k:{"name":"tmp"}: .: {} f:emptyDir: .: {} f:medium: {} f:sizeLimit: {} f:name: {} k:{"name":"webhook-cert"}: .: {} f:name: {} f:secret: .: {} f:defaultMode: {} f:items: {} f:secretName: {} manager: kube-controller-manager operation: Update time: "2026-07-02T23:11:54Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-02T23:11:54Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:initContainerStatuses: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.134.0.24"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-02T23:12:10Z" name: opendatahub-operator-controller-manager-fb7747bfc-xsmq2 namespace: opendatahub ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: opendatahub-operator-controller-manager-fb7747bfc uid: a6708edf-bfb3-42cd-a39f-7e5993a560de resourceVersion: "13854" uid: 3a8eff66-6136-4c0d-a860-13d9f48f6a3c spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/os operator: In values: - linux podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - podAffinityTerm: labelSelector: matchExpressions: - key: name operator: In values: - opendatahub-operator topologyKey: kubernetes.io/hostname weight: 100 containers: - args: - --health-probe-bind-address=:8081 - --metrics-bind-address=0.0.0.0:8080 - --leader-elect command: - /manager env: - name: DISABLE_DSC_CONFIG value: "true" - name: OPERATOR_NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: DEFAULT_MANIFESTS_PATH value: /opt/manifests - name: DEFAULT_CHARTS_PATH value: /opt/charts - name: ODH_PLATFORM_TYPE value: OpenDataHub - name: RELATED_IMAGE_ODH_KUBE_AUTH_PROXY_IMAGE value: quay.io/opendatahub/odh-kube-auth-proxy:v3.5.0-ea.2 - name: RELATED_IMAGE_ODH_KUBE_RBAC_PROXY_IMAGE value: quay.io/opendatahub/odh-kube-rbac-proxy:3.5.0-ea.2 - name: OPERATOR_CONDITION_NAME value: opendatahub-operator.v3.5.0-ea.2 image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imagePullPolicy: Always livenessProbe: failureThreshold: 3 httpGet: path: /healthz port: 8081 scheme: HTTP initialDelaySeconds: 15 periodSeconds: 20 successThreshold: 1 timeoutSeconds: 1 name: manager ports: - containerPort: 9443 name: webhook-server protocol: TCP - containerPort: 8080 name: http protocol: TCP readinessProbe: failureThreshold: 3 httpGet: path: /readyz port: 8081 scheme: HTTP initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 1 resources: limits: cpu: "1" memory: 4Gi requests: cpu: 100m memory: 780Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: webhook-cert - mountPath: /opt/manifests name: manifests - mountPath: /tmp name: tmp - mountPath: /apiserver.local.config/certificates name: apiservice-cert - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-6h6x2 readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: opendatahub-operator-controller-manager-dockercfg-mfznl initContainers: - command: - cp - -r - /opt/manifests-template/. - /opt/manifests/ image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imagePullPolicy: Always name: copy-manifests resources: limits: cpu: 100m memory: 256Mi requests: cpu: 10m memory: 64Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /opt/manifests name: manifests - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-6h6x2 readOnly: true nodeName: ip-10-0-141-220.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000660000 runAsNonRoot: true seLinuxOptions: level: s0:c26,c5 seccompProfile: type: RuntimeDefault serviceAccount: opendatahub-operator-controller-manager serviceAccountName: opendatahub-operator-controller-manager terminationGracePeriodSeconds: 10 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - name: cert secret: defaultMode: 420 secretName: opendatahub-operator-controller-webhook-cert - emptyDir: sizeLimit: 256Mi name: manifests - emptyDir: medium: Memory sizeLimit: 10Mi name: tmp - name: apiservice-cert secret: defaultMode: 420 items: - key: tls.crt path: apiserver.crt - key: tls.key path: apiserver.key secretName: opendatahub-operator-controller-manager-service-cert - name: webhook-cert secret: defaultMode: 420 items: - key: tls.crt path: tls.crt - key: tls.key path: tls.key secretName: opendatahub-operator-controller-manager-service-cert - name: kube-api-access-6h6x2 projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-02T23:11:57Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-02T23:11:58Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:10Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-02T23:12:10Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-02T23:11:54Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 100m memory: 780Mi containerID: cri-o://ac7c4c4a3a8d04a7a18d86ba7152cd87dfad0c9789969b336d58539dbd36fe25 image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imageID: quay.io/opendatahub/opendatahub-operator@sha256:62da7505a0bd1ed943c21ede46ffb0281020eba3b56657307e73ccf96a4ee006 lastState: {} name: manager ready: true resources: limits: cpu: "1" memory: 4Gi requests: cpu: 100m memory: 780Mi restartCount: 0 started: true state: running: startedAt: "2026-07-02T23:11:59Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /tmp/k8s-webhook-server/serving-certs name: webhook-cert - mountPath: /opt/manifests name: manifests - mountPath: /tmp name: tmp - mountPath: /apiserver.local.config/certificates name: apiservice-cert - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-6h6x2 readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.141.220 hostIPs: - ip: 10.0.141.220 initContainerStatuses: - allocatedResources: cpu: 10m memory: 64Mi containerID: cri-o://f7575272b418e0c443986b506becf029493c6677c2ab8190e8aafdebbd97ef8b image: quay.io/opendatahub/opendatahub-operator:v3.5.0-ea.2 imageID: quay.io/opendatahub/opendatahub-operator@sha256:62da7505a0bd1ed943c21ede46ffb0281020eba3b56657307e73ccf96a4ee006 lastState: {} name: copy-manifests ready: true resources: limits: cpu: 100m memory: 256Mi requests: cpu: 10m memory: 64Mi restartCount: 0 started: false state: terminated: containerID: cri-o://f7575272b418e0c443986b506becf029493c6677c2ab8190e8aafdebbd97ef8b exitCode: 0 finishedAt: "2026-07-02T23:11:58Z" reason: Completed startedAt: "2026-07-02T23:11:57Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /opt/manifests name: manifests - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-6h6x2 readOnly: true recursiveReadOnly: Disabled observedGeneration: 1 phase: Running podIP: 10.134.0.24 podIPs: - ip: 10.134.0.24 qosClass: Burstable startTime: "2026-07-02T23:11:54Z" - apiVersion: v1 kind: Pod metadata: annotations: k8s.ovn.org/pod-networks: '{"default":{"ip_addresses":["10.134.0.32/23"],"mac_address":"0a:58:0a:86:00:20","gateway_ips":["10.134.0.1"],"routes":[{"dest":"10.132.0.0/14","nextHop":"10.134.0.1"},{"dest":"172.31.0.0/16","nextHop":"10.134.0.1"},{"dest":"169.254.0.5/32","nextHop":"10.134.0.1"},{"dest":"100.64.0.0/16","nextHop":"10.134.0.1"}],"ip_address":"10.134.0.32/23","gateway_ip":"10.134.0.1","role":"primary"}}' k8s.v1.cni.cncf.io/network-status: |- [{ "name": "ovn-kubernetes", "interface": "eth0", "ips": [ "10.134.0.32" ], "mac": "0a:58:0a:86:00:20", "default": true, "dns": {} }] openshift.io/scc: restricted-v2 seccomp.security.alpha.kubernetes.io/pod: runtime/default security.openshift.io/validated-scc-subject-type: user creationTimestamp: "2026-07-02T23:15:21Z" generateName: postgres-69fb4594cf- generation: 1 labels: app: postgres pod-template-hash: 69fb4594cf managedFields: - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.ovn.org/pod-networks: {} manager: ip-10-0-141-220 operation: Update subresource: status time: "2026-07-02T23:15:21Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:generateName: {} f:labels: .: {} f:app: {} f:pod-template-hash: {} f:ownerReferences: .: {} k:{"uid":"613daf22-fb04-463a-b30d-299a511abc7b"}: {} f:spec: f:containers: k:{"name":"postgres"}: .: {} f:env: .: {} k:{"name":"POSTGRESQL_DATABASE"}: .: {} f:name: {} f:valueFrom: .: {} f:secretKeyRef: {} k:{"name":"POSTGRESQL_PASSWORD"}: .: {} f:name: {} f:valueFrom: .: {} f:secretKeyRef: {} k:{"name":"POSTGRESQL_USER"}: .: {} f:name: {} f:valueFrom: .: {} f:secretKeyRef: {} f:image: {} f:imagePullPolicy: {} f:name: {} f:ports: .: {} k:{"containerPort":5432,"protocol":"TCP"}: .: {} f:containerPort: {} f:protocol: {} f:readinessProbe: .: {} f:exec: .: {} f:command: {} f:failureThreshold: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:successThreshold: {} f:timeoutSeconds: {} f:resources: .: {} f:limits: .: {} f:cpu: {} f:memory: {} f:requests: .: {} f:cpu: {} f:memory: {} f:terminationMessagePath: {} f:terminationMessagePolicy: {} f:volumeMounts: .: {} k:{"mountPath":"/var/lib/pgsql/data"}: .: {} f:mountPath: {} f:name: {} f:dnsPolicy: {} f:enableServiceLinks: {} f:restartPolicy: {} f:schedulerName: {} f:securityContext: {} f:terminationGracePeriodSeconds: {} f:volumes: .: {} k:{"name":"data"}: .: {} f:emptyDir: {} f:name: {} manager: kube-controller-manager operation: Update time: "2026-07-02T23:15:21Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:k8s.v1.cni.cncf.io/network-status: {} manager: multus-daemon operation: Update subresource: status time: "2026-07-02T23:15:21Z" - apiVersion: v1 fieldsType: FieldsV1 fieldsV1: f:status: f:conditions: k:{"type":"ContainersReady"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"Initialized"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodReadyToStartContainers"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} k:{"type":"PodScheduled"}: f:observedGeneration: {} k:{"type":"Ready"}: .: {} f:lastProbeTime: {} f:lastTransitionTime: {} f:observedGeneration: {} f:status: {} f:type: {} f:containerStatuses: {} f:hostIP: {} f:hostIPs: {} f:observedGeneration: {} f:phase: {} f:podIP: {} f:podIPs: .: {} k:{"ip":"10.134.0.32"}: .: {} f:ip: {} f:startTime: {} manager: kubelet operation: Update subresource: status time: "2026-07-02T23:15:32Z" name: postgres-69fb4594cf-q8mt2 namespace: opendatahub ownerReferences: - apiVersion: apps/v1 blockOwnerDeletion: true controller: true kind: ReplicaSet name: postgres-69fb4594cf uid: 613daf22-fb04-463a-b30d-299a511abc7b resourceVersion: "21153" uid: dc5980eb-8a9f-4762-a731-8a3d2d7c2d14 spec: containers: - env: - name: POSTGRESQL_USER valueFrom: secretKeyRef: key: POSTGRES_USER name: postgres-creds - name: POSTGRESQL_PASSWORD valueFrom: secretKeyRef: key: POSTGRES_PASSWORD name: postgres-creds - name: POSTGRESQL_DATABASE valueFrom: secretKeyRef: key: POSTGRES_DB name: postgres-creds image: registry.redhat.io/rhel9/postgresql-16:latest imagePullPolicy: Always name: postgres ports: - containerPort: 5432 protocol: TCP readinessProbe: exec: command: - /usr/libexec/check-container failureThreshold: 3 initialDelaySeconds: 5 periodSeconds: 5 successThreshold: 1 timeoutSeconds: 1 resources: limits: cpu: 500m memory: 512Mi requests: cpu: 100m memory: 256Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsNonRoot: true runAsUser: 1000660000 terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /var/lib/pgsql/data name: data - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-z4bxv readOnly: true dnsPolicy: ClusterFirst enableServiceLinks: true imagePullSecrets: - name: default-dockercfg-cn5z2 nodeName: ip-10-0-141-220.ec2.internal preemptionPolicy: PreemptLowerPriority priority: 0 restartPolicy: Always schedulerName: default-scheduler securityContext: fsGroup: 1000660000 seLinuxOptions: level: s0:c26,c5 seccompProfile: type: RuntimeDefault serviceAccount: default serviceAccountName: default terminationGracePeriodSeconds: 30 tolerations: - effect: NoExecute key: node.kubernetes.io/not-ready operator: Exists tolerationSeconds: 300 - effect: NoExecute key: node.kubernetes.io/unreachable operator: Exists tolerationSeconds: 300 - effect: NoSchedule key: node.kubernetes.io/memory-pressure operator: Exists volumes: - emptyDir: {} name: data - name: kube-api-access-z4bxv projected: defaultMode: 420 sources: - serviceAccountToken: expirationSeconds: 3607 path: token - configMap: items: - key: ca.crt path: ca.crt name: kube-root-ca.crt - downwardAPI: items: - fieldRef: apiVersion: v1 fieldPath: metadata.namespace path: namespace - configMap: items: - key: service-ca.crt path: service-ca.crt name: openshift-service-ca.crt status: conditions: - lastProbeTime: null lastTransitionTime: "2026-07-02T23:15:26Z" observedGeneration: 1 status: "True" type: PodReadyToStartContainers - lastProbeTime: null lastTransitionTime: "2026-07-02T23:15:21Z" observedGeneration: 1 status: "True" type: Initialized - lastProbeTime: null lastTransitionTime: "2026-07-02T23:15:32Z" observedGeneration: 1 status: "True" type: Ready - lastProbeTime: null lastTransitionTime: "2026-07-02T23:15:32Z" observedGeneration: 1 status: "True" type: ContainersReady - lastProbeTime: null lastTransitionTime: "2026-07-02T23:15:21Z" observedGeneration: 1 status: "True" type: PodScheduled containerStatuses: - allocatedResources: cpu: 100m memory: 256Mi containerID: cri-o://147603707e68623be17c9266cbbdf600fd7d6b0dba949869bd14015c9a6ef362 image: registry.redhat.io/rhel9/postgresql-16:latest imageID: registry.redhat.io/rhel9/postgresql-16@sha256:1149c78dbc442a419d6d9073dd5b60dd40d5639070b8cd8cd8dfab30ef88a913 lastState: {} name: postgres ready: true resources: limits: cpu: 500m memory: 512Mi requests: cpu: 100m memory: 256Mi restartCount: 0 started: true state: running: startedAt: "2026-07-02T23:15:26Z" user: linux: gid: 0 supplementalGroups: - 0 - 1000660000 uid: 1000660000 volumeMounts: - mountPath: /var/lib/pgsql/data name: data - mountPath: /var/run/secrets/kubernetes.io/serviceaccount name: kube-api-access-z4bxv readOnly: true recursiveReadOnly: Disabled hostIP: 10.0.141.220 hostIPs: - ip: 10.0.141.220 observedGeneration: 1 phase: Running podIP: 10.134.0.32 podIPs: - ip: 10.134.0.32 qosClass: Burstable startTime: "2026-07-02T23:15:21Z" kind: PodList metadata: resourceVersion: "53440"