Установка Cron
Описание
Для YTsaurus есть набор cron-задач, которые полезны при эксплуатации кластера, таких как очистка временных директорий или удаление неактивных нод. Поддерживаются как встроенные, так и пользовательские задачи.
Список встроенных скриптов:
clear_tmp
- скрипт, который очищает временные файлы на кластере. Код скрипта живет здесь.prune_offline_cluster_nodes
- скрипт, который удаляет из Кипариса offline ноды. Код скрипта живет здесь.
Предварительные требования
На данном этапе у вас должны быть:
- Helm 3.x
- запущенный кластер YTsaurus и адрес HTTP прокси (
http_proxy
); - специальный пользователь-робот для Cron с выписанным для него токеном (см. раздел Управление токенами).
Базовая установка
helm install ytsaurus-cron oci://ghcr.io/ytsaurus/cron-chart \
--version 0.0.2 \
--set yt.proxy="http_proxy" \
--set yt.token="<ROBOT-CRON-TOKEN>" \
--set image.tag="0.0.2"
Конфигурация
Все параметры чарта можно задать через values.yaml
или с помощью --set
в командной строке.
Аутентификация в YTsaurus
Укажите токен напрямую:
yt:
proxy: yt.company.com
token: Qwerty123!
Или настройте использование Kubernetes-секрета:
unmanagedSecret:
enabled: true
secretKeyRef:
name: ytadminsec
key: token
jobs
)
Встроенные задачи (Каждая задача задаётся структурой:
name
: Уникальное имя задачиenabled
: Включена ли задачаargs
: Аргументы командной строкиschedule
: Расписание в формате cronrestartPolicy
: Политика перезапуска (рекомендуетсяNever
)
Пример включения задачи:
helm upgrade --install ytsaurus-cron oci://ghcr.io/ytsaurus/cron-chart \
--version 0.0.2 \
--set jobs[1].enabled=true \
--set jobs[1].args[5]="tmp_files"
Индексация массива jobs
идёт с нуля — следите за порядком задач.
Пользовательские задачи
Можно определить собственные задачи:
additionalJobs:
- name: my_cleanup
enabled: true
args:
- clear_tmp
- --directory "//my/custom/path"
schedule: "0 */6 * * *"
restartPolicy: Never
values.yaml
Пример yt:
proxy: yt.mycompany.com
token: my-secret-token
jobs:
- name: clear_tmp_files
enabled: true
args:
- clear_tmp
- --directory "//tmp/yt_wrapper/file_storage"
- --account "tmp_files"
schedule: "*/30 * * * *"
restartPolicy: Never
unmanagedSecret:
enabled: false
Запуск:
helm upgrade --install ytsaurus-cron oci://ghcr.io/ytsaurus/cron-chart \
--version 0.0.2 \
-f my-values.yaml
Часто используемые параметры
Параметр | Описание |
---|---|
yt.proxy |
HTTP-прокси для доступа к YTsaurus |
yt.token |
Токен доступа (если unmanagedSecret отключён) |
unmanagedSecret |
Использовать Kubernetes-секрет |
image.repository |
Образ Docker |
image.tag |
Тег образа |
schedule |
Расписание по умолчанию (если не указано в job) |
concurrencyPolicy |
Allow , Forbid , или Replace |
successfulJobsHistoryLimit |
Сколько успешных задач хранить |
failedJobsHistoryLimit |
Сколько неудачных задач хранить |
Предыдущая
Следующая