bitnami / charts

Bitnami Helm Charts
https://bitnami.com
Other
9.06k stars 9.23k forks source link

[bitnami/milvus] 9.0.12 VPA semantic version mismatch for Milvus query nodes #30583

Open DarthBubi opened 1 week ago

DarthBubi commented 1 week ago

Name and Version

bitnami/milvus 9.0.12

What architecture are you using?

amd64

What steps will reproduce the bug?

  1. AKS version 1.29.9, VPA managed by AKS
  2. w/ VPA enabled for Query Node
  3. Install via Terraform Helm provider or Helm directly
  4. Semantic version mismatch error. See log output.

Are you using any custom parameters or values?

values.yaml:

...
queryNode:
  tolerations: 
    - key: "workload"
      operator: "Equal"
      value: "milvus"
      effect: "NoSchedule"
  affinity:
    nodeAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:
        nodeSelectorTerms:
        - matchExpressions:
          - key: "kubernetes.azure.com/agentpool"
            operator: "In"
            values:
            - "milvuspool"
  resources:
    limits:
      cpu: "7"
      memory: "12Gi"
    requests:
      cpu: "3500m"
      memory: "4Gi"
  autoscaling:
    hpa:
      enabled: true
      targetCPU: "80"
    vpa:
      enabled: true
      minAllowed:
        cpu: "1"
        memory: "2Gi"
      maxAllowed:
        cpu: "7"
        memory: "12Gi"
...

set commands in Terraform:

...
set {
    name = "queryNode.replicas"
    value = var.milvus_queryNode_replicas
  }

  set {
    name = "queryNode.autoscaling.hpa.minReplicas"
    type = "string"
    value = var.milvus_queryNode_minReplicas
  }

  set {
    name = "queryNode.autoscaling.hpa.maxReplicas"
    type = "string"
    value = var.milvus_queryNode_maxReplicas
  }
...

What is the expected behavior?

No response

What do you see instead?

Semver mismatch: Error: template: milvus/templates/query-node/vpa.yaml:7:15: executing "milvus/templates/query-node/vpa.yaml" at <include "common.capabilities.vpa.apiVersion" .>: error calling include: template: milvus/charts/common/templates/_capabilities.tpl:160:39: executing "common.capabilities.vpa.apiVersion" at <semverCompare "<1.23-0" $kubeVersion>: error calling semverCompare: Invalid Semantic Version

Additional information

Output of kubectl describe crd verticalpodautoscalers.autoscaling.k8s.io vpa_crd.txt

javsalgar commented 4 days ago

Hi,

It seems that something is incorrect with the Capabilities.Kubeversion helm object. Could you try setting the value kubeVersion to 1.29.9 and see if that works?

DarthBubi commented 4 days ago

Yields the same error. Tried setting via Helm provider and values file.

juan131 commented 3 days ago

When using Terraform, I don't think .Capabilities.Kubeversion helm object is properly populated, hence you need to manually specify the k8s version via the kubeVersion parameter, see:

That said, it seems the versions we use in the common.capabilities.vpa.apiVersion aren't valid, see:

Let me review this with the team.