Kubernetes es una distribución gratuita de código abierto y también conocida como k8s. Se utiliza para automatizar la implementación, la gestión y el escalado de software y aplicaciones en contenedores. Proporciona diferentes componentes para la gestión de contenedores, como nodos, plano de control, pods e implementación de Kubernetes. Con la ayuda de Kubernetes, los desarrolladores pueden automatizar fácilmente la tarea operativa, revertir los cambios y monitorear y escalar las aplicaciones y el software en contenedores.
En este blog te explicaremos:
-
- ¿Qué es la implementación de Kubernetes?
- ¿Por qué crear una implementación es mejor que crear pods?
- ¿Qué es un ReplicaSet en implementación?
- ¿Qué es el comando “kubectl create despliegue”?
- Requisito previo: instalar kubectl y minikube
- ¿Cómo crear una implementación de Kubernetes utilizando el comando 'kubectl create implementación'?
- ¿Cómo ejecutar réplicas en la implementación de Kubernetes usando el comando 'kubectl create implementación'?
- ¿Cómo funciona ReplicaSet para controlar la implementación de Kubernetes?
- Conclusión
¿Qué es la implementación de Kubernetes?
Se hace referencia a la implementación de Kubernetes como un objeto de recurso que proporciona instrucciones declarativas y actualizaciones de sus elementos principales, como Pods, ReplicaSet y aplicaciones en contenedores. La implementación de Kubernetes permite al desarrollador describir la aplicación en contenedores, como imagen, cantidad de pods, puerto, réplicas, etc. La principal razón por la que Kubernetes es mejor que Docker es que nos ofrece propiedades de recuperación y escalado automático, y estos estados se pueden lograr gracias a la implementación de Kubernetes.
El mecanismo de 'reparación automática' es una técnica de automatización de pruebas que prueba su objeto en ejecución y, en caso de que ocurra algún error, implementa la mejor coincidencia para la corrección y aplica la solución para hacer coincidir el estado real con el estado deseado. En el servicio de 'escalado automático', la carga de trabajo de la aplicación se escala automáticamente.
¿Por qué crear una implementación es mejor que crear pods?
La implementación de Kubernetes permite al desarrollador mantener fácilmente un grupo de los mismos pods ejecutándose con una configuración común. Por el contrario, al crear un pod, los usuarios deben crear y ejecutar el pod por separado. Durante la implementación, si un pod se elimina o finaliza, se recreará e iniciará automáticamente gracias a un mecanismo de reparación automática. Pero si los pods se ejecutan directamente sin implementación, en caso de error, los usuarios deben volver a crear y ejecutar el pod manualmente.
¿Qué es un ReplicaSet en implementación?
Cuando el desarrollador creó la implementación, se generaron tres componentes principales y ReplicaSet es uno de ellos. El ReplicaSet es un controlador de implementación y es responsable de ejecutar la cantidad especificada de Pods dentro de una implementación. En caso de que se elimine un pod, ReplicaSet indica rápidamente que se regenere el nuevo pod para que coincida el estado real de los pods con el estado deseado. Es el principal responsable de proporcionar actualizaciones declarativas a los pods.
¿Qué es el comando “kubectl create despliegue”?
El ' kubectl crear implementación 'Es un comando de la herramienta Kubectl que se utiliza para crear e iniciar la implementación de Kubernetes. Luego, la implementación le indica a Kubernetes cómo crear y actualizar instancias de su aplicación.
Sintaxis
kubectl crear implementación < nombre-despliegue > --imagen = < Nombre de la imágen > -- < opción = valor >
Opción
El comando 'kubectl create implementación' admite diferentes opciones para proporcionar una capa adicional de funcionalidad y brindar instrucciones adicionales para implementar instancias de una aplicación. Las opciones soportadas por el “ kubectl crear implementación El comando 'se proporciona a continuación en forma de tabla:
Opción | Descripción |
“– –permitir-claves-de-plantilla-faltantes | Si su valor se establece como verdadero, ignorará cualquier error en las plantillas cuando falte una clave o campo de mapa en la plantilla. |
“– –ejecución en seco | Su valor puede ser 'ninguno', 'servidor' o 'cliente'. Si el valor es cliente solo mostrará o imprimirá el objeto que se enviaría sin enviarlo. Si el valor es servidor, solo enviará solicitudes del lado del servidor. |
'- -gerente de campo | Muestra o establece el nombre del administrador utilizado para realizar un seguimiento de la propiedad del campo. |
'- -imagen | Especifique el nombre de la imagen para especificar la plantilla del contenedor. |
-o, “– –salida | Especifique el formato de salida. |
'- -puerto | Configura el puerto para exponer el contenedor. |
-r, “– –réplicas | Se utiliza para definir una cantidad de réplicas de pod. |
“– –guardar-config | Se utiliza para guardar la configuración de un objeto en su anotación. Si su valor es falso, la anotación no se modificará. |
“– –mostrar-campos-administrados | Por defecto, su valor es falso. Pero si se establece como verdadero, mantendrá o guardará los campos administrados al imprimir objetos en formato JSON o YAML. |
“– –validar=’estricto’ | Su valor puede ser 'estricto', 'advertir' o 'ignorar'. Si es 'estricto', validará la entrada y rechazará la solicitud si no es válida. Si su valor es 'advertir', advertirá sobre campos duplicados y desconocidos. Si su valor es 'ignorar', no realizará ninguna validación del esquema. |
Requisito previo: instalar kubectl y minikube
Para iniciar la implementación de Kubernetes en el clúster de Kubernetes, primero instale las siguientes herramientas en el sistema:
-
- Herramienta Kubectl: Kubectl es una herramienta de línea de comandos de Kubernetes que se utiliza para controlar, administrar y operar un clúster de Kubernetes y sus componentes, como la implementación de Kubernetes.
- Herramienta Minikube: Minikube es un sistema de implementación para Kubernetes que proporciona o crea una máquina virtual en el sistema para iniciar el clúster de Kubernetes. Puede ejecutar clústeres de un solo nodo y lo utilizan principalmente principiantes o con fines de prueba.
Para comenzar con Kubernetes e instalar componentes esenciales como ' kubectl ' y ' minikube ”, visita nuestro enlace “ ' artículo.
¿Cómo crear una implementación de Kubernetes utilizando el comando 'kubectl create'?
La implementación de Kubernetes se puede crear aplicando el manifiesto de Yaml o mediante el botón ' kubectl crear implementación ' dominio. Para crear la implementación de Kubernetes usando el comando 'kubectl create implementación', siga la demostración que se proporciona a continuación.
Paso 1: Ejecute PowerShell
Primero, inicie Windows PowerShell con privilegios administrativos desde el menú Inicio. Los privilegios administrativos son necesarios porque minikube inicia el clúster de Kubernetes en la máquina virtual mediante HyperV:
Paso 2: iniciar el clúster de Kubernetes
Para iniciar el clúster de Kubernetes, utilice el botón ' inicio del minikube ' dominio:
inicio del minikube
Paso 3: obtenga nodos de Kubernetes
A continuación, acceda a los nodos de Kubernetes para comprobar si el clúster está iniciado o no utilizando el botón ' kubectl obtiene nodos ' dominio:
kubectl obtiene nodos
Paso 4: crear la implementación de Kubernetes
Cree una nueva implementación de Kubernetes en el clúster mediante el comando “k ubectl crea implementación
Paso 5: Obtenga la implementación, el ReplicaSet y el Pod de Kubernetes
El comando 'kubectl create development' creará tres componentes: Deployment, ReplicaSet y Pod. Para acceder a las implementaciones de Kubernetes, ejecute el comando ' kubectl obtener implementación ' dominio:
kubectl obtener implementación
Aquí puedes ver ' implementación de nginx ”está disponible en el clúster de Kubernetes:
ReplicaSet es el controlador de implementación que garantiza que la aplicación en los pods se ejecute sin errores y repare los puntos de interrupción. Para acceder a ReplicaSet, utilice el botón ' kubectl obtener rs ' dominio:
Aquí, ReplicaSet muestra la cantidad deseada de pods y los pods en ejecución actuales:
El pod es una unidad más pequeña del clúster de Kubernetes que ejecuta la aplicación en contenedores. Para acceder a los pods de Kubernetes, utilice el botón ' kubectl obtiene vainas ' dominio. Aquí el ' -O La opción 'se utiliza para especificar el formato de salida. Para ver la dirección IP del Pod, hemos utilizado el botón ' ancho ' formato:
Paso 6: inicie sesión en el clúster de Kubernetes
Para acceder a la aplicación que se ejecuta en un contenedor, primero acceda al clúster de Kubernetes mediante el botón ' minikube ssh ' dominio:
minikube ssh
Paso 7: Acceda a la aplicación que se ejecuta en la implementación de Kubernetes
Después de eso, utilice el botón ' rizo ”comando junto con la dirección IP del Pod para acceder a la aplicación en contenedor:
rizo 10.244.0.7
¿Cómo ejecutar réplicas en la implementación de Kubernetes usando el comando 'kubectl create implementación'?
Crear Kubernetes Deployment es mejor que ejecutar Pod, ya que puede ejecutar y administrar un grupo de pods al mismo tiempo mediante la creación de réplicas de Pod. Para ejecutar réplicas en la implementación de Kubernetes usando el comando 'kubectl create implementación', siga las instrucciones a continuación.
Paso 1: crear la implementación de Kubernetes
Primero, cree una implementación usando el botón ' kubectl crear implementación 'comando junto con el' “– –réplicas ' opción. El valor de la opción 'réplicas' especificará la cantidad deseada de pods que ReplicaSet debe administrar y ejecutar:
kubectl crear implementación implementación nginx --imagen =nginx:perl estable --réplicas = 2
Paso 2: Obtenga la implementación, el ReplicaSet y los pods de Kubernetes
Ahora, acceda a la implementación de Kubernetes usando el comando 'kubectl get implementar':
kubectl obtener implementación
Aquí puede ver que la implementación muestra la cantidad de pods listos, actualizados y disponibles:
Utilice el siguiente comando para acceder a la información de ReplicaSet. Puede ver que ReplicaSet muestra el estado de la cantidad deseada de pods y los pods que se están ejecutando actualmente:
De manera similar, para acceder a los pods en ejecución, use el siguiente comando:
El resultado indica que la implementación de Kubernetes está ejecutando correctamente la cantidad deseada de réplicas de Pods en el clúster de Kubernetes:
¿Cómo funciona ReplicaSet para controlar la implementación de Kubernetes?
El ReplicaSet es responsable de ejecutar la cantidad deseada de Pods dentro de una implementación. Si un pod se descompone o elimina, automáticamente lo recreará para que coincida el estado actual de los Pods con el estado deseado. Este mecanismo en realidad está implementando la técnica de autocuración. Para una demostración, siga las instrucciones a continuación.
Paso 1: Ver pods de Kubernetes en vivo
Primero, vea el estado de los Pods en vivo usando el botón ' kubectl obtiene vainas -w ' dominio. Además, tenga en cuenta el nombre del pod que se romperá o eliminará:
kubectl obtiene vainas -En
Paso 2: eliminar un pod
A continuación, abra otra terminal de PowerShell e intente eliminar el segundo pod usando el botón ' kubectl elimina pods
El resultado muestra que hemos eliminado correctamente el pod:
Ahora, abra la ventana de PowerShell donde está el estado del pod. Aquí, puede ver que cuando eliminamos el Pod, ReplicaSet creó y ejecutó automáticamente el nuevo pod para hacer coincidir el estado actual de los pods con el estado deseado:
Hemos cubierto el método para crear una implementación de Kubernetes utilizando el comando 'kubectl create implementación'.
Conclusión
Para crear la implementación de Kubernetes usando el “ kubectl crear implementación ”, primero instale las herramientas esenciales como minikube y kubectl. Después de eso, ejecute el nuevo clúster de Kubernetes usando minikube. Ahora, cree una nueva implementación usando el botón ' kubectl crea implementación