Introducción a Kubernetes
¿Qué es Kubernetes y por qué es importante?
Configura un clúster local con Minikube o Kind
Arquitectura de Kubernetes: nodos, pods, servicios y componentes clave
Introducción a la API de Kubernetes y kubectl
Diferencias entre enfoques declarativos e imperativos
Quiz: Introducción a Kubernetes
Objetos y Recursos de Kubernetes
Pods, ReplicaSets y Deployments
Servicios e Ingress: Exposición de aplicaciones
ConfigMaps y Secrets: Gestión de configuraciones y datos sensibles
Quiz: Objetos y Recursos de Kubernetes
Redes y Almacenamiento en Kubernetes
Modelo de red de Kubernetes: Comunicación entre pods y servicios
Tipos de servicios: ClusterIP, NodePort, LoadBalancer y ExternalName
Volúmenes persistentes (PV) y reclamaciones (PVC)
DaemonSets y StatefulSets
Quiz: Redes y Almacenamiento en Kubernetes
Cargas de Trabajo y Escalado
Despliegue de una aplicación multi-tier en Local
Jobs y CronJobs: Tareas únicas y programadas
Escalado de aplicaciones: HPA y VPA
Escalado de aplicaciones en Kubernetes
Quiz: Cargas de Trabajo y Escalado
Kubernetes en la Nube
Introducción a EKS, AKS y GKE
Configuración de Kubernetes en EKS (AWS)
Configuración de Kubernetes en AKS (Azure) y GKE (Google Cloud)
Despliegue del Proyecto en la nube de AWS (EKS)
Quiz: Kubernetes en la Nube
Troubleshooting, Casos de uso y Certificaciones K8s
Troubleshooting en Kubernetes
Otros casos de uso de Kubernetes
Certificaciones profesionales en K8s
Despliegue en Kubernetes Finalizado
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
¿Te has preguntado cómo llevar tu clúster de Kubernetes de local a la nube? Hoy vamos a descubrir cómo hacerlo con EKSCTL y AWS. Este proceso transforma tu entorno de pruebas en una orquesta lista para producción. A continuación, exploraremos cómo gestionar nuestros recursos en la nube de AWS.
EKSCTL es un comando que te permite gestionar clústeres de Kubernetes directamente desde tu máquina local, utilizando la infraestructura de AWS. Aquí hay algunos pasos esenciales para comenzar:
Requerimientos previos: antes de instalar EKSCTL, necesitas familiarizarte con servicios de AWS como IAM, VPC y EC2.
Instalación: accede a la documentación oficial de EKSCTL buscando "EKSCTL install" en tu navegador. Verás instrucciones para diferentes sistemas operativos. En Mac OS, por ejemplo, se instala a través de Homebrew con los comandos:
brew tap weaveworks/tap
brew install weaveworks/tap/eksctl
Configuración inicial: una vez instalado, asegúrate de tener tus credenciales de AWS configuradas para validar tu identidad con el siguiente comando:
aws sts get-caller-identity
La creación de un clúster es un proceso clave donde EKSCTL brilla por su simplicidad. A través de un archivo YAML de configuración, puedes definir aspectos esenciales del clúster, como el tipo de nodos y su cantidad. Aquí está como hacerlo:
Archivo de configuración: utiliza un archivo YAML que define tu clúster, por ejemplo, simple-cluster.yaml
:
apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig
metadata:
name: test-cluster
region: us-west-2
nodeGroups:
- name: worker-nodes
instanceType: t3.medium
desiredCapacity: 2
Creación del clúster: ejecuta el siguiente comando para crear el clúster con tu archivo de configuración:
eksctl create cluster -f simple-cluster.yaml
Este proceso puede durar entre 5 a 10 minutos, dependiendo de tu conexión a Internet y los recursos de AWS.
Una vez creado el clúster, es esencial confirmarlo y empezar a gestionar nuestros recursos:
Validación: una vez finalice la creación, usa el comando kubectl
para listar los nodos:
kubectl get nodes
Esto confirmará que tus nodos están activos y operativos en la nube.
Exponer aplicaciones: puedes desplegar aplicaciones rápidamente y exponerlas a través de servicios de tipo LoadBalancer. Esto se hace mediante el comando:
kubectl expose pod hello-cloud --type=LoadBalancer --name=my-service
Utiliza el comando kubectl get services
para obtener la URL del LoadBalancer.
Gestionar entornos con diferentes clústeres puede ser complejo; aquí es donde kubectl config
resulta útil:
Cambio de contexto: para cambiar entre ambientes, verifica tus contextos disponibles y cámbialos con:
kubectl config get-contexts
kubectl config use-context minikube
Esto es especialmente útil si deseas hacer pruebas localmente sin afectar el clúster en la nube.
Eliminar clústeres: una vez finalices tus pruebas, elimina el clúster para evitar costos innecesarios con el comando:
eksctl delete cluster --name=test-cluster
¡Y ahí lo tienes! EKSCTL no solo simplifica la gestión de clústeres de Kubernetes en AWS, sino que también integra prácticas de DevOps para llevar tus aplicaciones a un entorno productivo confiable. No olvides explorar cómo podrías aplicar estos conocimientos en otros proveedores de nube. Sigue aprendiendo y compartiendo tus experiencias, juntos continuamos creciendo en el mundo del desarrollo de software en la nube.
Aportes 3
Preguntas 0
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?