Kubernetes auto scaling in cloud environment
Recently Kubernetes started preview work on https://cluster-api.sigs.k8s.io which is meant to be the standard way to solve the way how High Availability clusters are deployed.

The kubeadm tool has also been updated with features to deploy multiple masters since this question was first asked, which help tremendously. With the exception of deploying cloud-specific configuration, the documentation for kubeadm configuration YAML file brings you quite the way towards having a properly deployed cluster.

docs for kubeadm: https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm/