Ключевые функции в сравнении с iml - время создания снапшотов и индексов зашивается в конец их названия, сами снапшоты и индексы формируются логстешом. Политика ротации настраивается в одном месте конфигом. В конфиге прописываются для каждого интересующего нас префикса своя политика - сколько дней храним в кластере и сколько дней храним снапшоты каждого дня. Все индексы которые не попали в паттерны - управляются политикой unknown. Все делается кронджобами.
Фактически это замена curator с только нужными нам функциями.
Также есть ряд команд, которые решают специфичные проблемы - такие как вычисление оптимального числа шардов или автосоздание индекспаттернов.
По-умолчанию предполагается использование config.yaml в котором описаны параметры запуска и запуск через кронджобы с указанием команды.
Все, что указано в конфгиах можно переопределять через флаги и переменные, а также все команды поддерживают --dry-run.
| Команда | Назначение |
|---|---|
snapshots |
Создание снапшотов согласно политикам в конфиге |
snapshotsdelete |
Удаление снапшотов согласно политикам в конфиге |
indicesdelete |
Удаление индексов согласно политикам в конфиге |
snapshotschecker |
Нахождение отсутствующих снапшотов |
retention |
Удаление индексов со снапшотами при превышении некоторого порога |
dereplicator |
Уменьшение числа реплик у индексов со снапшотами |
coldstorage |
Миграция в холодное хранилище при превышении числа дней |
extracteddelete |
Удаление extracted индексов |
danglingchecker |
Проверка dangling индексов |
sharding |
Автоматическое выставление оптимального числа шардов |
indexpatterns |
Управление index patterns в Kibana |
datasource |
Создание Kibana data-source ( рековерер) |
| `snapshot-manual | Создание только одного снапшота для индексов с определенным паттерном |
Пример в config.yaml
Пример в config-example/osctlindicesconfig.yaml
Пример в config-example/osctltenants.yaml
- Флаги командной строки (наибольший приоритет)
- Переменные окружения
- Общий конфиг (
config.yaml) - Значения по умолчанию (наименьший приоритет)
- ENVIRONMENT_VARIABLES_AND_FLAGS.md - Полный список всех флагов и переменных окружения
- ARCHITECTURE.md - Подробные алгоритмы и архитектура приложения
- DEVELOPMENT.md - Как вносить изменения и тестировать
- Справка:
osctl [команда] --help