etcd

Kritik sistem yapılandırmaları ve veriler için dağıtık, güvenilir bir anahtar-değer deposu.

Hizmetlere Genel Bakış

  • Sistem kullanıcısı: etcd
  • Varsayılan düğüm adı: otomatik olarak oluşturulur etcd-<timestamp>
  • Yapılandırma dosyası: /etc/etcd/etcd.yml
  • Veri dizini: /var/lib/etcd
  • İkili dosyalar: /usr/local/bin/etcd, /usr/local/bin/etcdctlve /usr/local/bin/etcdutl
  • Günlük seviyesi: debug

Ağ ve Bağlantı Noktaları

  • Müşteri trafiği: http://localhost:2379
  • Eşler arası trafik: http://localhost:2380
  • Varsayılan olarak yalnızca yerel erişim (localhost'a bağlanır)

Systemd Yönetimi

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

Temel Komutlar

# 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

Yedekleme ve Geri Yükleme

Bir anlık görüntüyü yedekle (etcd'nin mevcut durumunu bir dosyaya kaydet):

etcdctl snapshot save /root/etcd-backup.db

Anlık durumunu kontrol et:

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

Çakışmaları önlemek için etcd hizmetini durdurun:

systemctl stop etcd

Veri dizinindeki mevcut içeriği silin:

rm -rf /var/lib/etcd/*

Anlık görüntüyü geri yükle:

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

İzinlerin doğru olduğundan emin olun:

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

etcd hizmetini yeniden başlatın:

systemctl start etcd

Notlar

  • Varsayılan olarak tek düğümlü küme; geliştirme ve test amaçlı kullanım için uygundur.
  • Hata ayıklama günlüğü düzeyinde yapılandırılmıştır.
  • Üretim ortamında, istemci ve eşler arası iletişim için TLS'yi etkinleştirin.
  • Yüksek kullanılabilirlik için çok düğümlü bir küme kurmayı düşünün.
  • Güvenilir ana bilgisayarlarla sınırlı olacak şekilde, güvenlik duvarı kuralları aracılığıyla 2379 (istemci) ve 2380 (eş) numaralı bağlantı noktalarını kısıtlayın.
  • Değiştir /etc/etcd/etcd.yml gelişmiş ayarlar için ve yeniden başlatmak üzere etcd değişiklikleri uygulamak için.
  • Kalıcı değişiklikler (silme/geri yükleme/sıkıştırma) yapmadan önce daima verilerinizi yedekleyin.
  • Emin olun /var/lib/etcd şirketin sahibi etcd:etcd; yetki ayarlarının yanlış olması, geri yükleme işlemlerinden veya veri değişikliklerinden sonra etcd'nin başlatılmasını engelleyebilir.

Başvuru Detayları