Skip to content

Обновление чарта

Обновление на новую версию

⚠️ Важно:

  1. При обновлении на новую версию чарта могут измениться стандартные значения параметров (values по умолчанию). Для корректного обновления рекомендуется использовать файл с вашими настройками, чтобы Helm мог применить новые значения по умолчанию из чарта и переопределить их вашими кастомными значениями.

  2. Резервное копирование PostgreSQL: Перед обновлением убедитесь, что у вас настроено резервное копирование базы данных. Если обновление пройдет неудачно и вам потребуется откат, вам нужно будет восстановить базу данных из резервной копии, соответствующей предыдущей версии приложения (см. раздел Откат версии чарта).

Рекомендуемый способ обновления (с файлом values)

⚠️ Важно: Перед обновлением убедитесь, что у вас есть файл с вашими настройками (файл оверрайдов). Если у вас нет такого файла, создайте его:

# Экспортируйте текущие значения релиза
helm get values $RELEASE_NAME -n $RELEASE_NAMESPACE -o yaml > my-values.yaml

Шаг 1. Обновите чарт из удалённого репозитория (рекомендуемый способ):

helm upgrade $RELEASE_NAME oci://registry.hexway.io/charts/vampy \
  --version $RELEASE_VERSION \
  -n $RELEASE_NAMESPACE \
  --reset-values \
  -f my-values.yaml

Флаг --reset-values гарантирует, что все значения, не указанные в my-values.yaml, будут взяты из новой версии чарта (новые значения по умолчанию), а не сохранены из текущей установки.

Альтернативный способ (если нужно скачать чарт локально):

Если вам нужно посмотреть изменения в чарте перед обновлением:

helm pull oci://registry.hexway.io/charts/vampy --version $RELEASE_VERSION --untar
cd vampy
# Просмотрите изменения в чарте
helm upgrade $RELEASE_NAME . \
  -n $RELEASE_NAMESPACE \
  --reset-values \
  -f my-values.yaml

Проверка изменений перед обновлением (dry-run)

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

Выполните команду с флагами --dry-run --debug:

helm upgrade $RELEASE_NAME oci://registry.hexway.io/charts/vampy \
  --version $RELEASE_VERSION \
  -n $RELEASE_NAMESPACE \
  --reset-values \
  -f my-values.yaml \
  --dry-run --debug

Команда --dry-run --debug покажет:

  • Все манифесты, которые будут созданы/обновлены
  • Изменения в конфигурации
  • Новые значения по умолчанию из чарта

Обновление только конфигурации (без изменения версии чарта)

Если вам нужно изменить только параметры конфигурации без обновления версии чарта, используйте один из способов ниже:

Способ 1: Использовать текущую версию чарта

Сначала узнайте текущую версию установленного чарта:

helm list -n $RELEASE_NAMESPACE

Затем обновите конфигурацию, явно указав текущую версию:

helm upgrade $RELEASE_NAME oci://registry.hexway.io/charts/vampy \
  --version $RELEASE_VERSION \
  -n $RELEASE_NAMESPACE \
  -f my-new-values.yaml

⚠️ Важно: Если не указать --version при использовании удалённого репозитория (oci://), Helm автоматически обновит чарт до последней доступной версии, что может привести к нежелательным изменениям.

Способ 2: Использовать локальный чарт

Если вы скачали чарт локально для просмотра:

helm pull oci://registry.hexway.io/charts/vampy --version $RELEASE_VERSION --untar
cd vampy
helm upgrade $RELEASE_NAME . \
  -n $RELEASE_NAMESPACE \
  -f my-new-values.yaml

Мониторинг процесса обновления

После запуска обновления отслеживайте статус подов:

# Наблюдение за обновлением подов в реальном времени
kubectl get pods -n $RELEASE_NAMESPACE -w

# Проверка статуса обновления
helm status $RELEASE_NAME -n $RELEASE_NAMESPACE

# Просмотр логов конкретного пода
kubectl logs -n $RELEASE_NAMESPACE <pod-name> -f