Огляд послуги
- Системний користувач
etcd - Ім'я вузла за замовчуванням: генерується автоматично
etcd-<timestamp> - Файл конфігурації:
/etc/etcd/etcd.yml - Директорія даних:
/var/lib/etcd - Двійкові файли:
/usr/local/bin/etcd,/usr/local/bin/etcdctl, і/usr/local/bin/etcdutl - Рівень логування:
debug
Мережа та портиhave
- Трафік клієнта:
http://localhost:2379 - Трафік між вузлами:
http://localhost:2380 - За замовчуванням доступ лише локально (прив'язується до localhost)
Керування systemd
systemctl status etcd # Check status
systemctl restart etcd # Start service
systemctl stop etcd # Stop service
systemctl restart etcd # Restart service
Базові команди
# 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
Резервне копіювання та відновлення
Створити знімок (зберегти поточний стан etcd у файл):
etcdctl snapshot save /root/etcd-backup.db
Перевірити статус знімка:
etcdutl snapshot status /root/etcd-backup.db -w table
Зупинити службу etcd, щоб уникнути конфліктів:
systemctl stop etcd
Очистити вміст каталогу даних:
rm -rf /var/lib/etcd/*
Відновити знімок:
etcdutl snapshot restore /root/etcd-backup.db --data-dir /var/lib/etcd
Перевірити правильність прав доступу:
chown -R etcd:etcd /var/lib/etcd
Запустити службу etcd знову:
systemctl start etcd
Нотатки
- За замовчуванням — однорядний кластер, придатний для розробки та тестування.
- Налаштовано рівень журналювання debug.
- Для продакшену увімкніть TLS для зв'язку між клієнтами та вузлами.
- Розгляньте налаштування багатовузлового кластера для забезпечення високої доступності.
- Обмежте доступ до портів 2379 (клієнт) і 2380 (вузол) лише довіреним хостам за допомогою правил брандмауера.
- Змінити
/etc/etcd/etcd.ymlдля розширеного налаштування та перезапустітьetcdслужбу, щоб застосувати зміни. - Завжди створюйте резервну копію даних перед деструктивними операціями (видалення / відновлення / стиснення).
- Переконайтеся
/var/lib/etcdналежитьetcd:etcd; некоректні права доступу можуть заблокувати запуск etcd після відновлення або зміни даних.