Руководства по переходу для DynaKube apiVersions

Материал из Документация Ключ-АСТРОМ
Версия от 14:34, 15 ноября 2025; IKuznetsov (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)

Обзор

В зависимости от версии Ключ-АСТРОМ Operator поддерживаются разные версии apiVersion. На этой странице собраны руководства по переходу DynaKubeapiVersion для каждой версии Operator.

Обзор версии API

Версия API DynaKube Введено Устарело Удалено
v1beta5 1.6.0
v1beta4 1.5.0
v1beta3 1.3.0 1.6.0
v1beta2 1.2.0 1.6.0 1.7.0
v1beta1 0.3.0 1.6.0 1.7.0

Стратегия преобразования

Автоматическое преобразование

Каждая версия Ключ-АСТРОМ Operator преобразует развернутые DynaKubes с более старой версией API в последнюю версию apiVersion, поддерживаемую этой версией Ключ-АСТРОМ Operator.

  • Пример: Ключ-АСТРОМ Operator v1.6.x всегда будет конвертировать DynaKubes в v1beta5.

Таким образом, при проверке kubectl используемого вами кода apiVersion вы всегда увидите последнюю версию apiVersion, поддерживаемую данной версией Ключ-АСТРОМ Operator. Вы можете воспользоваться этим механизмом вместо ручного преобразования.

  1. Загрузите конвертированную версию DynaKube. Следующая команда вернет вам DynaKube, конвертированный в последнюю поддерживаемую версию apiVersion:
    • kubectl get dynakubes -n <namespace> <dynakube-name> -o yaml
  2. Очистите загруженный DynaKube, оставив только эти разделы.
    • соответствующие части раздела .metadata
    • полный раздел .spec

Ручное преобразование

1. Сначала проверьте текущую версию Operator. Если вы не знаете, какая версия у вас установлена, вот несколько способов узнать её.

Использование Helm:

  • Используйте команду helm list, в поле будет указана версия APP VERSION установленного Ключ-АСТРОМ Operator.
    • Пример:
> helm list -n astromkey -o json | jq -r '.[].app_version'`

1.6.2

С использованием kubectl:

  • На развертывании Ключ-АСТРОМ Operator имеется метка app.kubernetes.io/version, на которой указана используемая версия.
    • Пример:
> kubectl get deployment astromkey-operator -n astromkey -o jsonpath='{.metadata.labels.app\.kubernetes\.io/version}'

1.6.2

2. Затем проверьте используемые данные apiVersion и следуйте руководству по переходу DynaKube, приведенному выше.

Процесс устаревания

Ключ-АСТРОМ Operator следует структурированному процессу устаревания, чтобы обеспечить плавный переход между версиями API DynaKube и предоставить достаточно времени для перехода.

Фаза 1: Объявление об устаревании

Уведомление о предварительном прекращении поддержки: в примечаниях к выпуску размещено объявление о том, что по крайней мере один выпуск Ключ-АСТРОМ Operator должен состояться до того, как прекращение поддержки вступит в силу.

Маркировка устаревших версий: версия API официально отмечена как устаревшая в последующем выпуске, но остается полностью функциональной и поддерживаемой.

Этап 2: Поддерживаемый период устаревания

Продолжение поддержки: устаревшая версия API продолжает полностью поддерживаться и функционировать в течение периода устаревания.

Поощрение миграции: Пользователям настоятельно рекомендуется перейти на новую версию API в течение этого времени, используя предоставленные руководства по миграции.

Автоматическое преобразование: Ключ-АСТРОМ Operator автоматически преобразует устаревшие версии API в последнюю поддерживаемую версию в фоновом режиме, обеспечивая совместимость.

Фаза 3: Подготовка к удалению

Обслуживание API отключено: после окончания периода поддержки устаревшая версия API помечается как served: false в определении пользовательских ресурсов (CRD).

Режим «только преобразование»: схема версии API сохраняется в CRD только для целей преобразования, что позволяет читать и преобразовывать существующие ресурсы.

Крайний срок миграции: пользователи должны завершить миграцию на новую версию API до начала этого этапа, чтобы обеспечить дальнейшую функциональность своих ресурсов DynaKube.

Фаза 4: Полное удаление

Удаление схемы: устаревшая версия схемы API будет полностью удалена из CRD в будущем выпуске Operator.

Нет поддержки преобразования: после удаления поддержка преобразования и совместимости для устаревшей версии API недоступна.

Рекомендации по срокам переноса

  • Немедленное действие: планируйте миграцию сразу после объявления об отмене поддержки.
  • Период тестирования: используйте период устаревания для тестирования миграции в непроизводственных средах.
  • Миграция производства: завершите миграцию производства задолго до отключения обслуживания API.
  • Проверка: убедитесь, что все ресурсы DynaKube используют текущую версию API после миграции.