- Virtual Private Cloud (VPC)
- Identity and Access Management (IAM)
- Elastic Container Service for Kubernetes (EKS)
- Amazon EKS managed node (EKS)
- Metrics Server
- Cluster Autoscaler (CA)
- AWS Container Insights
- AWS XRay
- Nginx Controller
- Guestbook
Name | Description | Type | Default | Required |
---|---|---|---|---|
PROJECT |
Nombre del proyecto | string | falcon |
no |
ENV |
Nombre del entorno | string | k8s |
no |
AWS_REGION |
Region de Amazon AWS | string | us-east-1 |
no |
EKS_VERSION |
Version de Kubernetes | string | 1.21 |
no |
- Crear cluster y nodes
make cluster
- Instalar Metrics Server
make metrics-server
- Instalar Cluster Autoscaler
make cluster-autoscaler
- Iniciar el escalado de pods y nodos:
kubectl apply -f https://k8s.io/examples/application/php-apache.yaml
kubectl autoscale deployment php-apache --cpu-percent=50 --min=1 --max=100
kubectl run apache-bench -i --tty --rm --image=httpd -- ab -n 5000000 -c 200 http://php-apache.default.svc.cluster.local/
- Revisar el escalado de pods:
kubectl get hpa --watch
- Revisar el escalado de nodos:
kubectl get nodes --watch
- Revisar logs de cluster-autoscaler:
kubectl logs -f deployment/cluster-autoscaler -n kube-system
- Instalar AWS Container Insights
make container-insights
- Instalar AWS X-Ray
make xray
- Desplegar AWS X-Ray Sample
make xray-sample
- Capturar DNS del balanceador asociado al servicio:
kubectl get service x-ray-sample-front-k8s -o wide
- Desplegar Nginx Ingress Controller
make nginx-controller
- Desplegar Guestbook
make guestbook
- Capturar DNS del balanceador asociado al Nginx Ingress Controller:
kubectl get service nginx-ingress-nginx-ingress -o wide
make destroy