50% di sconto tutti i piani, offerta a tempo limitato. A partire da $2.48/mo
etcd

etcd

etcd è un archivio distribuito chiave-valore. Il nucleo di Kubernetes, Consul e CoreOS, progettato per garantire il consenso distribuito tra macchine tramite il protocollo Raft. Open-source, scritto in Go, è la scelta di riferimento per il service discovery e la configurazione distribuita.

Versione

v3.6.9

Sistema Operativo

Server Ubuntu 24.04 LTS

RAM minimo

1 GB

Tipi IP

IPV4,IPV6

Panoramica del Servizio

  • Utente di sistema etcd
  • Nome nodo predefinito: generato automaticamente etcd-<timestamp>
  • File di configurazione: /etc/etcd/etcd.yml
  • Cartella dati: /var/lib/etcd
  • Binari: /usr/local/bin/etcd, /usr/local/bin/etcdctl, e /usr/local/bin/etcdutl
  • Livello di log: debug

Rete e Porte

  • Traffico client: http://localhost:2379
  • Traffico peer-to-peer: http://localhost:2380
  • Accesso solo locale per impostazione predefinita (bind su localhost)

Gestione Systemd

systemctl status etcd         # Check status
systemctl restart etcd        # Start service
systemctl stop etcd           # Stop service
systemctl restart etcd        # Restart service

Comandi Base

# 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

Backup e ripristino

Esegui il backup di uno snapshot (salva lo stato attuale di etcd su file):

etcdctl snapshot save /root/etcd-backup.db

Controlla lo stato dello snapshot:

etcdutl snapshot status /root/etcd-backup.db -w table

Arresta il servizio etcd per evitare conflitti:

systemctl stop etcd

Rimuovi il contenuto esistente dalla directory dei dati:

rm -rf /var/lib/etcd/*

Ripristina lo snapshot:

etcdutl snapshot restore /root/etcd-backup.db --data-dir /var/lib/etcd

Verifica che i permessi siano corretti:

chown -R etcd:etcd /var/lib/etcd

Riavvia il servizio etcd:

systemctl start etcd

Note

  • Cluster a nodo singolo per impostazione predefinita, adatto a sviluppo e test.
  • Configurato con livello di log debug.
  • In produzione, abilita TLS per la comunicazione client e peer.
  • Valuta di configurare un cluster multi-nodo per l'alta disponibilità.
  • Limita le porte 2379 (client) e 2380 (peer) agli host attendibili tramite regole firewall.
  • Modifica /etc/etcd/etcd.yml per la configurazione avanzata e riavvia il etcd servizio per applicare le modifiche.
  • Esegui sempre un backup dei dati prima di operazioni distruttive (eliminazione, ripristino, compattazione).
  • Assicurati /var/lib/etcd è di proprietà di etcd:etcd; permessi errati possono impedire l'avvio di etcd dopo ripristini o modifiche ai dati.

Altri strumenti per database

App correlate.

Distribuisci etcd ora. A partire da $2,48/mese.