From a0d2859c1d577bb84b956ac0f5bb39e6d87840b9 Mon Sep 17 00:00:00 2001 From: rock Date: Tue, 27 Oct 2026 23:55:54 -0700 Subject: [PATCH] fix(llm-serving): podMetadata is not a field on this KServe CRD The installed InferenceService CRD declares annotations and labels directly under spec.predictor, not under spec.predictor.podMetadata. Two manifests used podMetadata, so every diff and apply failed with 'field not declared in schema' and the whole Application could not reconcile. Move the prometheus scrape annotations and the labels up one level. Nothing is lost: the same keys, in the place the CRD accepts. --- k8s/apps/llm-serving/embeddings.yaml | 15 +++++++-------- k8s/apps/llm-serving/reranker.yaml | 15 +++++++-------- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/k8s/apps/llm-serving/embeddings.yaml b/k8s/apps/llm-serving/embeddings.yaml index 72a2c5c..b748971 100644 --- a/k8s/apps/llm-serving/embeddings.yaml +++ b/k8s/apps/llm-serving/embeddings.yaml @@ -45,14 +45,13 @@ spec: volumeMounts: - mountPath: /mnt/models name: models - podMetadata: - annotations: - prometheus.io/scrape: "true" - prometheus.io/port: "8080" - prometheus.io/path: "/metrics" - labels: - app.kubernetes.io/name: llm-embeddings - app.kubernetes.io/part-of: llm-serving + annotations: + prometheus.io/scrape: "true" + prometheus.io/port: "8080" + prometheus.io/path: "/metrics" + labels: + app.kubernetes.io/name: llm-embeddings + app.kubernetes.io/part-of: llm-serving maxReplicas: 1 minReplicas: 1 nodeSelector: diff --git a/k8s/apps/llm-serving/reranker.yaml b/k8s/apps/llm-serving/reranker.yaml index 6d45d94..87d5652 100644 --- a/k8s/apps/llm-serving/reranker.yaml +++ b/k8s/apps/llm-serving/reranker.yaml @@ -45,14 +45,13 @@ spec: volumeMounts: - mountPath: /mnt/models name: models - podMetadata: - annotations: - prometheus.io/scrape: "true" - prometheus.io/port: "8080" - prometheus.io/path: "/metrics" - labels: - app.kubernetes.io/name: llm-reranker - app.kubernetes.io/part-of: llm-serving + annotations: + prometheus.io/scrape: "true" + prometheus.io/port: "8080" + prometheus.io/path: "/metrics" + labels: + app.kubernetes.io/name: llm-reranker + app.kubernetes.io/part-of: llm-serving maxReplicas: 1 minReplicas: 1 nodeSelector: