Hi Daan,

Thanks for your feedback!
Wrt the ideas, Submitting a yaml to an API would be redundant since the user 
can deploy it himself.
The API proposal was to simplify it for the user so they can just pass min / 
max size as well as API keys if needed (so no tweaking a yaml file)
The scaleAPI could have a flag to indicate whether it enables autoscaling or 
not, and if enabled, the additional fields provided.

Thanks,
David
________________________________
From: Daan Hoogland <daan.hoogl...@gmail.com>
Sent: Monday, October 12, 2020 4:36 PM
To: dev <dev@cloudstack.apache.org>
Subject: Re: [DISCUSS] CloudStack Kubernetes Cluster Auto-Scaler support

David,
as a general principle an API called scale<something> should not be used to
configure autoscaling of <something> in my opinion.
 So option 1 seems the best to me (an submitYamlForKubernetes-API?) However
instead of requiring an yaml we could just ask for the required fields

On Mon, Oct 12, 2020 at 12:51 PM David Jumani <david.jum...@shapeblue.com>
wrote:

> 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<http://www.shapeblue.com>
> 3 London Bridge Street,  3rd floor, News Building, London  SE1 9SGUK
> @shapeblue
>
>
>
>

--
Daan

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

Reply via email to