I have tried 3-4 different ways to use HPA on my cluster deployment. It shows up in Kubernetes as a statefulset rather than a deployment so I have been going that route. I have several metric servers and they all respond fine to kubeclt top commands and raw requests but no matter what I try it alway comes back with the same error
k8ssandra 12s Warning FailedComputeMetricsReplicas horizontalpodautoscaler/keda-hpa-k8ssandra invalid metrics (1 invalid out of 1), first error is: failed to get cpu utilization: missing request for cpu
k8ssandra 12s Warning FailedGetResourceMetric horizontalpodautoscaler/keda-hpa-k8ssandra failed to get cpu utilization: missing request for cpu
I’ve tried with Kubernetes and Keda. Using Helm and standalone yamls
Is there a guide somewhere thats is specific to this deployment ? anyone with any good experience with getting this set up ?
helm install -f k8ssandra-value.yaml k8ssandra k8ssandra/k8ssandra --namespace k8ssandra
Here is my helm value file
cassandra:
version: “4.0.3”
cassandraLibDirVolume:
storageClass: kops-ssd-1-17
size: 5Gi
allowMultipleNodesPerWorker: true
heap:
size: 1G
newGenSize: 1G
resources:
requests:
cpu: 1000m
memory: 1Gi
limits:
cpu: 2000m
memory: 5Gi
datacenters:
- name: dc1
size: 3
averageCpuUtilization: 50
medusa:
enabled: true
bucketName: k8ssandra-bucket-dev
storageSecret: medusa-bucket-key
storage: s3
storage_properties:
region: ca-central-1
racks:- name: default
ingress:
enabled: true
kube-prometheus-stack:
grafana:
adminUser: admin
adminPassword: CrInkleB0rk!
stargate:
enabled: true
replicas: 1
heapMB: 500
cpuReqMillicores: 100
cpuLimMillicores: 1000
- name: default