Kubernetes Autoscale Based on Custom-Metrics on v2alpha

6/2/2017

I have a 4 node k8 cluster using Kargo (Kubernetes v1.6.1+coreos.0) and was hoping to use autoscaling/v2alpha1. When I do kubectl api-version I only see autoscaling/v1. So I tried to add --runtime-config=apis/autoscaling/v2alpha1 config to /etc/kubernetes/manifests/kube-apiserver.manifest. But this would result in my apiserver shutting down.

Q1. How can I add the new autoscaling/v2alpha api set to my current cluster? Is there a way to only install/upgrade (I am thinking kubectl apply something) the api without upgrading the entire cluster?

Q2. Is it possible to get autoscaling based on custom metrics running with autoscale/v1 in 1.6+? With autoscale/v1, I am able to get cpu based autoscale working correctly with Heapster. The docs say support for annotations was removed in v1.6 in favor of the autoscaling/v2alpha1.

-- Max Arbiter
kubernetes

1 Answer

8/16/2017

I had a same problem and just solved it! In my k8s 1.6.1 cluster, I added:

--runtime-config=apis/autoscaling/v2alpha1 

to /opt/kubernates/manifests/kube-apisever.yaml, and then run the following command:

systemctl restart kubelet

After that you will see v2alhpa1 in the api-version lists.

-- 黄自豪
Source: StackOverflow