Обновление резервных контроллеров домена¶
Подготовка к обновлению¶
Внимание
Обновление операционной системы на контроллерах домена не является обязательным этапом процесса обновления ALD Pro.
Необходимость обновления ОС определяется матрицей совместимости ALD Pro (см. Матрицы совместимости и обновлений) и выбранным сценарием.
Нижеприведенные шаги 1-4 выполняются только в случае, если сценарий обновления требует обновления ОС.
Перед обновлением ALD Pro важно учитывать:
Обновление продукта ALD Pro необходимо выполнять на контроллере домена от имени учетной записи администратора системы с высоким уровнем целостности.
Обновления следует начинать с первого Контроллера Домена.
В ALD Pro реализовано разграничение доступа к функциям системы. При обновлении системы до актуальной версии администратору должна быть назначена роль ALDPRO — Main Administrator (пользователю admin роль назначается автоматически), также учетную запись администратора необходимо добавить в группу ald trust admin. Остальным пользователям (администраторам) системы соответствующие роли при необходимости нужно назначать в ручном режиме. Подробная информация о работе ролевого доступа находится в Справочном Центре Портала Управления в подразделе Роли и права доступа — Роли в системе.
Программное обеспечение ОС должно совпадать на контроллерах домена, между которыми настроена репликация. На резервном КД необходимо:
Убедиться, что в файле
/etc/apt/sources.listв качестве источников пакетов для ОС зарегистрированы основной репозиторий (repository-main) и репозиторий с обновлениями основного репозитория (repository-update). При необходимости — добавить их, если имеются другие записи, то закомментировать их или удалить. Пример содержимого/etc/apt/sources.listпредставлен ниже:
deb https://dl.astralinux.ru/astra/frozen/1.7_x86-64/<номер_обновления_ОС_СН>/repository-main 1.7_x86-64 main non-free contrib
deb https://dl.astralinux.ru/astra/frozen/1.7_x86-64/<номер_обновления_ОС_СН>/repository-update 1.7_x86-64 main non-free contrib
При использовании ОС Astra Linux с установленным срочным оперативным обновлением (UU) необходимо дополнительно указать соответствующий ему frozen репозиторий. Подробнее в разделе Подключение репозиториев.
Обновить пакеты ОС, выполнив в терминале команду:
Внимание
Если на контроллере домена установлен модуль глобального каталога, то для успешного обновления ОС и последующего выполнения команды ipa-server-upgrade нужно предварительно остановить службы dirsrv@GLOBAL-CATALOG.service и ipa-gcsyncd.service.
sudo apt update && sudo apt install astra-update -y && sudo astra-update -A -r -T
Для корректной работы функций репликации на КД необходимо импортировать новые конфигурации службы каталога, выполнив команды:
sudo ipa-server-upgrade
sudo ipactl restart
Выполнить перезагрузку для завершения установки обновления.
sudo reboot
Обновление¶
Проверки, которые необходимо выполнить до начала обновления ALD Pro¶
Начиная с версии 3.2.0, утилита aldpro-server-install выполняет валидацию по умолчанию перед установкой или обновлением контроллера домена.
В рамках валидации проверяются системные требования и корректность вводимых параметров, что позволяет заранее выявить несоответствия и снизить риск ошибок в процессе установки и обновления.
Внимание
При обновлении первого контроллера домена с помощью aldpro-server-install допускается пропустить пункты 2, 6, 9, 10 из списка проверок ниже. Обновление резервных контроллеров домена выполняется через портал управления, поэтому для них необходимо выполнить все пункты из списка проверок.
Важно
Непосредственно перед началом проверок должна быть выполнена перезагрузка сервера.
Перед запуском обновления ALD Pro на КД необходимо выполнить проверки:
Перезапуск служб IPA. Необходимо убедиться, что все службы FreeIPA стартуют успешно. Выполняется на первом КД и на резервных КД:
sudo ipactl restart
sudo ipactl status
Проверка работоспособности основных служб:
krb5-kdc, dirsrv, bind9-pkcs11, aldpro-salt-minion, sssd. Полное название службыdirsrvсодержит имя домена -dirsrv@ALD-COMPANY-LAN(пример). Нельзя начинать обновление, если какие-то из служб не функционируют. Выполняется на первом КД и резервных КД:
systemctl status krb5-kdc
systemctl status dirsrv@ALD-COMPANY-LAN
systemctl status bind9-pkcs11
systemctl status aldpro-salt-minion
systemctl status sssd
Проверка получения билета Kerberos и информации о КД в системе DNS. Выполняется на первом КД и резервных КД:
kinit имя_пользователя
nslookup fqdn_контроллера_домена
Отключение служб, связанных с ролями:
celerybeatиaldpro-roles-management. Отключение производится на контроллере домена:
sudo systemctl disable --now celerybeat aldpro-roles-management
Проверка подключенных репозиториев: необходимо удостовериться, что при доступе к репозиториям не происходит ошибок и задержек, убедиться, что в файле
/etc/apt/sources.listв качестве источников пакетов для ОС зарегистрированы основной репозиторий (repository-main) и репозиторий с обновлениями основного репозитория (repository-update). При необходимости — добавить их, а если имеются другие записи, то закомментировать их или удалить. Выполняется на первом КД и резервных КД. Пример содержимого/etc/apt/sources.listпредставлен ниже:
deb https://dl.astralinux.ru/astra/frozen/1.7_x86-64/<номер_обновления_ОС_СН>/repository-main 1.7_x86-64 main non-free contrib
deb https://dl.astralinux.ru/astra/frozen/1.7_x86-64/<номер_обновления_ОС_СН>/repository-update 1.7_x86-64 main non-free contrib
А затем обновить версии пакетов:
sudo apt update
Отключение плагина
389ds - compat. Позволяет ускорить выполнение обновления. Выполняется на первом КД и резервных КД:
sudo ipa-compat-manage status
sudo ipa-compat-manage disable
Деактивация плагина
winbind_krb5_locator. Выполняется на резервных КД:
sudo update-alternatives --install /usr/lib/x86_64-linux-gnu/krb5/plugins/libkrb5/winbind_krb5_locator.so winbind_krb5_locator.so /dev/null 100
Отсутствие двух подсистем на одном хосте. Выполняется перед началом обновления первого контроллера домена.
Обновление модуля синхронизации не запущено одновременно с обновлением Системы. Обновление модуля синхронизации и миграцию его баз данных рекомендуется проводить после обновления всех резервных КД.
Проверка репликации и отсутствия односторонних соглашений о репликации:
dsconf ldap://<имя_КД> -D 'cn=Directory Manager' repl-conflict list dc=ald,dc=company,dc=lan
dsconf ldap://<имя_КД> -D 'cn=Directory Manager' repl-agmt list --suffix dc=ald,dc=company,dc=lan
ds-replcheck online -D "cn=Directory Manager" -W -m ldap://<имя_КД_1> -r ldap://<имя_КД_2> -b "<dc=доменный,dc=суффикс>"
<имя_КД_1> и <имя_КД_2> - это контроллеры домена, между которыми установлены соглашения о репликации
Обновление через портал управления с помощью групповой политики¶
В системе с версии 2.2.0 внедрен функционал централизованного обновления aldpro-client на компьютерах домена через Портал Управления. Подробную инструкцию см. в Руководство администратора. Часть 2 → Справочные материалы → Обновление подсистем ALD Pro через портал управления.
Запуск команд по обновлению осуществляется по таймеру. Максимальное время запуска обновления: 160 минут.
Форсированное обновление (обновление вручную)¶
Для обновления в ручном режиме необходимо выполнить действия ниже.
Подключить обновленный репозиторий ALD Prо, выполнив в терминале команду:
sudo nano /etc/apt/sources.list.d/aldpro.list
Полностью заменить содержимое файла aldpro.list:
deb https://dl.astralinux.ru/aldpro/frozen/01/3.2.0/ 1.7_x86-64 main base
Обновить индекс пакетов, выполнив в терминале команду:
sudo apt update
Обновить пакеты продукта ALD Pro командой:
sudo apt dist-upgrade -y -o Dpkg::Options::=--force-confnew
Скачать и установить последнюю версию Policy Manager командой:
sudo aldpro-gpupdate --pm
Применить групповые политики командой:
sudo aldpro-gpupdate --gp
Обновление резервного контроллера домена запускается нажатием кнопки [Обновить ALD Pro] в карточке резервного контроллера домена из списка, находящегося в Управление доменом - Общая информация - Состав системы.
Для лучшего контроля за процессом обновления подсистемы рекомендуется использовать форсированное обновление с помощью команды:
sudo aldpro-roles --iud
После обновления ALD Pro на портале управления необходимо перейти в карточку обновляемого сервера и убедиться, что состояние подсистемы имеет статус Обновлена, без ошибок. Поле Версия системы ALD Pro должно содержать версию системы, до которой было выполнено обновление.
Если в процессе обновления что-то пошло не так, в карточке резервного контроллера домена будет отображаться ошибка.
Повторную попытку обновления можно запустить следующей командой:
sudo aldpro-roles --iud --action update
Проверки, которые необходимо выполнить после обновления¶
После завершения обновления системы необходимо выполнить следующие проверки, чтобы убедиться, что обновление выполнено корректно и ALD Pro готов к работе.
Проверить информацию на карточке КД (Управление доменом → Сайты и службы → Контроллеры домена или Управление доменом → Общая информация → Состав системы). Если КД находится в состоянии Установлено, Ошибка, не указана версия, то изучить логи:
/var/log/ipaupgrade.log- первый КД,/var/log/aldpro-salt/subsystem.log- резервные контроллеры домена.
Проверить работоспособность основных служб:
krb5-kdc, dirsrv, bind9-pkcs11, aldpro-salt-minion, sssd. Полное название службыdirsrvсодержит имя домена -dirsrv@ALD-COMPANY-LAN(пример). Выполняется на первом КД и резервных КД:
systemctl status krb5-kdc
systemctl status dirsrv@ALD-COMPANY-LAN
systemctl status bind9-pkcs11
systemctl status aldpro-salt-minion
systemctl status sssd
sudo aldproctl status
Остановить и замаскировать службу
salt-minion, если она не используется:
sudo systemctl stop salt-minion
sudo systemctl disable salt-minion
sudo systemctl mask salt-minion
Проверить наличие конфликтов репликации LDAP:
dsconf ldap://<имя_КД> -D 'cn=Directory Manager' repl-conflict list <доменный суффикс>
Проверить работоспособность ролевой модели. Проверка осуществляется в портале управления путем просмотра списка ролей и их статуса, назначения роли или ролей пользователю с последующей проверкой доступа к разделам портала. Наличие конфликтов у записей в LDAP, имеющих отношение к ролям, привилегиям или разрешениям, также сигнализирует о возможных ошибках в функционировании ролевой модели. Если на первом КД ролевая модель работает, то на резервных контроллерах домена проверку можно осуществлять сравнением данных этого резервного контроллера домена с первым КД (
ds-replcheck).Обновить модуль синхронизации и проверить миграцию данных (идентификаторы участников групп (должны быть
ObjectGUIDиз MS AD), список ошибок до обновления и миграции и после) – выполняется только на первом КД, т.к. модуль синхронизации может быть установлен только на него:
sudo -u postgres psql -d syncer -c "SELECT schema_tracer.tracer_objects.name,schema_provider.ipa_code_error.error_message, schema_provider.ipa_code_error.error_name, schema_provider.virtual_tree.error_id, COUNT(*) FROM schema_provider.virtual_tree JOIN schema_provider.ipa_code_error ON schema_provider.virtual_tree.error_id = schema_provider.ipa_code_error.id JOIN schema_tracer.tracer_objects ON schema_provider.virtual_tree.object_class_id = schema_tracer.tracer_objects.id WHERE error_id <> 90 GROUP BY schema_tracer.tracer_objects.id,schema_provider.ipa_code_error.error_message, schema_provider.ipa_code_error.error_name, schema_provider.virtual_tree.error_id ORDER BY schema_tracer.tracer_objects.name;"