Kubernetes: controlador de replicación
El controlador de replicación es una de las características clave de Kubernetes, que es responsable de administrar el ciclo de vida del pod. Es responsable de asegurarse de que el número especificado de réplicas de pod se esté ejecutando en cualquier momento. Se usa en el momento en que uno quiere asegurarse de que se esté ejecutando el número especificado de pod o al menos un pod. Tiene la capacidad de subir o bajar el número especificado de pod.
Es una buena práctica utilizar el controlador de replicación para administrar el ciclo de vida del pod en lugar de crear un pod una y otra vez.
apiVersion: v1
kind: ReplicationController --------------------------> 1
metadata:
name: Tomcat-ReplicationController --------------------------> 2
spec:
replicas: 3 ------------------------> 3
template:
metadata:
name: Tomcat-ReplicationController
labels:
app: App
component: neo4j
spec:
containers:
- name: Tomcat- -----------------------> 4
image: tomcat: 8.0
ports:
- containerPort: 7474 ------------------------> 5
Detalles de configuración
Kind: ReplicationController → En el código anterior, hemos definido el tipo como controlador de replicación que le dice al kubectl que el yaml el archivo se utilizará para crear el controlador de replicación.
name: Tomcat-ReplicationController→ Esto ayuda a identificar el nombre con el que se creará el controlador de replicación. Si ejecutamos el kubctl, obtenemosrc < Tomcat-ReplicationController > mostrará los detalles del controlador de replicación.
replicas: 3 → Esto ayuda al controlador de replicación a comprender que necesita mantener tres réplicas de un pod en cualquier momento del ciclo de vida del pod.
name: Tomcat → En la sección de especificaciones, hemos definido el nombre como tomcat que le dirá al controlador de replicación que el contenedor presente dentro de los pods es tomcat.
containerPort: 7474 → Ayuda a asegurarse de que todos los nodos del clúster donde el pod está ejecutando el contenedor dentro del pod estarán expuestos en el mismo puerto 7474.
Aquí, el servicio de Kubernetes funciona como un equilibrador de carga para tres réplicas de Tomcat.