upgrade-security-server-new-722
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| upgrade-security-server-new-722 [2026/02/09 10:39] – infra | upgrade-security-server-new-722 [2026/02/09 11:12] (текущий) – infra | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | <note warning> | ||
| + | |||
| ====== Обновление Security Server Ubuntu 20.04 до 22.04 на месте ====== | ====== Обновление Security Server Ubuntu 20.04 до 22.04 на месте ====== | ||
| + | |||
| В этом документе описываются шаги, необходимые для обновления автономного хоста Security Server с версии Ubuntu 20.04 LTS до Ubuntu 22.04 LTS. Пожалуйста, | В этом документе описываются шаги, необходимые для обновления автономного хоста Security Server с версии Ubuntu 20.04 LTS до Ubuntu 22.04 LTS. Пожалуйста, | ||
| С обновлением до Ubuntu 22.04 LTS PostgreSQL обновляется с версии 12 до 14. | С обновлением до Ubuntu 22.04 LTS PostgreSQL обновляется с версии 12 до 14. | ||
| - | ==== Подготовка==== | + | ==== Альтернативный метод обновления |
| - | | + | <note tip> |
| - | < | + | |
| - | apt update && apt full-upgrade | + | ==== Подготовка ==== |
| + | |||
| + | * Ознакомьтесь с примечаниями к выпуску Ubuntu и инструкциями по обновлению: | ||
| + | * 20.04 → 22.04 https:// | ||
| + | |||
| + | | ||
| + | < | ||
| + | sudo apt update && apt full-upgrade | ||
| </ | </ | ||
| - | |||
| - | * Убедитесь, | ||
| - | |||
| - | * Рекомендуется: | ||
| - | | ||
| - | * Используйте пользовательский интерфейс администратора, | ||
| - | |||
| - | * Это позволяет восстановить конфигурацию сервера, | ||
| - | * Остановите сервер | + | * Убедитесь, что версия программного обеспечения X-Road не ниже 7.2.2. |
| + | |||
| + | * Рекомендуется: убедитесь, | ||
| + | |||
| + | * Используйте пользовательский интерфейс администратора, чтобы сделать резервную копию конфигурации Security Server | ||
| + | * Это позволяет восстановить | ||
| + | |||
| + | * Резервная копия базы данных serverconf: | ||
| < | < | ||
| - | $ sudo systemctl stop "xroad-*" | + | sudo -iu postgres pg_dump |
| - | $ sudo systemctl disable xroad-proxy xroad-signer xroad-confclient | + | |
| - | $ sudo systemctl list-unit-files | grep " | + | |
| </ | </ | ||
| - | |||
| - | <note warning> | ||
| - | | + | |
| - | * См. https:// | + | |
| - | * Использование pg_dump является простым вариантом, | + | |
| < | < | ||
| - | $ sudo -iu postgres pg_dump | + | sudo systemctl stop "xroad-*" |
| + | sudo systemctl disable xroad-proxy xroad-signer xroad-confclient xroad-monitor xroad-opmonitor xroad-proxy-ui-api xroad-base | ||
| + | sudo systemctl list-unit-files | grep " | ||
| </ | </ | ||
| + | |||
| + | <note warning> | ||
| ==== Обновление Ubuntu 20.04 до 22.04 ==== | ==== Обновление Ubuntu 20.04 до 22.04 ==== | ||
| - | | + | |
| + | | ||
| < | < | ||
| - | $ dpkg -l | grep " | + | dpkg -l | grep " |
| </ | </ | ||
| - | | + | |
| + | | ||
| < | < | ||
| - | $ sudo grep " | + | sudo grep " |
| </ | </ | ||
| - | | + | |
| + | | ||
| < | < | ||
| - | $ sudo do-release-upgrade | + | sudo do-release-upgrade |
| </ | </ | ||
| + | |||
| * Следуйте инструкциям на экране. | * Следуйте инструкциям на экране. | ||
| + | |||
| * Когда обновление будет завершено, | * Когда обновление будет завершено, | ||
| - | | + | |
| ==== Обновление программного обеспечения X-Road ==== | ==== Обновление программного обеспечения X-Road ==== | ||
| - | === Обновите базу данных === | + | |
| + | === Обновите базу данных === | ||
| * Процесс обновления Ubuntu по умолчанию создает пустой экземпляр базы данных, | * Процесс обновления Ubuntu по умолчанию создает пустой экземпляр базы данных, | ||
| + | |||
| * Просмотрите экземпляры базы данных с помощью pg_lsclusters и удалите лишние. | * Просмотрите экземпляры базы данных с помощью pg_lsclusters и удалите лишние. | ||
| + | |||
| * //Не удаляйте версию 12 (основную), | * //Не удаляйте версию 12 (основную), | ||
| + | |||
| < | < | ||
| - | $ sudo pg_dropcluster --stop < | + | sudo pg_dropcluster --stop < |
| </ | </ | ||
| + | |||
| === Пример === | === Пример === | ||
| + | |||
| < | < | ||
| - | $ sudo pg_lsclusters | + | sudo pg_lsclusters |
| Ver Cluster Port Status Owner Data directory | Ver Cluster Port Status Owner Data directory | ||
| - | 12 main 5432 online postgres / | + | 12 main 5432 online postgres / |
| - | 14 main 5433 online postgres / | + | 14 main 5433 online postgres / |
| - | + | ||
| - | $ sudo pg_dropcluster --stop | + | sudo pg_dropcluster --stop |
| </ | </ | ||
| + | |||
| * Обновите старую базу данных до версии 14. | * Обновите старую базу данных до версии 14. | ||
| <note important> | <note important> | ||
| - | (!)Использование --link требует, | + | (!) Использование --link требует, |
| < | < | ||
| - | $ sudo pg_upgradecluster --method=upgrade --link 12 main | + | sudo pg_upgradecluster --method=upgrade --link 12 main |
| </ | </ | ||
| + | |||
| === Пример === | === Пример === | ||
| + | |||
| < | < | ||
| - | $ sudo pg_upgradecluster --method=upgrade --link 12 main | + | sudo pg_upgradecluster --method=upgrade --link 12 main |
| - | + | ||
| - | $ sudo pg_lsclusters | + | sudo pg_lsclusters |
| Ver Cluster Port Status Owner Data directory | Ver Cluster Port Status Owner Data directory | ||
| - | 12 main 5433 down | + | 12 main 5433 down |
| - | 14 main 5432 online postgres / | + | 14 main 5432 online postgres / |
| </ | </ | ||
| + | |||
| === Обновите репозиторий пакетов X-Road, чтобы он указывал на пакеты Ubuntu 22.04, версии 7.2.2 === | === Обновите репозиторий пакетов X-Road, чтобы он указывал на пакеты Ubuntu 22.04, версии 7.2.2 === | ||
| - | Удалить репозитории | + | Удалить |
| < | < | ||
| - | $ sudo rm -rf / | + | sudo rm -rf / |
| </ | </ | ||
| - | Импортировать GPG ключ репозитория | + | Импортировать GPG ключ репозитория: |
| < | < | ||
| - | $ wget -qO - https:// | + | wget -qO - https:// |
| </ | </ | ||
| - | Добавить репозиторий в список источников пакетов ОС | + | Добавить репозиторий в список источников пакетов ОС: |
| < | < | ||
| - | $ echo "deb [signed-by=/ | + | echo "deb [signed-by=/ |
| </ | </ | ||
| - | Произвести | + | Произвести обновление системы: |
| < | < | ||
| - | $ sudo apt update && apt full-upgrade | + | sudo apt update && apt full-upgrade |
| </ | </ | ||
| - | Включить все службы X-Road в автозагрузку | + | Включить все службы X-Road в автозагрузку: |
| < | < | ||
| - | $ sudo systemctl enable xroad-proxy xroad-signer xroad-confclient xroad-monitor xroad-opmonitor xroad-proxy-ui-api | + | sudo systemctl enable xroad-proxy xroad-signer xroad-confclient xroad-monitor xroad-opmonitor xroad-proxy-ui-api |
| </ | </ | ||
| - | Проверить все ли службы включены | + | Проверить все ли службы включены: |
| < | < | ||
| - | $ sudo systemctl list-units "xroad-*" | + | sudo systemctl list-unit-files | grep " |
| </ | </ | ||
| + | |||
| Стартовать службы X-Road: | Стартовать службы X-Road: | ||
| < | < | ||
| - | $ sudo systemctl start " | + | sudo systemctl start " |
| </ | </ | ||
| + | |||
| или | или | ||
| + | |||
| < | < | ||
| - | $ sudo systemctl start xroad-proxy | + | sudo systemctl start xroad-proxy |
| </ | </ | ||
| + | |||
| Установка выполнена успешно, | Установка выполнена успешно, | ||
| < | < | ||
| - | $ sudo systemctl list-units " | + | sudo systemctl list-units " |
| </ | </ | ||
| === Удаление старой базы данных и устаревших пакетов === | === Удаление старой базы данных и устаревших пакетов === | ||
| - | Убедившись, | + | Убедившись, |
| < | < | ||
| - | $ sudo pg_dropcluster 12 main | + | sudo pg_dropcluster 12 main |
| - | $ sudo apt purge postgresql-12 | + | sudo apt purge postgresql-12 |
| - | $ sudo apt autoremove | + | sudo apt autoremove |
| </ | </ | ||
| - | === Поиск неисправностей === | + | ==== Поиск неисправностей ==== |
| * Если восстановление после сбоя обновления невозможно и имеется резервная копия/ | * Если восстановление после сбоя обновления невозможно и имеется резервная копия/ | ||
| - | | + | |
| + | | ||
| * Если возникает проблема с locale, в данном случае нужно сделать export всех необходимых локалей. Пример проблемы: | * Если возникает проблема с locale, в данном случае нужно сделать export всех необходимых локалей. Пример проблемы: | ||
| < | < | ||
| - | pg_upgradecluster --method=upgrade --link | + | pg_upgradecluster --method=upgrade --link |
| Stopping old cluster... | Stopping old cluster... | ||
| perl: warning: Setting locale failed. | perl: warning: Setting locale failed. | ||
| Строка 190: | Строка 221: | ||
| export LC_TIME=en_US.UTF-8 | export LC_TIME=en_US.UTF-8 | ||
| update-locale | update-locale | ||
| + | </ | ||
| + | |||
| + | ==== Проверка работы ==== | ||
| + | |||
| + | После обновления рекомендуется проверить: | ||
| + | |||
| + | * Доступность веб-интерфейса Security Server | ||
| + | * Работу всех сервисов X-Road | ||
| + | * Размер и состояние баз данных | ||
| + | * Логи на наличие ошибок | ||
| + | |||
| + | Проверка размера баз данных: | ||
| + | < | ||
| + | sudo -u postgres psql -c " | ||
| + | | ||
| + | FROM pg_database | ||
| + | WHERE datname IN (' | ||
| + | </ | ||
| + | |||
| + | Проверка логов: | ||
| + | < | ||
| + | sudo journalctl -u xroad-proxy -n 100 | ||
| </ | </ | ||
upgrade-security-server-new-722.1770633564.txt.gz · Последнее изменение: — infra
