ALD Pro#
ALD Pro – это набор сетевых служб сервера Astra Linux для организации централизованного управления ИТ-инфраструктурой. Развертывание домена ALD Pro с использованием коллекции astra.ald_pro из реестра Automation Hub позволяет автоматизировать большую часть рутинных операций.
Структура#
Домен ALD Pro может состоять из контроллера домена, его реплик и клиентов домена. Для настройки каждого компонента существует отдельная роль:
astra.ald_pro.controller
– контроллер домена;astra.ald_pro.replica
– реплики контроллера домена (опционально);astra.ald_pro.client
– клиенты контроллера домена.
Также в состав коллекции входит роль astra.ald_pro.common
, однако, ее непосредственное использование не допускается.
Эта служебная роль, которая используется другими ролями.
Важно
Применение к узлу роли astra.ald_pro.controller
или astra.ald_pro.replica
приводит к развертыванию на нем всех служб домена.
Параметры настройки#
Для настройки параметров домена необходимо присвоить соответствующие значения переменным роли.
Роль astra.ald_pro.controller
#
Роль astra.ald_pro.controller
используется для настройки контроллера домена ALD Pro.
Переменные роли:
aldpro_global_forwarders
– IP-адреса DNS-серверов, используемых для разрешения имен за пределами домена.Значение по умолчанию:
8.8.8.8
;8.8.4.4
.
aldpro_server_minimal_memory_mb
– минимальное количество мегабайт оперативной памяти, необходимое для развертывания служб контроллера домена ALD Pro.Развертывание контроллера на узле запускается только в том случае, когда на нем установлено количество оперативной памяти большее или равное указанному.
Значение по умолчанию –
4096
(4 ГБ).aldpro_enable_syncer
– установка модуля синхронизацииaldpro-syncer
.Этот модуль необходим для использования расширенных функций интеграции с доменом Microsoft Active Directory.
Значение по умолчанию –
true
.aldpro_enable_gc
– установка модуля глобального каталогаaldpro-gc
.Этот модуль необходим, если используется топология из контроллера домена и нескольких реплик. Службы, предоставляемые этим модулем, выполняют синхронизацию данных пользователей между контроллером домена и его репликами.
Значение по умолчанию –
true
.aldpro_start_upgrade
– флаг, указывающий, что выполняется обновление версии ALD Pro, а не развертывание контроллера домена.Значение по умолчанию –
false
.
Роль astra.ald_pro.replica
#
Роль astra.ald_pro.replica
используется для настройки реплик контроллера домена ALD Pro.
Переменные роли:
aldpro_pdc_ip
– IP-адрес контроллера домена, например,192.168.56.10
.aldpro_pdc_name
– краткое имя контроллера домена.Например, если FQDN контроллера домена –
dc1.moscow.example.com
, то краткое имя –dc1
.aldpro_dc_site_name
– название сайта ALD Pro.Значение по умолчанию –
Головной офис
.
Развертывание реплики происходит в два этапа:
развертывание служб клиента домена;
преобразование клиента домена в реплику.
Если службы клиента домена уже настроены, этот этап развертывания реплики можно пропустить. Для этого необходимо выполнить следующие действия:
Добавить в playbook для соответствующего задания тег
replica
, например:--- - name: Enrolling ALD Pro replica hosts: replicas become: true tags: replica roles: - astra.ald_pro.replica
Запустить playbook с тегом
replica
.ansible-playbook --inventory inventory.yml --tags replica playbook.yml
Роль astra.ald_pro.client
#
Роль astra.ald_pro.client
используется для настройки клиентов домена ALD Pro.
Переменные роли:
aldpro_pdc_ip
– IP-адрес контроллера домена.Значение по умолчанию –
192.168.56.10
.aldpro_pdc_name
– имя контроллера домена.Значение по умолчанию –
dc01
.
Роль astra.ald_pro.common
#
Роль astra.ald_pro.common
используется для настройки параметров домена, общих для контроллера, реплик и клиентов.
Переменные роли:
aldpro_domain
– название домена.aldpro_admin_password
– пароль администратора домена.Длина пароля – не менее 8 символов.
aldpro_version
– используемая версия ALD Pro.По умолчанию используется самая новая из доступных версий ALD Pro.
aldpro_repo
– список ссылок на репозитории, которые следует использовать для установки пакетов ALD Pro.Например, для развертывания ALD Pro версии 2.2.1 эта ссылка может иметь следующий вид:
deb https://dl.astralinux.ru/aldpro/frozen/01/2.2.1 1.7_x86-64 main base
aldpro_start_upgrade
– если значение этой переменной равноtrue
, производится обновление ALD Pro до более новой версии. При значенииfalse
происходит развертывание контроллера и реплик, ввод клиентов в домен.aldpro_main_repo_upgrade
– список ссылок на репозитории, которые следует использовать для обновления пакетов ALD Pro.Например, для обновления ALD Pro до версии 2.2.1 эта ссылка может иметь следующий вид:
deb https://dl.astralinux.ru/aldpro/frozen/01/2.2.1 1.7_x86-64 main base
aldpro_upgrade_hosts_list
– список узлов, на которых необходимо обновить версию ALD Pro.
Обязательные переменные#
При использовании ролей обязательны для заполнения следующие переменные:
astra.ald_pro.controller
:aldpro_admin_password
;aldpro_domain
;aldpro_main_repo_upgrade
;aldpro_repo
;
astra.ald_pro.replica
:aldpro_admin_password
;aldpro_dc_site_name
;aldpro_domain
;aldpro_main_repo_upgrade
;aldpro_pdc_ip
;aldpro_pdc_name
;aldpro_repo
;
astra.ald_pro.client
:aldpro_admin_password
;aldpro_domain
;aldpro_main_repo_upgrade
;aldpro_pdc_ip
;aldpro_pdc_name
;aldpro_repo
.
Последовательность применения#
Для применения указанной коллекции выполните следующие действия:
Подготовьте узлы с необходимыми техническими характеристиками.
Требования к техническим характеристикам узлов и методики расчета приведены в документе РДЦП.10101-01 95 01 «Программный комплекс «ALD Pro». Руководство администратора. Инструкция по развертыванию и обновлению», п. 1.4 «Рекомендации по планированию ресурсов службы каталога».
Подготовьте узлы к настройке с помощью Ansible:
обеспечьте доступ к узлам по SSH с использованием ключей;
разрешите на всех узлах использование sudo без ввода пароля;
Создайте каталог проекта, например:
mkdir ald-pro-enrolling
Все упомянутые ниже файлы следует создавать в каталоге проекта, если только явно не указано иное.
Создайте файл с настройками Ansible
ansible.cfg
:[defaults] collections_path = ./collections host_key_checking = false interpreter_python = /usr/bin/python3 inventory = inventory.ini
Создайте файл инвентаря
inventory.ini
и добавьте в него сведения об управляемых узлах, например:[all] dc1 ansible_host=192.168.56.101 rp1 ansible_host=192.168.56.102 client1 ansible_host=192.168.56.111 client2 ansible_host=192.168.56.112 [all:vars] ansible_python_intepreter=/usr/bin/python3 ansible_user=vagrant [controllers] dc1 [replicas] rp1 [clients] client1 client2
Создайте файл с переменными
variables.yml
, например:--- aldpro_admin_password: "aldpropass123456" aldpro_dc_site_name: "Центральный офис" aldpro_domain: "domain.example.com" aldpro_enable_gc: true aldpro_enable_syncer: true aldpro_global_forwarders: - "8.8.8.8" - "1.1.1.1" aldpro_pdc_ip: "192.168.56.101" aldpro_pdc_name: "dc1" aldpro_repo: - "deb https://dl.astralinux.ru/aldpro/frozen/01/2.2.1 1.7_x86-64 main base" aldpro_start_upgrade: false
Создайте файл зависимостей Ansible
requirements.yml
, в который добавьте ссылку на загрузку коллекцииastra.ald_pro
, например:--- collections: - name: astra.ald_pro type: git source: ssh://git@hub.astra-automation.ru:2222/aa-gca/ARFA/ald_pro.git version: 0.8.3
Установите зависимости:
ansible-galaxy collection install -r requirements.yml
Создайте файл playbook, в который добавьте роли для всех узлов домена, например:
--- - name: Enrolling ALD Pro domain controller hosts: controllers become: true vars_files: - variables.yml roles: - astra.ald_pro.controller - name: Enrolling ALD Pro domain replicas hosts: replicas become: true roles: - astra.ald_pro.replica - name: Enrolling ADL Pro clients hosts: clients become: true roles: - astra.ald_pro.client
Запустите выполнение playbook.