Параметры конфигурации
etcd можно настроить следующими способами:
- Флаги командной строки
- Переменные окружения: каждому флагу соответствует переменная окружения
с тем же именем, префиксом
ETCD_, прописными буквами и форматом snake case . Например,--some-flagсоответствуетETCD_SOME_FLAG. - Файл конфигурации
Внимание: при сочетании разных способов конфигурации действуют следующие правила.
- Флаги командной строки имеют приоритет над переменными окружения.
- Если указан файл конфигурации, все флаги командной строки и переменные окружения игнорируются.
Флаги командной строки
Ниже флаги представлены в формате --flag-name DEFAULT_VALUE.
В этом импортированном справочнике сохранены некоторые устаревшие параметры v2 для миграции. В etcd 3.7 флаг --enable-v2 и режим прокси v2 недоступны. Устаревший флаг --v2-deprecation игнорирует введённое значение и использует значение по умолчанию. Перед использованием устаревших параметров сверяйтесь с etcd --help установленной версии.
Из-за продолжающейся разработки приведённый ниже список флагов может быть неактуален. Последние доступные флаги можно получить командой etcd --help или в [справке etcd][].
Примечание: сведения о новых, обновлённых и устаревших флагах v3.7 приведены в CHANGELOG-3.7.md .
Участник
Кластеризация
Безопасность
Аутентификация
Профилирование и мониторинг
Ведение журнала
Примечание: в v3.7 несколько флагов --experimental-* стали стабильными или были переименованы.
Обязательно замените устаревшие флаги перечисленными ниже стабильными эквивалентами.
Распределённая трассировка
Прокси v2
Прокси v2 удалён до v3.7. Следующие флаги сохранены только как исторический справочник по миграции и не должны передаваться серверу etcd v3.7.
Возможности
Флаги функций
Небезопасные возможности
Предупреждение: использование небезопасных возможностей может нарушить гарантии протокола консенсуса!
Файл конфигурации
Файл конфигурации 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-минутный интервал уведомлений о ходе наблюдения: