WindowsMacSoftwareConfiguraciónSeguridadProductividadLinuxAndroidRendimientoConfiguraciónApple Todo

Introducción a Kubernetes

Editado 1 hace un día por ExtremeHow Equipo Editorial

KubernetesContenedoresDevOpsClústeresOrquestaciónGestión de AplicacionesEscalabilidadConfiguraciónImplementaciónGestión de servidores

Introducción a Kubernetes

Traducción actualizada 1 hace un día

Kubernetes, a menudo referido como K8s, es una plataforma de código abierto diseñada para automatizar el despliegue, escalado y operación de contenedores de aplicaciones. Proporciona un marco que le permite ejecutar sistemas distribuidos de manera flexible. Kubernetes gestiona el trabajo que realizan sus aplicaciones en función de los recursos disponibles en su clúster, distribuye la carga de manera óptima y gestiona la recuperación ante fallos.

Prerrequisitos

Antes de comenzar la instalación de Kubernetes en Linux, asegúrese de tener los siguientes prerrequisitos:

Configuración de Docker

Docker es el runtime que Kubernetes utiliza para gestionar contenedores. Forma la base sobre la cual trabaja Kubernetes. Siga estos pasos para instalar Docker en su sistema Linux:

  1. Primero, actualice su lista de paquetes:
  2. sudo apt-get update
  3. Instale los paquetes prerrequisito necesarios para Docker:
  4. sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
  5. Agregue la clave GPG de Docker para asegurar la autenticidad de los paquetes de Docker:
  6. curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  7. Agregue el repositorio de Docker a su lista de fuentes:
  8. sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/$(lsb_release -cs) stable"
  9. Vuelva a actualizar la base de datos de paquetes e instale Docker:
  10. sudo apt-get update sudo apt-get install docker-ce
  11. Asegúrese de que Docker se está ejecutando:
  12. sudo systemctl start docker sudo systemctl enable docker

Verifique la instalación de Docker comprobando su versión:

docker --version

Instalación de componentes de Kubernetes

Paso 1: Agregar repositorios de Kubernetes

Para instalar Kubernetes, necesita agregar su repositorio oficial a su gestor de paquetes:

  1. Importe la clave pública GPG de Google Cloud:
  2. curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
  3. Agregue el repositorio de Kubernetes a la lista de fuentes:
  4. echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list

Paso 2: Instalación de kubelet, kubeadm y kubectl

Los tres componentes fundamentales de Kubernetes son kubelet, kubeadm y kubectl. Aquí está cómo instalarlos:

  1. Actualice la lista de paquetes:
  2. sudo apt-get update
  3. Instale los componentes:
  4. sudo apt-get install -y kubelet kubeadm kubectl
  5. Evite que los paquetes se actualicen automáticamente bloqueando sus versiones:
  6. sudo apt-mark hold kubelet kubeadm kubectl

Configuración de Kubernetes

Una vez que Kubernetes está instalado, es hora de configurar el sistema apropiadamente:

Paso 3: Deshabilitar la memoria swap

Kubernetes no funciona cuando la memoria swap está habilitada. Use lo siguiente para deshabilitar el swap en su sistema:

sudo swapoff -a

Para hacer permanente el cambio a través de reinicios, comente la línea de swap en /etc/fstab.

Paso 4: Configuración de red

Asegúrese de que estas configuraciones de red estén configuradas correctamente:

  1. Habilite el reenvío de IP configurando net.bridge.bridge-nf-call-iptables=1:
  2. sudo sysctl net.bridge.bridge-nf-call-iptables=1
  3. Verifique las configuraciones ejecutando sysctl -p.

Paso 5: Inicializar Kubernetes con kubeadm

Usamos kubeadm para configurar un nodo maestro - el plano de control para su clúster de Kubernetes:

  1. Ejecute kubeadm init para inicializar su entorno:
  2. sudo kubeadm init
  3. Siga las instrucciones de salida para configurar su configuración de kubectl. Esto usualmente incluye:
  4. mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config
  5. Si está usando root, reemplace $HOME con /root o /home/<su-usuario>.

Paso 6: Configuración de la red de pods

Instale el complemento de red de pods para permitir la comunicación entre los pods. Aquí hay un ejemplo usando Flannel:

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

Verifique el estado de sus nodos:

kubectl get nodes

Gestión de su clúster de Kubernetes

Paso 7: Desplegar la aplicación

Desplegar su primera aplicación es simple. Vamos a desplegar un servidor nginx simple:

kubectl run nginx --image=nginx --port=80

Para exponer el despliegue como un servicio accesible desde fuera del clúster:

kubectl expose deployment nginx --type=NodePort

Obtenga detalles sobre su despliegue y servicio:

kubectl get deployments kubectl get services

NodePort del servicio le proporcionará un puerto para acceder al servidor nginx, al cual puede acceder usando la dirección IP de su servidor y el puerto dado.

Escalado de aplicaciones

Una de las ventajas significativas de Kubernetes es su capacidad para escalar aplicaciones fácilmente. Si su servidor nginx necesita manejar más carga, puede escalarlo:

kubectl scale deployment nginx --replicas=3

Verifique el estado:

kubectl get pods -o wide

Limpieza

Después de probar las características de Kubernetes, puede que quiera limpiar el entorno de demostración:

kubectl delete service nginx kubectl delete deployment nginx

Conclusión

Con esta guía, ha comenzado a instalar y usar Kubernetes en Linux. Esta configuración le da una comprensión básica de Kubernetes, centrándose en componentes esenciales como kubeadm, kubelet y la capacidad de desplegar y gestionar aplicaciones simples. Desde aquí, puede explorar conceptos más avanzados de Kubernetes, configuración y técnicas de gestión para aprovechar todo el poder de Kubernetes en su infraestructura.

Si encuentras algo incorrecto en el contenido del artículo, puedes


Comentarios