Параметры конфигурации
etcd можно настроить следующими способами:
- Флаги командной строки
- Переменные окружения: каждому флагу соответствует переменная окружения
с тем же именем, префиксом
ETCD_, прописными буквами и форматом snake case . Например,--some-flagсоответствуетETCD_SOME_FLAG. - Файл конфигурации
Внимание: при сочетании разных способов конфигурации действуют следующие правила.
- Флаги командной строки имеют приоритет над переменными окружения.
- Если указан файл конфигурации, все флаги командной строки и переменные окружения игнорируются.
Флаги командной строки
Ниже флаги представлены в формате --flag-name DEFAULT_VALUE.
Из-за продолжающейся разработки приведённый ниже список флагов может быть неактуален. Последние доступные флаги можно получить командой etcd --help или в [справке etcd][].
Примечание: сведения о новых, обновлённых и устаревших флагах v3.7 приведены в CHANGELOG-3.7.md .
Участник
Кластеризация
Безопасность
Аутентификация
Профилирование и мониторинг
Ведение журнала
Примечание: в v3.7 несколько флагов --experimental-* стали стабильными или были переименованы.
Обязательно замените устаревшие флаги перечисленными ниже стабильными эквивалентами.
Распределённая трассировка
Прокси v2
Примечание: флаги будут объявлены устаревшими в v3.6.
Возможности
Флаги функций
Небезопасные возможности
Предупреждение: использование небезопасных возможностей может нарушить гарантии протокола консенсуса!
Файл конфигурации
Файл конфигурации etcd представляет собой отображение YAML, ключами которого
служат имена флагов командной строки, а значениями — значения флагов.
Чтобы использовать файл, укажите его путь как значение флага --config-file или переменной окружения ETCD_CONFIG_FILE.
Пример см. в [образце etcd.conf.yml][].
Поля длительности, такие как --grpc-keepalive-min-time, --grpc-keepalive-interval,
--grpc-keepalive-timeout, --backend-batch-interval, --corrupt-check-time,
--compact-hash-check-time, --compaction-sleep-interval,
--watch-progress-notify-interval, --warning-apply-duration,
--warning-unary-request-duration и --downgrade-check-time, при передаче как флаги
командной строки принимают понятные человеку строки (например, 10m, 5s), однако
в файле конфигурации допускаются только целые значения, представляющие
наносекунды. Это известное ограничение стандартной библиотеки Go
,
где time.Duration десериализуется как обычное целое число.
Например, чтобы задать в файле конфигурации 10-минутный интервал уведомлений о ходе наблюдения: