Skip to content

HPA not working for most openstack services #1327

@zhmarvi

Description

@zhmarvi

looking at the HPA resources, the utilization ends up being shown as unknown due to lack of resource request for the container spec in the deployment yaml for each respective openstack service, this is working for certain infra services so we just need to make adjustments

PROBLEM:
root@deploy:~# kubectl get hpa -A
NAMESPACE NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE
envoyproxy-gateway-system envoy-envoy-gateway-flex-gateway-e868ef77 Deployment/envoy-envoy-gateway-flex-gateway-e868ef77 cpu: 6%/60%, memory: 54319104/500Mi 2 9 2 41h
openstack barbican-api Deployment/barbican-api cpu: /80%, memory: /80% 2 9 2 21h
openstack glance-api Deployment/glance-api cpu: /80%, memory: /80% 2 9 2 40h
openstack keystone-api Deployment/keystone-api cpu: /80%, memory: /80% 2 9 2 40h
openstack masakari-api Deployment/masakari-api cpu: 12%/50%, memory: 43%/80% 2 9 2 40h
openstack memcached StatefulSet/memcached cpu: 3%/80%, memory: 11%/80% 2 9 2 41h
openstack neutron-server Deployment/neutron-server cpu: /80%, memory: /80% 2 9 2 40h
openstack nova-api-metadata Deployment/nova-api-metadata cpu: /80%, memory: /80% 2 9 2 40h
openstack nova-api-osapi Deployment/nova-api-osapi cpu: /80%, memory: /80% 2 9 2 40h
openstack nova-compute-ironic StatefulSet/nova-compute-ironic cpu: /80%, memory: /80% 2 9 0 40h
openstack nova-conductor Deployment/nova-conductor cpu: /80%, memory: /80% 2 9 2 40h
openstack nova-novncproxy Deployment/nova-novncproxy cpu: /80%, memory: /80% 2 9 2 40h
openstack nova-scheduler Deployment/nova-scheduler cpu: /80%, memory: /80% 2 9 2 40h
openstack placement-api Deployment/placement-api cpu: /80%, memory: /80% 2 9 2 40h
openstack skyline-apiserver Deployment/skyline cpu: 1%/80%, memory: 66%/80% 2 9 4 40h

current HPA is useless for autoscaling.

To Reproduce
deploy a given service and check HPA resources in openstack namespace

Expected behavior

HPA should measure against the request spec and compare utilization to determine if pod needs to be autoscaled.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions