Descripción del servicio
- Usuario del sistema:
etcd - Nombre de nodo por defecto: generado automáticamente
etcd-<timestamp> - Archivo de configuración:
/etc/etcd/etcd.yml - Directorio de datos:
/var/lib/etcd - Binarios:
/usr/local/bin/etcd,/usr/local/bin/etcdctl, y/usr/local/bin/etcdutl - Nivel de log:
debug
Red y puertos
- Tráfico de clientes:
http://localhost:2379 - Tráfico entre nodos:
http://localhost:2380 - Solo acceso local por defecto (enlaza a localhost)
Gestión con Systemd
systemctl status etcd # Check status
systemctl restart etcd # Start service
systemctl stop etcd # Stop service
systemctl restart etcd # Restart service
Comandos básicos
# Check etcd server version
etcd --version
# Check etcdctl client version
etcdctl version
# Check etcdutl version
etcdutl version
# Set a key
etcdctl put mykey "HelloEtcd"
# Get a key
etcdctl get mykey
# List all keys with values
etcdctl get "" --prefix
# List only key names
etcdctl get "" --prefix --keys-only
# Delete a key
etcdctl del mykey
# Check cluster health
etcdctl endpoint health
# List cluster members
etcdctl --endpoints=http://127.0.0.1:2379 member list
# Show cluster leader
etcdctl endpoint status --write-out=table
# Watch a key for changes
etcdctl watch mykey
Copia de seguridad y restauración
Hacer una instantánea de seguridad (guarda el estado actual de etcd en un archivo):
etcdctl snapshot save /root/etcd-backup.db
Comprobar el estado de la instantánea:
etcdutl snapshot status /root/etcd-backup.db -w table
Detener el servicio etcd para evitar conflictos:
systemctl stop etcd
Eliminar el contenido existente del directorio de datos:
rm -rf /var/lib/etcd/*
Restaurar la instantánea:
etcdutl snapshot restore /root/etcd-backup.db --data-dir /var/lib/etcd
Verificar que los permisos son correctos:
chown -R etcd:etcd /var/lib/etcd
Iniciar el servicio etcd de nuevo:
systemctl start etcd
Notas
- Clúster de un solo nodo por defecto, adecuado para desarrollo y pruebas.
- Configurado con nivel de log de depuración.
- En producción, habilita TLS para la comunicación entre clientes y nodos.
- Considera configurar un clúster multinodo para alta disponibilidad.
- Restringe los puertos 2379 (cliente) y 2380 (par) a hosts de confianza mediante reglas de cortafuegos.
- Modifica
/etc/etcd/etcd.ymlpara configuración avanzada y reinicia eletcdservicio para aplicar los cambios. - Haz siempre una copia de seguridad antes de realizar operaciones destructivas (eliminar/restaurar/compactar).
- Asegúrate de que
/var/lib/etcdpertenece aetcd:etcd; los permisos incorrectos pueden impedir que etcd arranque tras restauraciones o cambios de datos.