The first step to run Kubernetes on AWS is to deploy a cluster of EKS worker nodes. You can go about doing this in 4 ways- AWS CLI, AWS console, eksctl or Terraform scripts. 3 of these methods require scripting and all 4 come with possible configuration errors. Like, for example, Availability Zone capacity errors.
You’ll be spending another set amount of time trying to fix the errors and set the configuration metrics accurate to your architecture. A standardized template that can deploy this cluster with bare minimum configuration from the user side. This was the idea requested to us by one of our customers who found the tedious steps put forward by AWS to be all too frustrating.
With nothing but 2 sequential workflows, we were able to create an all-encompassing template that eases this process and cuts the work down to a matter of minutes. The process is simplified such that you have no code, no multiple service configurations and certainly no pointless installations holding you back. You simply tell the nodes what you want and how you want it.
Running Kubernetes services is very popular among AWS users. Thus, we’ve made this template public to anyone wanting to use our services. You can check out the steps to set this up here(Link to help doc)
We shall be making use of the following services to create an AWS EKS Cluster
The 2 workflows in this process include:
1)Workflow to setup the network and data management
Here, we set up all the network resources to establish a connection and manage the other resources.
The first few nodes are set up to establish the VPC. 4 subnets are created with designated IPs that will be attached to the internet gateway. This way, we establish a connection between our services to the internet.
Normally, with AWS, you will need to configure each of these services separately. With these action nodes, however, you can configure several different services consecutively without any coding or navigating between pages.
2) AWS EKS Cluster Creation Workflow
EKS- A Node to configure the EKS Cluster provisioning.
This node does all the work for creating the cluster. A single node is all it takes with our platform, otherwise, you would have to configure a large script.
Modify role1 and role2 to the eksClusterRole.
Configure the action node to match the requirements of the cluster you’ll be provisioning.
Many other use cases can be translated similarly to our workflows. It’s a matter of combining the resources accurately. In a similar manner, you can create custom workflows to achieve any cloud management use case, irrespective of how complex it is.