Для улучшения работы сайта мы используем файлы cookies. Оставаясь на сайте, вы соглашаетесь с политикой обработки персональных данных.

Обновление платформы в закрытом сетевом окружении. Обновление Nova Universe

В данном разделе предоставлены все необходимые шаги, чтобы корректно выполнить обновление сервера управления Nova Universe v3.x в вашей инфраструктуре. После обновления сервера управления сможете приступить к обновлению ваших кластеров Nova Container Platform.

Обновление Nova Universe выполняется в следующей последовательности:

  1. Обновление Nova Universe. В результате обновляется сам Nova Universe и базовый модуль платформы.

  2. Установка пакета репозитория базового модуля для целевого семейства операционных систем.

  3. Обновление установленных модулей платформы.

  4. Установка пакета репозитория для целевого семейства операционных систем, соответствующего модулю.

1. Предварительные условия

2. Подготовительный этап

В рамках перехода на новую версию платформы компоненты Nova (Neuvector, Velero, OpenSearch) переводятся под управление операторов. Это архитектурное изменение затрагивает способ применения Flux-кастомизаций для данных компонентов.

  1. Перед обновлением рекомендуется сохранить текущее состояние всех кастомизаций.

    Это важный шаг, поскольку если в ваших кастомизациях для компонентов OpenSearch, Neuvector или Data Protection (Velero) присутствуют дополнительные патчи — после обновления они не будут применены автоматически. Резервная копия позволит точно восстановить необходимые изменения в новой конфигурации без риска потери данных.

    Для сохранения выполните команду:

    kubectl get kustomization -A -o yaml > backup-kustomizations.yaml

    Файл backup-kustomizations.yaml будет создан в текущей директории.

  2. Скачайте обновление Nova Universe в директорию /opt/nova-universe/uploads на целевой ВМ.

    $ sudo wget --user=логин --password=пароль https://repo-nova-universe.orionsoft.ru/3.х.y/core/update/... -P /opt/nova-universe/uploads (1) (1)
    1 Логин и пароль для доступа в репозиторий предоставляется вашим аккаунт-менеджером.
  3. Перед тем как приступить к обновлению, убедитесь, что все сервисы функционируют штатно.

    $ universe info
    Пример вывода
    System initialized ✅
    
    Universe version: v3.1.2
    
    Public services and resources:
      CA certificate:             https://repo.universe.example.ru/ca/ca.crt
      Cluster Manager:            https://cluster-manager.universe.example.ru
      Universe API:               https://api.universe.example.ru
      Nova API:                   https://nova-api.universe.example.ru
      Git service:                https://hub.universe.example.ru
      Container registry:         https://hub.universe.example.ru
      Repository:                 https://repo.universe.example.ru
      Uploads service:            https://uploads.universe.example.ru
    
    Service status:
      K3s:                        ✅
      PostgreSQL:                 ✅
      Cluster Manager:            ✅
      Universe API:               ✅
      Nova API:                   ✅
      Git service:                ✅
      Container registry:         ✅
      Repository:                 ✅
      Uploads service:            ✅
    
    Parameters for Nova Container Platform:
      coreServer:                 sun.universe.example.ru
      hubRegistryURL:             hub.universe.example.ru/nova-universe
      hubToken:                   5894ffe36739070299aebea7b08dfba359d158eb
      hubUsername:                deploy-user
      repoToken:                  5894ffe36739070299aebea7b08dfba359d158eb
      repoURL:                    https://hub.universe.example.ru/nova-universe/container-platform-base.git
      rpmRepoURL:                 https://repo.universe.example.ru
    
    Nova Platform:
    ├── Core:                     ✅
    ├── Repository:
    │   ├── ALT Linux:            ❌ Not installed
    │   ├── AstraLinux:           ✅
    │   ├── Mosos:                ❌ Not installed
    │   ├── Redos:                ❌ Not installed
    │   ├── Rhel:                 ❌ Not installed
    │   └── Ubuntu:               ❌ Not installed
    └── Modules:
       └── Nova Ml:
            ├── Core:             ✅
            └── Repository:
                ├── AstraLinux:   ✅
                ├── Redos:        ❌ Not installed
                ├── Rhel:         ❌ Not installed
                └── Ubuntu:       ❌ Not installed

