Hi,

I'm currently working on adding support for CloudStack as a cloud provider for 
Kubernetes to allow it to dynamically scale the cluster size based on capacity 
requirements.
It runs as a separate pod in its own deployment and requires an API and Secret 
key to communicate with CloudStack.

While that's going on, I'd like some feedback on how it can be integrated and 
even deployed from the CloudStack side. I have three proposals and would like 
your input :

  1.  Provide the deployment yaml file to the user, have them change the min 
and max cluster size to suit their requirement, provide the API keys as 
Kubernetes secrets and deploy it themselves. (Most flexible as the user can 
change several autoscaling parameters as well)
  2.  Deploy it via the scaleKubernetesCluster API. This will require adding 
additional parameters to the API such as minsize, maxsize, apikey and secretkey 
for the service to communicate with CloudStack. (Uses default autoscaling 
parameters, api keys provided by the user)
  3.  Deploy it via the scaleKubernetesCluster API, but also create a service 
account and use its API keys to communicate with CloudStack. The user will 
still need to provide the minsize and maxsize to the API. (Uses default 
autoscaling parameters, api keys generated and used by a service account, which 
if deleted could cause issues)

The design document can be found here :
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Cluster+Autoscaler+for+CloudStack+Kubernetes+Service

Additional info can be found here :
https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md

Look forward to hearing from you!

Thanks,
David


david.jum...@shapeblue.comĀ 
www.shapeblue.com
3 London Bridge Street,  3rd floor, News Building, London  SE1 9SGUK
@shapeblue
  
 

Reply via email to