Обновление Odin

Эта статья описывает процесс обновления Odin. Выполните обновление с помощью Helm.

Что важно знать перед обновлением

При обновлении Odin кластер YTsaurus продолжает работать в обычном режиме, вы можете выполнять все операции с данными.

Во время обновления Odin происходят следующие изменения

  • Кластер YTsaurus продолжает работать в штатном режиме;
  • Серверные компоненты YTsaurus не требуют перезапуска;
  • Доступ к данным через YTsaurus API сохраняется;
  • Проверки Odin могут временно быть недоступны во время обновления.

Доступные версии Odin и изменения в них описаны в релизах Odin.

Подготовка к обновлению

1. Проверить текущую версию Odin

Проверьте текущую версию Odin в Helm

helm list -n <namespace> | grep odin

Пример вывода

NAME            NAMESPACE   REVISION    UPDATED                                 STATUS      CHART           APP VERSION
odin            ytsaurus    1           2026-05-28 12:29:52.273705 +0300 MSK   deployed    odin-chart-0.0.7

2. Проверить состояние Odin

Проверьте, что поды Odin работают корректно

kubectl get pods,svc,deploy -n <namespace> | grep -i odin

Пример вывода

pod/odin-odin-chart-686c5bfbb5-t5c89                             1/1     Running            0             49s
pod/odin-odin-chart-web-75c78c8498-dzgv2                         1/1     Running            0             49s
service/odin-odin-chart-web              ClusterIP   10.100.248.191   <none>        9002/TCP         49s
deployment.apps/odin-odin-chart          1/1     1            1           49s
deployment.apps/odin-odin-chart-web      1/1     1            1           49s

3. Сохранить резервную копию конфигурации Odin

Сохраните текущую конфигурацию Odin

helm get values odin -n <namespace> -o yaml > odin-backup.yaml

Обновление Odin

Выполняйте обновление до целевой версии.

1. Получить текущую конфигурацию Odin

Получите текущую конфигурацию Odin

helm get values odin -n <namespace> -o yaml > odin-values.yaml

2. Обновить Odin до новой версии

Обновите Odin до новой версии

helm upgrade odin oci://ghcr.io/ytsaurus/odin-chart \
  --version <new-version> \
  -f odin-values.yaml \
  -n <namespace>

Пример обновления

helm upgrade odin oci://ghcr.io/ytsaurus/odin-chart \
  --version 0.0.9 \
  -f odin-values.yaml \
  -n ytsaurus

3. Следить за обновлением

Следите за состоянием Odin во время обновления

helm status odin -n <namespace>

4. Проверить результат

Проверьте, что Odin успешно обновился

helm list -n <namespace> | grep odin

Пример вывода

NAME            NAMESPACE   REVISION    UPDATED                                 STATUS      CHART           APP VERSION
odin            ytsaurus    2           2026-05-28 12:42:06.910572 +0300 MSK   deployed    odin-chart-0.0.9

Проверьте версию чарта

helm history odin -n <namespace>

Пример вывода

REVISION	UPDATED                 	STATUS    	CHART           	APP VERSION	DESCRIPTION
1       	Thu May 28 12:29:52 2026	superseded	odin-chart-0.0.7	           	Install complete
2       	Thu May 28 12:42:06 2026	deployed  	odin-chart-0.0.9	           	Upgrade complete

Проверьте состояние подов после обновления

kubectl get pods,svc,deploy -n <namespace> | grep -i odin

Пример вывода

pod/odin-odin-chart-556fcb9db7-5fs75                             1/1     Running            0             4m20s
pod/odin-odin-chart-web-66bf9849dd-pvgrk                         1/1     Running            0             4m20s
service/odin-odin-chart-web              ClusterIP   10.100.248.191   <none>        9002/TCP         15m
deployment.apps/odin-odin-chart          1/1     1            1           15m
deployment.apps/odin-odin-chart-web      1/1     1            1           15m

Откат на предыдущую версию

Выполните откат Odin на предыдущую версию без потери данных.

Шаги для отката

  1. Проверьте историю обновлений
helm history odin -n <namespace>

Пример вывода

REVISION	UPDATED                 	STATUS    	CHART           	APP VERSION	DESCRIPTION
1       	Thu May 28 12:29:52 2026	superseded	odin-chart-0.0.7	           	Install complete
2       	Thu May 28 12:42:06 2026	deployed  	odin-chart-0.0.9	           	Upgrade complete
  1. Откатитесь на предыдущую версию
helm rollback odin -n <namespace>

Пример вывода

Rollback was a success! Happy Helming!
  1. Проверьте результат
helm list -n <namespace> | grep odin

Пример вывода

NAME            NAMESPACE   REVISION    UPDATED                                 STATUS      CHART           APP VERSION
odin            ytsaurus    3           2026-05-28 13:11:01.812794 +0300 MSK   deployed    odin-chart-0.0.7
  1. Проверьте состояние подов
kubectl get pods -n <namespace> | grep odin

Пример вывода

odin-odin-chart-686c5bfbb5-txx2k                             1/1     Running            0             2m3s
odin-odin-chart-web-75c78c8498-2xkz9                         1/1     Running            0             2m3s

Примечание

При откате Helm автоматически создаёт новые поды с предыдущей версией чарта, а старые поды удаляются. Odin успешно запускается и выполняет проверки после отката.

Управление историей релизов

Helm хранит историю всех обновлений релиза, что позволяет откатываться на предыдущие версии. История релизов не занимает ресурсы в кластере и хранится в Kubernetes Secrets.

Просмотр истории

helm history odin -n <namespace>

Очистка истории

Если вы уверены, что не будете откатываться на старые версии, вы можете очистить историю релизов.

Внимание

Очистка истории релизов необратима. После удаления истории вы не сможете откатиться на предыдущие версии.

Для очистки истории удалите и переустановите релиз

helm get values odin -n <namespace> -o yaml > odin-values.yaml
helm uninstall odin -n <namespace>
helm install odin oci://ghcr.io/ytsaurus/odin-chart \
  --version <version> \
  -f odin-values.yaml \
  -n <namespace>
Предыдущая
Следующая