Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

ReplicationController

 

Ha aprendido cómo iniciar una caja Pod que representa los contenedores de su archivo YAML en el capítulo 2. Una pregunta puede aparecer en su contenedor: ¿Qué sucede si necesito tres pods que son exactamente iguales (cada uno ejecuta un contenedor de Apache) para asegurarse de que el servicio Web parezca más sólido? Cambio el nombre en el archivo YAML repetir los mismos comandos para crear los pods requeridos? ¿O quizás con una secuencia de Shell? Kubernetes ya tiene los objetos para abordar esta demanda con RC- ReplicationController, o RS– ReplicaSet.

Una ReplicationController (RC) garantiza que se esté ejecutando un número específico de réplicas del conjunto Pod al mismo tiempo. En otras palabras, un controlador de replicación garantiza que una Pod o un conjunto homogéneo de pods siempre está activo y disponible.

Creación de un RC

A’continuación, crearé un RC con un ejemplo. Primero, cree un archivo YAML para un objeto RC llamado WebServer:

Recuerde que Kind indica el tipo de objeto que define este archivo YAML, es un RC en lugar de un pod. En los metadatos, se muestra’el nombre RC s como webserver. Spec es la especificación detallada de este objeto RC, y las réplicas: 3 indica que se clonará el mismo conjunto POD para asegurarse de que el número total de pods creado por RC sea siempre de tres. Por último, la plantilla proporciona información acerca de los contenedores que se ejecutarán en la caja Pod, el mismo que se vio en un archivo Pod YAML. A continuación, utilice este archivo YAML para crear el objeto RC:

Si es lo suficientemente rápido, puede capturar el estado intermedio al crear los nuevos conjuntos de Pod:

Finalmente, verá tres pods lanzados:

RC funciona directamente con el conjunto Pod. Los flujos de trabajo se muestran en la Figure 1.

Figure 1: Flujos de trabajo de RC
Flujos de trabajo de RC

Con el parámetro replicas especificado en el archivo YAML del objeto RC, el controlador de duplicación Kubernetes, que se ejecuta como parte del proceso Administrador de Kube-Controller-Manager en el nodo Master, seguirá supervisando el número de pods en ejecución generados por RC y iniciará automáticamente otros nuevos si alguno de ellos fallara. Lo más importante para aprender es que los conjuntos de Pod individuales se pueden morir en cualquier momento, pero el pool en general está siempre en funcionamiento, lo que hace que sea un servicio sólido. Lo entenderá mejor cuando aprenda el servicio Kubernetes.

Probar RC

Puede probar un impacto de’RC s eliminando uno de los pods. Para eliminar un recurso con kubectl, utilice el subcomando kubectl delete:

Como puede ver, cuando se termina un conjunto Pod, se genera inmediatamente un nuevo conjunto Pod. Finalmente, el conjunto Pod antiguo desaparecerá y el nuevo conjunto Pod estará activo y en ejecución. El número total de pods que se ejecutan permanecerá inalterado.

También puede escalar hacia arriba o hacia abajo las réplicas con RC. Por ejemplo, para aumentar la escala desde el número de 3 al 5:

RC ofrece otras ventajas. En realidad, dado que esta abstracción es tan popular y muy utilizada, dos objetos muy similares, la implementación de – ReplicaSet e implementar, se han desarrollado con características más eficaces. En términos generales, puede llamarles RC de nueva generación. Por ahora,’deje de explorar más características de RC y mueva nuestro enfoque a estos dos objetos nuevos.

Antes de pasar al siguiente objeto, puede eliminar el RC: