Обновление LCM ks2024.1 → ks2024.2
Обновление с ks2024.1 на следующую по порядку версию гарантирует, что все новые возможности будут внедрены правильно. Данный этап можно считать обязательной частью обновления LCM-узла.
Загрузите и подготовьте пакет обновления:
Зайдите на LCM-узел по SSH.
Загрузите архив
upgrade-ks2024.2-sberlinux.tgz
в папку/installer/update
.Убедитесь, что в этой папке нет других файлов или папок, при необходимости удалите их.
Убедитесь, что в точке монтирования
/
имеется более 200 Гб свободного пространства. Это необходимо для успешного выполнения обновления.Для последующего обновления репозитория в GitLab, выполните команду:
# git config --global --add safe.directory '*'
Добавьте строки в файлы
~/installer/settings
и/installer/settings
:export NEXUS_NAME=nexus export GITLAB_NAME=ks-lcm export VAULT_NAME=vault export NETBOX_NAME=netbox export CLIENT_NEXUS_NAME=Замените в файлах строку
export RELEASE=ks2024.1-sber
наexport RELEASE=ks2024.2-sberlinux
.
Зайдите на LCM-узел по SSH.
Загрузите архив
upgrade-ks2024.2-ubuntu.tgz
в папку/installer/update
.Убедитесь, что в этой папке нет других файлов или папок, при необходимости удалите их.
Убедитесь, что в точке монтирования
/
имеется более 200 Гб свободного пространства. Это необходимо для успешного выполнения обновления.Для последующего обновления репозитория в GitLab, выполните команду:
# git config --global --add safe.directory '*'
Добавьте строки в файлы
~/installer/settings
и/installer/settings
:export NEXUS_NAME=nexus export GITLAB_NAME=ks-lcm export VAULT_NAME=vault export NETBOX_NAME=netbox export CLIENT_NEXUS_NAME=Замените в файлах строку
export RELEASE=ks2024.1-ubuntu
наexport RELEASE=ks2024.2-ubuntu
.
Запустите пайплайн обновления:
Откройте веб-интерфейс развёрнутого GitLab.
Перейдите в репозиторий project_k / deployments / bifrost и удалите его. Для этого перейдите в Delete project.
и нажмитеПерейдите в репозиторий project_k / services / upgrade.
Перейдите в раздел
.Установите значение Timeout —
5h
.Запустите пайплайн Run pipeline по умолчанию. Дождитесь его завершения.
Обновите файлы Docker и перезапустите сервисы:
Перейдите на LCM-узел и выполните команды, приведенные ниже.
# cd /installer/config # source settings # sed -i "/netbox.dump/d" $CFG_HOME/netbox-compose.yml # sed -i "s|nexus3|nexus.\$DOMAIN/project_k/lcm/nexus3|" compose.yaml # sed -i "s|nginx:\$RELEASE|nexus.\$DOMAIN/project_k/lcm/nginx:\$RELEASE|" compose.yaml # docker compose -f $CFG_HOME/netbox-compose.yml up -d # docker compose -f $CFG_HOME/compose.yaml up -d # docker compose -f $CFG_HOME/compose.yaml exec vault /bin/sh -c "cat /vault/config/ca.crt >> /etc/ssl/certs/ca-certificates.crt" # docker compose -f $CFG_HOME/compose.yaml exec vault /bin/sh -c "cat /vault/config/ca.crt >> /etc/pki/ca-trust/source/anchors/ca.crt; update-ca-trust" # docker restart vault # docker compose -f $CFG_HOME/compose.yaml exec vault /bin/sh -c "vault operator unseal" # docker compose -f $CFG_HOME/compose.yaml exec vault /bin/sh -c "vault login"Дождитесь когда откроется страница
https://ks-lcm.cloud.itkey.com/admin/background_migrations
.Дождитесь завершения всех задач на этой странице.
Обновите переменные в GitLab:
Перейдите в веб-интерфейс развернутого GitLab.
Перейдите в меню Groups и откройте группу
project_k
.Перейдите в раздел
и добавьте новые переменные:
BASE
:sberlinux
NEXUS_NAME
:nexus
BASE
:ubuntu
NEXUS_NAME
:nexus
Перейдите в меню Groups и откройте группу
deployments
.Перейдите в раздел
и добавьте новую переменную
vault_secman
:false
Перейдите в меню Groups и откройте группу
services
.Перейдите в раздел
и добавьте новую переменную
vault_secman
:false
Выполните команды на узле LCM:
Зайдите на LCM-узел по SSH и выполните команды:
# cd /installer/config # source settings # docker compose -f $CFG_HOME/compose.yaml exec vault /bin/sh -c "vault kv put -mount=secret_v2 deployments/secrets/accounts gitlab_root_password=\"$(<$CFG_HOME/gitlab_root_password)\" gitlab_runner_token=\"$(<$CFG_HOME/gitlab_runner_token)\" nexus_admin_password=\"$(<$CFG_HOME/nexus_admin_password)\" netbox_admin_password=\"$(<$CFG_HOME/netbox_admin_password)\" netbox_db_password="$netbox_db_password" netbox_redis_password="$netbox_redis_password" netbox_redis_cache_password="$netbox_redis_cache_password"" # rm -f $CFG_HOME/gitlab_root_password # rm -f $CFG_HOME/nexus_admin_password # rm -f $CFG_HOME/netbox_admin_password # echo "" > $CFG_HOME/gitlab_runner_token