Установка Ansible и подготовка к развертыванию ПК СВ

На компьютере, с которого будет производиться развертывание ПК СВ, должен быть обеспечен сетевой доступ к настраиваемым компьютерам.

На настраиваемых компьютерах должна быть запущена служба SSH-сервера (автоматически устанавливается и запускается, если при установке Astra Linux был выбран пункт "Средства удаленного подключения SSH").


Действия по установке и настройке системы управления конфигурациями Ansible выполняются под учетной записью администратора с высоким уровнем целостности.

Для подготовки к развертыванию ПК СВ необходимо на компьютере, с которого будет производиться развертывание, выполнить действия, описанные ниже.

  1. Установить Ansible командой:

    sudo apt install brest-ansible -t brest
    В открывшемся окне ЛИЦЕНЗИОННОЕ СОГЛАШЕНИЕ нажать на кнопку [Принять].

  2. Скопировать каталог с плейбуками Ansible в домашний каталог, выполнив команду:

    cp -r /var/lib/brest-ansible $HOME

  3. Внести необходимые изменения в файл "~/brest-ansible/inventory.ini".

    Пример

    [all:vars] 
    ### FreeIPA
    freeipa_change_hostname='true'
    freeipa_domain='m.dom'
    
    ### FreeIPA / Брест
    freeipa_admin_pass='Asdf1234'
    freeipa_brestadmin='brestman'
    freeipa_brestadmin_pass='Asdf1234'
    
    [all:hosts]
    astra100 ansible_host='10.10.10.100' ansible_user='toor' ansible_password='Asdf1234' ansible_become_pass='{{ ansible_password }}'
    astra101 ansible_host='10.10.10.101' ansible_user='toor' ansible_password='Asdf1234' ansible_become_pass='{{ ansible_password }}'
    astra102 ansible_host='10.10.10.102' ansible_user='toor' ansible_password='Asdf1234' ansible_become_pass='{{ ansible_password }}'
    astra103 ansible_host='10.10.10.103' ansible_user='toor' ansible_password='Asdf1234' ansible_become_pass='{{ ansible_password }}'
    
    [freeipa_server]
    astra100
    
    [freeipa_clients]
    astra101
    astra102
    astra103
    
    [brest_fronts]
    astra101
    astra102
    astra103
    
    [brest_nodes]
    astra101
    astra102
    astra103
    CODE

    где:

    • freeipa_change_hostname – параметр, определяющий необходимость изменить сетевое имя компьютера. Используется в процессе выполнения плейбука по установке и инициализации контроллера домена и плейбука по вводу клиентских компьютеров в домен. Если этот параметр имеет значение "true", то сетевое имя компьютера будет изменено в соответствии условным наименованием компьютера. Условные наименования компьютеров представлены в блоке параметров "[all:hosts]" (в представленном примере: "astra100" – "astra103").
    • freeipa_domain – наименование домена;
    • freeipa_admin_pass – пароль администратора домена (в качестве имени администратора домена используется значение "admin");
    • freeipa_brestadmin – имя доменной учетной записи администратора ПК СВ. Доменная учетная запись администратора ПК СВ будет создана в процессе выполнения плейбука по установке и инициализации службы сервера управления;

      В ПК СВ зарезервированы и не могут быть использованы следующие имена пользователей:

      • admin;
      • brestadmin;
      • oneadmin;
      • serveradmin.

      Кроме того, в имени пользователя не допускается использование:

      • служебных символов;
      • букв в верхнем регистре;
      • цифрового знака в начале имени пользователя.
    • freeipa_brestadmin_pass – пароль доменной учетной записи администратора ПК СВ. Доменная учетная запись администратора ПК СВ будет создана в процессе выполнения плейбука по установке и инициализации службы сервера управления;

      Пароль администратора ПК СВ должен удовлетворять следующим требованиям сложности:

      • быть длиной не менее 8 символов;
      • пароль должен содержать символы из не менее чем 3-х групп:
        • латинские буквы в нижнем регистре,
        • латинские буквы в верхнем регистре,
        • цифры,
        • служебные символы.
    • [all:hosts] – блок параметров компьютеров, на которых необходимо развернуть ПК СВ:
      • условное наименование компьютера (в представленном примере: "astra100" – "astra103");
      • ansible_host – IP-адрес компьютера;

      • ansible_user – имя локального администратора компьютера;

      • ansible_password – пароль локального администратора компьютера;

      • ansible_become_pass – пароль для команды sudo. Если совпадает с паролем администратора или пароль для sudo не требуется, оставить без изменений значение "{{ ansible_password }}";

    • [freeipa_server] – блок параметров, в котором указано условное наименование компьютера с ролью контроллера домена. Используется в процессе выполнения плейбука по установке и инициализации контроллера домена и плейбука по вводу клиентских компьютеров в домен;
    • [freeipa_clients] – блок параметров, в котором перечислены условные наименования клиентских компьютеров домена. Используется в процессе выполнения плейбука по вводу клиентских компьютеров в домен;
    • [brest-front] – блок параметров, в котором перечислены условные наименования компьютеров с ролью сервера управления. Для настройки зоны конфигурации Raft необходимо указать нечетное количество серверов управления (3 или более);
    • [brest-nodes] – блок параметров, в котором перечислены условные наименования компьютеров с ролью сервера виртуализации.

