Jump to section

¿Qué es etcd?

Copiar URL

El etcd (que se pronuncia e-te-ce-de) es un almacén de clave-valor open source, distribuido y uniforme que permite la configuración compartida, la detección de servicios y la coordinación del programador de clústeres o sistemas distribuidos de máquinas. Facilita la ejecución de actualizaciones automáticas de forma más segura, coordina el trabajo que se programa para los hosts e interviene en la configuración de las redes superpuestas para los contenedores.

El etcd es el elemento principal de muchos otros proyectos. En particular, es el almacén de datos más importante de Kubernetes, el sistema estándar para la organización de contenedores. Al usar etcd, las aplicaciones nativas de la nube pueden mantener un tiempo de actividad más uniforme sin dejar de funcionar, incluso si se producen fallas en los servidores individuales. Las aplicaciones leen los datos del etcd y los escriben en él, y este distribuye los datos de la configuración para brindar constancia y resistencia a la configuración de los nodos.

Dado que etcd es el almacén de datos más importante de Kubernetes, almacena y replica todos los estados de los clústeres de Kubernetes. Se trata de un elemento fundamental de los clústeres de Kubernetes, por eso es importante que se pueda configurar y gestionar de manera confiable.

Debido a que el etcd es un sistema distribuido basado en el consenso, la configuración de clústeres de etcd puede ser compleja. Las tareas difíciles y tediosas de inicio, mantenimiento del quorum, reconfiguración de la membresía del clúster, creación de backups, gestión de la recuperación ante desastres y supervisión de los eventos importantes deben estar a cargo de especialistas.

Todas ellas se simplifican cuando se utiliza un Operador de etcd.

El uso del Operador, el cual representa el conocimiento operativo de las personas, facilita la implementación de etcd en Kubernetes o en una plataforma de contenedores de Kubernetes, como Red Hat OpenShift. El Operador de etcd gestiona el etcd dentro del Marco del operador y permite simplificar la configuración y la gestión del clúster de etcd.

El Operador de etcd se instala con un solo comando y permite que los usuarios configuren y gestionen las complejidades de etcd a través de una configuración declarativa simple que crea, configura y gestiona los clústeres de etcd.

Ofrece las siguientes funciones:

  • Crear/Destruir: en lugar de tener que especificar la configuración para cada miembro de etcd, los usuarios solo deben indicar el tamaño del clúster.
  • Modificar el tamaño: basta con que los usuarios modifiquen el tamaño en las especificaciones, y el operador etcd se encargará de implementar, destruir o volver a configurar los miembros del clúster.
  • Backup: el Operador de etcd hace el backup de forma automática y transparente. Los usuarios solo deben indicar la política de backup. Por ejemplo: Hacer backups cada 30 minutos y conservar los últimos tres.
  • Actualización: es fundamental actualizar el etcd sin downtime, pero no es sencillo. Sin embargo, el Operador de etcd no solo simplifica las operaciones, sino que también evita los errores frecuentes de actualización.

El Operador de etcd simula el comportamiento de los operadores humanos en tres pasos: la observación, el análisis y la acción.

  1. Primero, observa el estado actual del clúster con la API de Kubernetes.
  2. Luego, identifica las diferencias entre el estado esperado y el estado actual.
  3. Por último, corrige las diferencias con una de las API de gestión del clúster de etcd, o ambas, o por medio de la API de Kubernetes.

Desde que el equipo de CoreOS creó etcd en 2013, los ingenieros de Red Hat se encargan de su mantenimiento junto con un equipo de colegas del sector.

En 2018, el equipo de CoreOS y Red Hat le entregaron el proyecto comunitario de etcd a la fundación Cloud Native Computing Foundation (CNCF), la cual no depende de ningún proveedor y forma parte de The Linux Foundation para fomentar la adopción de sistemas diseñados en la nube. Dado que todos los clústeres de Kubernetes utilizan etcd, esta medida acerca el etcd a la comunidad que más lo usa en la CNCF.

Red Hat planea seguir participando en el desarrollo de etcd, en especial como parte de nuestro producto de Kubernetes empresarial, Red Hat OpenShift. Red Hat también fue una de las primeras empresas que colaboró con el lanzamiento de la CNCF en 2015 y, desde entonces, trabaja junto a la fundación y la comunidad en el desarrollo y la evolución de las tecnologías nativas de la nube. Con nuestra experiencia y dedicación al software open source y el desarrollo impulsado por la comunidad, dentro de CNCF, etcd puede beneficiar aún más a todos.

Artículos relacionados

ARTÍCULO

Diferencias entre los contenedores y las máquinas virtuales

Las máquinas virtuales (VM) y los contenedores de Linux son entornos informáticos empaquetados que combinan varios elementos de TI y los aíslan del resto del sistema.

ARTÍCULO

¿Qué es la organización de los contenedores?

La organización en contenedores automatiza la implementación, la gestión, la escalabilidad y la conexión en red de los contenedores.

ARTÍCULO

¿Qué es un contenedor de Linux?

Un contenedor de Linux es un conjunto de procesos separados del resto del sistema, los cuales pueden ejecutarse desde una imagen diferente que proporciona todos los archivos necesarios para que funcionen.

Más información sobre los contenedores

Productos

Plataforma de aplicaciones empresariales que ofrece servicios probados para lanzar aplicaciones al mercado en la infraestructura que usted escoja.

Contenido adicional

Ebook

Los seis aspectos más importantes a tener en cuenta a la hora de seleccionar una plataforma de Kubernetes

PODCAST

Command Line Heroes Temporada 1, Episodio 5:

El Derby de los Containers

Capacitación

Curso de capacitación gratuito

Running Containers with Red Hat Technical Overview

Curso de capacitación gratuito

Containers, Kubernetes and Red Hat OpenShift Technical Overview

Curso de capacitación gratuito

Developing Cloud-Native Applications with Microservices Architectures