Обзор сервиса
- Системный пользователь:
etcd - Имя узла по умолчанию: генерируется автоматически
etcd-<timestamp> - Файл конфигурации:
/etc/etcd/etcd.yml - Директория данных:
/var/lib/etcd - Бинарные файлы:
/usr/local/bin/etcd,/usr/local/bin/etcdctl, и/usr/local/bin/etcdutl - Уровень логирования:
debug
Сеть и порты
- Клиентский трафик:
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.
- Для production-окружения включите TLS для клиентского и межузлового взаимодействия.
- Рекомендуется настроить многоузловой кластер для обеспечения высокой доступности.
- Ограничьте доступ к портам 2379 (клиент) и 2380 (peer) только для доверенных хостов с помощью правил брандмауэра.
- Измените
/etc/etcd/etcd.ymlдля расширенной настройки и перезапуститеetcdсервис, чтобы применить изменения. - Всегда делайте резервную копию данных перед выполнением деструктивных операций (удаление/восстановление/сжатие).
- Убедитесь, что
/var/lib/etcdпринадлежитetcd:etcd; неверные права доступа могут помешать запуску etcd после восстановления или изменения данных.