<p>I am using kubernete to manage docker cluster. Right now, I can set up POD autoscale using Horizontal Pod Scaler, that is fine.
And now I think the next step is to autoscale nodes. I think for HPA, the auto-created pod is only started in the already created nodes, but if all the available nodes are utilized and no available resource for any more pods, I think the next step is to automatically create node and have node join the k8s master.
I googled a lot and there are very limited resources to introduce this topic.
Can anyone please point me to any resource how to implement this requirement.
Thanks</p>

user3006967
<p>One way to do using AWS and setting up your own Kubernetes cluster is by following these steps : </p>

<ol>
<li>Create an Instance greater than t2.micro (will be master node).</li>
<li><p>Initialize the Kubernetes cluster using some tools like Kubeadm. After the initialisation would be completed you would get a join command, which needs to e run on all the nodes who want to join the cluster. (<a href="https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/" rel="nofollow noreferrer">Here is the link</a>)</p></li>
<li><p>Now create an Autoscaling Group on AWS with start/boot script containing that join command. </p></li>
<li><p>Now whenever the utilisation specified by you in autoscaling group is breached the scaling would happen and the node(s) would automatically join the Kubernetes cluster.  This would allow the Kubernetes to schedule pods on the newly joined nodes based on the HPA. </p></li>
</ol>

<p>(I would suggest to use Flannel as pod network as it automatically removes the node from Kubernetes cluster when it is not available)</p>