3. Обновление

  1. Запустите обновление:

    $ sudo universe update
    Пример вывода:
    System initialized ✅
    The update file must be located in the /opt/nova-universe/uploads directory
    Files found in the /opt/nova-universe/uploads directory:
    update-universe-bundle-v3.1.3-rev.xxxx.upd
  2. Укажите имя файла обновления.

    Enter the update file name [example: update-universe-bundle-v3.1.x-rev.xxxx.upd]: update-universe-bundle-v3.1.3-rev.xxxx.upd
  3. Подтвердите запуск процесса обновления:

    Please confirm to start the operation [default: yes]
  4. Дождитесь окончания процесса обновления.

    Preparing the system for update...
    [####################################################################################################] 100% ✓
    System preparation for update completed successfully ✅
    Updating the system...
    [####################################################################################################] 100% ✓
    System update completed successfully ✅

4. Проверка после обновления

После выполнения процедуры обновления убедитесь, что все сервисы функционируют штатно.

$ universe info
Пример вывода
System initialized ✅

Universe version: v3.1.3

Public services and resources:
  CA certificate:             https://repo.universe.example.ru/ca/ca.crt
  Cluster Manager:            https://cluster-manager.universe.example.ru
  Universe API:               https://api.universe.example.ru
  Nova API:                   https://nova-api.universe.example.ru
  Git service:                https://hub.universe.example.ru
  Container registry:         https://hub.universe.example.ru
  Repository:                 https://repo.universe.example.ru
  Uploads service:            https://uploads.universe.example.ru

Service status:
  K3s:                        ✅
  PostgreSQL:                 ✅
  Cluster Manager:            ✅
  Universe API:               ✅
  Nova API:                   ✅
  Git service:                ✅
  Container registry:         ✅
  Repository:                 ✅
  Uploads service:            ✅

Parameters for Nova Container Platform:
  coreServer:                 sun.universe.example.ru
  hubRegistryURL:             https://hub.universe.example.ru/nova-universe
  hubToken:                   5894ffe36739070299aebea7b08dfba359d158eb
  hubUsername:                deploy-user
  repoToken:                  5894ffe36739070299aebea7b08dfba359d158eb
  repoURL:                    https://hub.universe.example.ru/nova-universe/container-platform-base.git
  rpmRepoURL:                 https://repo.universe.example.ru

Nova Platform:
├── Core:                     ✅
├── Repository:
│   ├── ALT Linux:            ❌ Not installed
│   ├── AstraLinux:           ⚠️ Version mismatch (installed: v3.1.2)
│   ├── Mosos:                ❌ Not installed
│   ├── Redos:                ❌ Not installed
│   ├── Rhel:                 ❌ Not installed
│   └── Ubuntu:               ❌ Not installed
└── Modules:
    ├── Nova Ml:
    │   ├── Core:             ⚠️ Version mismatch (installed: v3.1.2)
    │   └── Repository:
    │       ├── AstraLinux:   ⚠️ Version mismatch (installed: v3.1.2)
    │       ├── Redos:        ❌ Not installed
    │       ├── Rhel:         ❌ Not installed
    │       └── Ubuntu:       ❌ Not installed
    └── Nova Operators:
        └── Core:             ❌ Not installed

5. Установка пакета репозитория базового модуля

  1. Скачайте пакет репозитория для нужного семейства операционных систем и переместите файл в директорию /opt/nova-universe/uploads на целевой машине.

    $ sudo wget --user=логин --password=пароль https://repo-nova-universe.orionsoft.ru/3.х.y/core/repositories/... -P /opt/nova-universe/uploads  (1)
    1 Логин и пароль для доступа в репозиторий предоставляется вашим аккаунт-менеджером.
  2. Запустите установку:

    $ sudo universe update
    System initialized ✅
    The update file must be located in the /opt/nova-universe/uploads directory
    Files found in the /opt/nova-universe/uploads directory:
    nova-platform-astra-repo-bundle-v3.1.3-rev.xxxx.upd
  3. Укажите имя файла:

    Enter the update file name [example: update-universe-bundle-v3.1.x-rev.xxxx.upd]: nova-platform-astra-repo-bundle-v3.1.3-rev.xxxx.upd
  4. Подтвердите запуск процесса:

    Please confirm to start the operation [default: yes]
  5. Дождитесь окончания установки:

    Preparing the system for update...
    [####################################################################################################] 100% ✓
    System preparation for update completed successfully ✅
    Updating the system...
    [####################################################################################################] 100% ✓
    System update completed successfully ✅
  6. После выполнения процедуры убедитесь, что репозиторий обновлен.

    $ universe info
    Пример вывода
    System initialized ✅
    
    Universe version: v3.1.3
    
    Public services and resources:
      CA certificate:             https://repo.universe.example.ru/ca/ca.crt
      Cluster Manager:            https://cluster-manager.universe.example.ru
      Universe API:               https://api.universe.example.ru
      Nova API:                   https://nova-api.universe.example.ru
      Git service:                https://hub.universe.example.ru
      Container registry:         https://hub.universe.example.ru
      Repository:                 https://repo.universe.example.ru
      Uploads service:            https://uploads.universe.example.ru
    
    Service status:
      K3s:                        ✅
      PostgreSQL:                 ✅
      Cluster Manager:            ✅
      Universe API:               ✅
      Nova API:                   ✅
      Git service:                ✅
      Container registry:         ✅
      Repository:                 ✅
      Uploads service:            ✅
    
    Parameters for Nova Container Platform:
      coreServer:                 sun.universe.example.ru
      hubRegistryURL:             https://hub.universe.example.ru/nova-universe
      hubToken:                   5894ffe36739070299aebea7b08dfba359d158eb
      hubUsername:                deploy-user
      repoToken:                  5894ffe36739070299aebea7b08dfba359d158eb
      repoURL:                    https://hub.universe.example.ru/nova-universe/container-platform-base.git
      rpmRepoURL:                 https://repo.universe.example.ru
    
    
    Nova Platform:
    ├── Core:                     ✅
    ├── Repository:
    │   ├── ALT Linux:            ❌ Not installed
    │   ├── AstraLinux:           ✅
    │   ├── Mosos:                ❌ Not installed
    │   ├── Redos:                ❌ Not installed
    │   ├── Rhel:                 ❌ Not installed
    │   └── Ubuntu:               ❌ Not installed
    └── Modules:
        ├── Nova Ml:
        │   ├── Core:             ⚠️ Version mismatch (installed: v3.1.2)
        │   └── Repository:
        │       ├── AstraLinux:   ⚠️ Version mismatch (installed: v3.1.2)
        │       ├── Redos:        ❌ Not installed
        │       ├── Rhel:         ❌ Not installed
        │       └── Ubuntu:       ❌ Not installed
        └── Nova Operators:
            └── Core:             ❌ Not installed

6. Обновление дополнительного модуля

  1. Скачайте пакет обновления для модуля и переместите файл в директорию /opt/nova-universe/uploads на целевой машине.

    $ sudo wget --user=логин --password=пароль https://repo-nova-universe.orionsoft.ru/3.х.y/modules/nova-ml/update/... -P /opt/nova-universe/uploads
  2. Запустите обновление:

    $ sudo universe update
    System initialized ✅
    The update file must be located in the /opt/nova-universe/uploads directory
    Files found in the /opt/nova-universe/uploads directory:
    update-nova-ml-module-bundle-v3.1.3-rev.xxxx.upd
  3. Укажите имя файла:

    Enter the update file name [example: update-universe-bundle-v3.1.x-rev.xxxx.upd]: update-nova-ml-module-bundle-v3.1.3-rev.xxxx.upd
  4. Подтвердите запуск процесса обновления:

    Please confirm to start the operation [default: yes]
  5. Дождитесь окончания выполнения обновления:

    Preparing the system for update...
    [####################################################################################################] 100% ✓
    System preparation for update completed successfully ✅
    Updating the system...
    [####################################################################################################] 100% ✓
    System update completed successfully ✅
  6. После выполнения процедуры убедитесь, что модуль обновлен.

    $ universe info
    Пример вывода
    System initialized ✅
    
    Universe version: v3.1.3
    
    Public services and resources:
      CA certificate:             https://repo.universe.example.ru/ca/ca.crt
      Cluster Manager:            https://cluster-manager.universe.example.ru
      Universe API:               https://api.universe.example.ru
      Nova API:                   https://nova-api.universe.example.ru
      Git service:                https://hub.universe.example.ru
      Container registry:         https://hub.universe.example.ru
      Repository:                 https://repo.universe.example.ru
      Uploads service:            https://uploads.universe.example.ru
    
    Service status:
      K3s:                        ✅
      PostgreSQL:                 ✅
      Cluster Manager:            ✅
      Universe API:               ✅
      Nova API:                   ✅
      Git service:                ✅
      Container registry:         ✅
      Repository:                 ✅
      Uploads service:            ✅
    
    Parameters for Nova Container Platform:
      coreServer:                 sun.universe.example.ru
      hubRegistryURL:             https://hub.universe.example.ru/nova-universe
      hubToken:                   5894ffe36739070299aebea7b08dfba359d158eb
      hubUsername:                deploy-user
      repoToken:                  5894ffe36739070299aebea7b08dfba359d158eb
      repoURL:                    https://hub.universe.example.ru/nova-universe/container-platform-base.git
      rpmRepoURL:                 https://repo.universe.example.ru
    
    
    Nova Platform:
    ├── Core:                     ✅
    ├── Repository:
    │   ├── ALT Linux:            ❌ Not installed
    │   ├── AstraLinux:           ✅
    │   ├── Mosos:                ❌ Not installed
    │   ├── Redos:                ❌ Not installed
    │   ├── Rhel:                 ❌ Not installed
    │   └── Ubuntu:               ❌ Not installed
    └── Modules:
        ├── Nova Ml:
        │   ├── Core:             ✅
        │   └── Repository:
        │       ├── AstraLinux:   ⚠️ Version mismatch (installed: v3.1.2)
        │       ├── Redos:        ❌ Not installed
        │       ├── Rhel:         ❌ Not installed
        │       └── Ubuntu:       ❌ Not installed
        └── Nova Operators:
            └── Core:             ❌ Not installed

7. Установка репозитория дополнительного модуля

  1. Скачайте пакет репозитория для нужного семейства операционных систем и переместите файл в директорию /opt/nova-universe/uploads на целевой машине.

    $ sudo wget --user=логин --password=пароль https://repo-nova-universe.orionsoft.ru/3.х.y/modules/nova-ml/repositories/... -P /opt/nova-universe/uploads
  2. Выполните команду:

    $ sudo universe update
    System initialized ✅
    The update file must be located in the /opt/nova-universe/uploads directory
    Files found in the /opt/nova-universe/uploads directory:
    nova-ml-astra-repo-bundle-v3.1.3-rev.xxxx.upd
  3. Укажите имя файла:

    Enter the update file name [example: update-universe-bundle-v3.1.x-rev.xxxx.upd]: nova-ml-astra-repo-bundle-v3.1.3-rev.xxxx.upd
  4. Подтвердите запуск процесса:

    Please confirm to start the operation [default: yes]
  5. Дождитесь окончания выполнения процесса:

    Preparing the system for update...
    [####################################################################################################] 100% ✓
    System preparation for update completed successfully ✅
    Updating the system...
    [####################################################################################################] 100% ✓
    System update completed successfully ✅
  6. После выполнения процедуры убедитесь, что репозиторий модуля обновлен.

    $ universe info
    Пример вывода
    System initialized ✅
    
    Universe version: v3.1.3
    
    Public services and resources:
      CA certificate:             https://repo.universe.example.ru/ca/ca.crt
      Cluster Manager:            https://cluster-manager.universe.example.ru
      Universe API:               https://api.universe.example.ru
      Nova API:                   https://nova-api.universe.example.ru
      Git service:                https://hub.universe.example.ru
      Container registry:         https://hub.universe.example.ru
      Repository:                 https://repo.universe.example.ru
      Uploads service:            https://uploads.universe.example.ru
    
    Service status:
      K3s:                        ✅
      PostgreSQL:                 ✅
      Cluster Manager:            ✅
      Universe API:               ✅
      Nova API:                   ✅
      Git service:                ✅
      Container registry:         ✅
      Repository:                 ✅
      Uploads service:            ✅
    
    Parameters for Nova Container Platform:
      coreServer:                 sun.universe.example.ru
      hubRegistryURL:             https://hub.universe.example.ru/nova-universe
      hubToken:                   5894ffe36739070299aebea7b08dfba359d158eb
      hubUsername:                deploy-user
      repoToken:                  5894ffe36739070299aebea7b08dfba359d158eb
      repoURL:                    https://hub.universe.example.ru/nova-universe/container-platform-base.git
      rpmRepoURL:                 https://repo.universe.example.ru
    
    Nova Platform:
    ├── Core:                     ✅
    ├── Repository:
    │   ├── ALT Linux:            ❌ Not installed
    │   ├── AstraLinux:           ✅
    │   ├── Mosos:                ❌ Not installed
    │   ├── Redos:                ❌ Not installed
    │   ├── Rhel:                 ❌ Not installed
    │   └── Ubuntu:               ❌ Not installed
    └── Modules:
        ├── Nova Ml:
        │   ├── Core:             ✅
        │   └── Repository:
        │       ├── AstraLinux:   ✅
        │       ├── Redos:        ❌ Not installed
        │       ├── Rhel:         ❌ Not installed
        │       └── Ubuntu:       ❌ Not installed
        └── Nova Operators:
            └── Core:             ❌ Not installed

Рекомендуется к выполнению