Обновление первого контроллера домена¶
Внимание
После обновления первого контроллера домена возникает ошибка на портале управления: «Операция завершена с ошибкой. Операция с Zabbix завершилась с ошибкой». Она ожидаема и устранится после обновления подсистемы мониторинга.
Все обновления между версиями возможны только в рамках одного исполнения: сертифицированного или несертифицированного. Для обновления до версии другого исполнения необходимо полностью развернуть систему заново.
Подготовка к обновлению¶
Перед обновлением ALD Pro важно учитывать:
Обновление продукта ALD Pro необходимо выполнять на контроллере домена от имени учетной записи администратора системы с высоким уровнем целостности.
Обновления следует начинать с первого Контроллера Домена. Соответственно, все команды должны вводиться в его консоли (терминале).
В ALD Pro реализовано разграничение доступа к функциям системы. При обновлении системы до актуальной версии администратору должна быть назначена роль ALDPRO — Main Administrator (пользователю admin роль назначается автоматически), также учетную запись администратора необходимо добавить в группу ald trust admin. Остальным пользователям (администраторам) системы соответствующие роли при необходимости нужно назначать в ручном режиме. Подробная информация о работе ролевого доступа находится в Справочном Центре Портала Управления в подразделе Роли и права доступа — Роли в системе.
Программное обеспечение ОС должно совпадать на контроллерах домена, между которыми настроена репликация. Одновременная установка обновлений ОС и ALD Pro может привести к неработоспособности КД, подсистем и клиентов.
Версия ОС должна совпадать на контроллерах домена, между которыми настроена репликация. Если требуется установка оперативного обновления ОС, она должна выполняться перед обновлением ALD Pro. На первом КД необходимо:
убедиться, что в качестве источников пакетов для ОС зарегистрированы основной репозиторий (
main) и репозиторий с обновлениями основного репозитория (repository-update), а в файле/etc/apt/sources.listуказаны следующие строки, при необходимости — добавить, если имеются другие записи, то закомментировать их или удалить:
deb http://dl.astralinux.ru/astra/frozen/1.7_x86-64/1.7.7.uu2/repository-main 1.7_x86-64 main non-free contrib
deb http://dl.astralinux.ru/astra/frozen/1.7_x86-64/1.7.7.uu2/repository-update 1.7_x86-64 main non-free contrib
обновить пакеты ОС, выполнив в терминале команду:
sudo apt update && sudo apt install astra-update -y && sudo astra-update -A -r -T
для корректной работы функций репликации на КД необходимо импортировать новые конфигурации службы каталога, выполнив команды:
Внимание
Выполнение команды ipa-server-upgrade на ОС версии 1.7.8 может завершиться ошибкой. В таком случае необходимо повторять выполнение команды до тех пор, пока она не завершится успешно.
sudo ipa-server-upgrade
sudo ipactl restart
Важно
В версии 3.1.0 с серверной частью заявлена поддержка в том числе ОС Astra Linux 1.7.8. Однако обновление ОС с ранних версий до версии Astra Linux 1.7.8 проходит с особенностями, которые влияют на работоспособность подсистем после обновления. Более детальную информацию можно найти в разделе После обновления ОС Astra Linux до версии 1.7.8 не работает вход на портал управления.
Проверки, которые необходимо выполнить до начала обновления¶
Начиная с версии 3.0.0, утилита aldpro-server-install была доработана и дополнена механизмом автоматической валидации системных параметров и вводимых значений.
Перед установкой и обновлением контроллера домена утилита выполняет набор предварительных проверок, чтобы убедиться, что система соответствует установленным требованиям. По умолчанию валидация отключена и должна быть активирована с помощью флага --validate.
Важно
При обновлении первого КД с помощью утилиты aldpro-server-install с ключом --validate, пункты 2, 6, 9, 10 из списка проверок ниже, выполняются автоматически. Обновление резервных КД выполняется через портал управления, поэтому для них необходимо выполнить все проверки.
Подробное описание механизма валидации параметров см. Полезные инструкции → Инструкция по валидации параметров установки/обновления ALD Pro.
Перед запуском обновления ОС на КД необходимо выполнить проверки:
Перезапуск служб IPA. Нужно убедиться, что не происходит задержек при перезапуске FreeIPA служб и что все службы стартуют успешно. Выполняется на первом КД и на резервных КД:
ipactl restart
Проверка работоспособности основных служб
krb5-kdc, dirsrv@ALDPRO-LAN.service, bind9-pkcs11, aldpro-salt-minion, sssd. Название службы dirsrv@ALDPRO-LAN.service содержит имя домена. Нельзя начинать обновление, если какие-то из служб не функционируют. Выполняется на первом КД и резервных КД:
systemctl status krb5-kdc dirsrv@ALDPRO-LAN.service bind9-pkcs11 aldpro-salt-minion sssd
kinit admin
nslookup имя_хоста
Отключение служб, связанных с ролями:
celerybeatиaldpro-roles-sweeper. Отключение производится на контроллере домена путем остановки таймеров для соответствующих служб:
systemctl disable --now celerybeat.service aldpro-roles-sweeper.timer
Проверка подключенных репозиториев, отключение лишних репозиториев. Необходимо убедиться, что при доступе к репозиториям не происходит ошибок и задержек. Выполняется на первом КД и резервных КД:
Редактирование *.list файлов в каталоге /etc/apt/ и его подкаталогах
apt update
Отключение плагина
389ds - compat. Позволяет ускорить выполнение обновления. Выполняется на первом КД и резервных КД:
ipa-compat-manage status
ipa-compat-manage disable
Деактивация
winbind_krb5_locator. Выполняется на резервных КД:
ln -s -f /dev/null /usr/lib/x86_64-linux-gnu/krb5/plugins/libkrb5/winbind_krb5_locator.so
Отсутствие двух подсистем на одном хосте. Выполняется перед началом обновления первого контроллера домена.
Обновление модуля синхронизации не запущено одновременно с обновлением Системы. Обновление модуля синхронизации и миграцию его баз данных рекомендуется проводить после обновления всех резервных КД.
Проверка репликации и отсутствия односторонних соглашений о репликации:
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> - это контроллеры домена, между которыми установлены соглашения о репликации
Проверка наличия атрибутов
envvarиipaLocation. Выполняется на первом контроллере домена и на резервных:
ldapsearch -b "cn=masters,cn=ipa,cn=etc,dc=aldpro,dc=company,dc=lan" -s one ipaLocation envvar
Перезагрузка КД с последующей экспресс-проверкой работы служб (повторить пункты 1 и 2 данного раздела). Выполняется непосредственно перед началом обновления первого или резервных контроллеров домена.
Обновление¶
Для установки обновления ALD Pro на первом контроллере домена необходимо подключить репозиторий aldpro, выполнив в терминале команды:
sudo nano /etc/apt/sources.list.d/aldpro.list
Полностью заменить содержимое файла aldpro.list:
deb https://dl.astralinux.ru/aldpro/frozen/01/3.1.0/ 1.7_x86-64 main base
Обновить индекс пакетов, выполнив в терминале команду:
sudo apt update
Обновить пакеты продукта ALD Pro командой:
sudo apt dist-upgrade -y -o Dpkg::Options::=--force-confnew
В процессе выполнения обновления, при появлении сообщения с подтверждением изменения файла настройки пакета, необходимо выбрать Установить версию, предлагаемую сопровождающим пакета, введя в командной строке Y.
Перезагрузить контроллер, выполнив в терминале команду:
sudo reboot
После перезагрузки первого контроллера домена и проверки статуса прохождения аутентификации, для завершения обновления первого контроллера домена в терминале выполнить команды:
sudo aldpro-server-install -d ald.company.lan -n dc-1 --ip 10.0.1.11 --update --setup_syncer --setup_gc
где:
-d(domain) — имя домена;-n(name) — имя сервера;-p(password) — получить пароль администратора домена из командной строки (небезопасно);--ip— ip адрес контроллера домена. Адрес требуется указывать явно, если на контроллере домена активно несколько сетевых интерфейсов;--update— ключ запуска процесса обновления;--setup_gc— ключ указывает, что нужно настроить установленный ранее модуль глобального каталога;--setup_syncer— ключ указывает, что нужно настроить установленный ранее модуль синхронизации.
Описание параметров скрипта можно получить с помощью ключа -h.
После ввода команды система запросит ввести пароль администратора домена. При обновлении контроллера домена ALD Pro до версии 3.1.0, с ранее установленным модулем синхронизации, процесс миграции базы данных (БД) может занять продолжительное время. Если БД содержит 30000 пользователей и более, то рекомендуется сначала обновить ALD Pro, затем, выбрав отдельный интервал профилактики, обновить модуль синхронизации, согласно Обновление с установкой Модуля Синхронизации.
Если требуется произвести обновление ALD Pro с одновременной инициализацией ранее неустановленного модуля глобального каталога и/или модуля синхронизации, то следует обратиться к соответствующим разделам Обновление с установкой Глобального Каталога и Обновление с установкой Модуля Синхронизации.
Для синхронизации модулей SaltStack необходимо выполнить команду:
sudo systemctl restart aldpro-salt-minion
Ошибки, которые могут возникнуть при обновлении системы, описаны в разделе Руководство администратора. Часть 2 → Известные проблемы.
Проверки, которые необходимо выполнить после обновления¶
После завершения обновления системы необходимо выполнить следующие проверки, чтобы убедиться, что обновление выполнено корректно и ALD Pro готов к работе.
Проверить информацию на карточке КД (Управление доменом → Сайты и службы → Контроллеры домена или Управление доменом → Общая информация → Состав системы). Если КД находится в состоянии Установлено, Ошибка, не указана версия, то изучить логи:
/var/log/ipaupgrade.log - первый КД,
/var/log/aldpro-salt/subsystem.log - резервные контроллеры домена.
Проверить функционирование основных служб
dirsrv@ALDPRO-LAN.service, krb5-kdc, bind9-pkcs11, sssd, aldpro-salt-minion``. Название службыdirsrv@DC-1-ALDPRO-LAN.servieсодержит имя домена.
systemctl status dirsrv@ALDPRO-LAN.service krb5-kdc bind9-pkcs11 sssd aldpro-salt-minion
ipactl status
aldproctl status
Остановить и замаскировать службу
salt-minion, если она не используется:
systemctl stop salt-minion
systemctl disable salt-minion
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;"
Обновление с установкой Глобального Каталога¶
При необходимости инициализации модуля глобального каталога одновременно с обновлением ALD Pro на первом контроллере домена, необходимо предварительно установить пакет глобального каталога из репозитория ALD Pro и добавить ключ --setup_gc в команду обновления aldpro-server-install.
Команда обновления контроллера домена с инициализацией модуля ГК:
sudo apt update && sudo apt install aldpro-gc
sudo aldpro-server-install -d ald.company.lan -n dc-1 --ip 10.0.1.11 --update --setup_gc
После ввода команды система запросит ввести пароль администратора домена.
Обновление с установкой Модуля Синхронизации¶
При необходимости инициализации модуля синхронизации одновременно с обновлением ALD Pro на первом контроллере домена, необходимо предварительно установить пакет модуля синхронизации из репозитория ALD Pro и добавить ключ --setup_syncer в команду обновления aldpro-server-install.
Модуль синхронизации всегда устанавливается на первый контроллер домена. При установке модуля синхронизации контроллер домена ALD Pro добавляется в карточку Контроллеры домена ALD автоматически.
При установке модуля синхронизации создается учетная запись имеющая вид syncer/dc01.<имя домена>@<ИМЯ ДОМЕНА>. Данная УЗ является сервисной и используется для работы модуля синхронизации. Пароль данной УЗ является бессрочным, что делает работу модуля синхронизации более стабильной и устойчивой.
Команда обновления контроллера домена с инициализацией модуля синхронизации:
sudo apt update && sudo apt install aldpro-syncer aldpro-syncer-pwdsync
sudo aldpro-server-install -d ald.company.lan -n dc-1 --ip 10.0.1.11 --update --setup_syncer
После ввода команды система запросит ввести пароль администратора домена.