Create a Kubernetes cluster on AWS and within it have a tool where we can measure the latency between the nodes of the cluster. All provisioned using terraform.
- In the EKS control plane will be the master components of the cluster, such as etcd, controller and sheduler. All these are managed by AWS, there will be no access to these instances. We will access the management of workers only.
- You must create a VPC to create an isolated network environment for the cluster.
- At least two Availability Zones (AZ) inside the VPC are required to create the EKS cluster.
- The creation of two subnets in each AZ, being a public and a private subnet. All pods will be created inside the private subnet and the internet access will go through the public subnet through a NAT.
We use terraform modules to be able to reuse all the codes that were created in each folder, in this way it becomes an organized project and easy to find each code.
- We have a folder with the terraform modules, called modules, inside has the "master", "network" and "node" pastes, each one has the .tf files.
- The network module contains all the network configuration (vpc, subnet, internet gw, nat and etc)
- The master module has the EKS control plane configuration.
- In node you have the workers configuration.
- At the root we have the .tf files that will merge all the modules.
- AWS CLI installed Version 3.73.0
- Terraform installed Version 1.0.8
- kubectl installed and knowledge to manage
- git installed
git clone https://github.com/kayketeixeira/Desafio_Stone
terraform init
terraform validate
terraform apply
aws eks --region us-west-w update-kubeconfig --name eks-cluster-kayke
kubectl get nodes
kubectl port-forward deployment.apps/prometheus-grafana 3000 --namespace monitoring
http://127.0.0.1:3000
user: admin
Password: prom-operator
1) Select the option "Create".
2) Select to "import".
3) Inform the ID 10949.
- Select the Prometheus Datastore