Запуск плейбуков Ansible

Установка и инициализация контроллера домена

  1. Внести необходимые изменения в файл  "~/brest-ansible/inventory.ini".
  2. Перейти в каталог с плейбуками командой: 

    cd  ~/brest-ansible

  3. Запустить плейбук:

    ansible-playbook astra_freeipa_server.yml

Ввод клиентских компьютеров в домен

Для успешного выполнения плейбука на клиентских компьютерах должна быть запущена служба NetworkManager.

  1. Внести необходимые изменения в файл  "~/brest-ansible/inventory.ini".
  2. Перейти в каталог с плейбуками командой: 

    cd  ~/brest-ansible

  3. Запустить плейбук:

    ansible-playbook astra_freeipa_client.yml

Установка и инициализация службы сервера управления

Для успешного выполнения плейбука на настраиваемых компьютерах должна быть подключен репозиторий установочного диска ПК СВ (см. Подготовка к установке программных компонентов ПК СВ).

  1. Внести необходимые изменения в файл "~/brest-ansible/inventory.ini".
  2. Перейти в каталог с плейбуками командой: 

    cd  ~/brest-ansible

  3. Запустить плейбук:

    ansible-playbook brestcloud_ipa_configure.yml

Внимание!

В процессе выполнения плейбука на настраиваемых компьютерах для локальной учетной записи администратора будет установлен максимальный уровень целостности, равный 127. 

Установка и инициализация службы сервера виртуализации

Для успешного выполнения плейбука на настраиваемых компьютерах должна быть подключен репозиторий установочного диска ПК СВ (см. Подготовка к установке программных компонентов ПК СВ).

  1. Внести необходимые изменения в файл  "~/brest-ansible/inventory.ini".
  2. Перейти в каталог с плейбуками командой: 

    cd  ~/brest-ansible

  3. Запустить плейбук:

    ansible-playbook brestcloud_ipa_kvm_nodes.yml

Внимание!

В процессе выполнения плейбука на настраиваемых компьютерах для локальной учетной записи администратора будет установлен максимальный уровень целостности, равный 127. 

Установка и инициализация зоны конфигурации Raft

Для успешного выполнения плейбука в блоке параметров [brest-front] необходимо указать нечетное количество серверов управления (3 или более);


  1. Внести необходимые изменения в файл  "~/brest-ansible/inventory.ini".
  2. Перейти в каталог с плейбуками командой: 

    cd  ~/brest-ansible

  3. Запустить плейбук:

    ansible-playbook brestcloud_raft_configure.yml