Добавление нового узла виртуализации (KVM)

Добавление нового узла виртуализации (KVM)#

Для добавления узлов виртуализации в уже установленную AIC необходимо добавить записи в файл с общей адресацией узлов и запуском нужной автоматизации.

Примечание

На сервер, который планируется добавить как узел виртуализации Брест, должна быть установлена ОС СН ALSE 1.7.6 с оперативным обновлением uu2.

В случае если ОС заранее не установлена, ее установка и настройка осуществляется так же, как и для уже существующих узлов виртуализации, согласно разделу Установка ОС на физические серверы.

Перед запуском развертывания необходимо убедиться, что все переменные относящиеся к ALD Pro и ПК СВ заполнены корректно согласно текущей инсталляции (файл /home/astra/aic-code/ansible/playbooks/group_vars/all.yml), после в файл инвентарь (/home/astra/aic-code/inventory.yml) добавить адрес нового узла виртуализации.

Примечание

В приведенном примере кода новый узел виртуализации имеет hostname aichost4 и его IP-адрес равен 192.168.22.80.

Данные о новом узле виртуализации необходимо добавить в блоки aic_default_infra и brest_kvm_nodes файла инвентаря:

---
...
aic_default_infra:
  hosts:
    aichost1:
      ansible_host: 192.168.22.74
      ansible_user: aicadmin
    aichost2:
      ansible_host: 192.168.22.75
      ansible_user: aicadmin
    aichost3:
      ansible_host: 192.168.22.76
      ansible_user: aicadmin
    aichost4:
      ansible_host: 192.168.22.80
      ansible_user: aicadmin
...
###############
# Brest hosts #
###############
...
brest_kvm_nodes:
  hosts:
    aichost1:
    aichost2:
    aichost3:
    aichost4:

В примере к 3 уже существующих узлов виртуализации добавляется еще один.

Также нужно изменить содержимое файла /home/astra/aic-code/ansible/playbooks/iscsi.yml. Стандартное содержимое файла:

---
- name: Installing ISCSI packages and obtaining IQNs
  hosts: brest_fronts, brest_kvm_nodes
  gather_facts: false
  become: true
  roles:
    - iscsi/iscsi_install_get_iqn
  tags:
    - iscsi_iqn

- name: Connecting LUNs to servers
  hosts: brest_fronts, brest_kvm_nodes
  gather_facts: false
  become: true
  roles:
    - iscsi/iscsi_conncet_lun
  tags:
    - iscsi_connect

- name: Storage creation
  hosts: brest_fronts,brest_kvm_nodes
  gather_facts: true
  any_errors_fatal: true
  become: true
  roles:
    - iscsi/iscsi_create_brest_datastore
  tags:
    - iscsi_create_datastore

Нужно изменить первый блок с именем Installing ISCSI packages and obtaining IQNs, а также второй блок с именем Connecting LUNs to servers. Они должны быть изменены следующим образом:

- name: Installing ISCSI packages and obtaining IQNs
  hosts: brest_kvm_nodes[3]
  gather_facts: false
  become: true
  roles:
    - iscsi/iscsi_install_get_iqn
  tags:
    - iscsi_iqn

- name: Connecting LUNs to servers
  hosts: brest_kvm_nodes[3]
  gather_facts: false
  become: true
  roles:
    - iscsi/iscsi_conncet_lun
  tags:
    - iscsi_connect

Примечание

Изменяется вторая строка каждого из этих двух блоков.

Предупреждение

Числом в квадратных скобках должен быть порядковый номер сервера из группы brest_kvm_nodes, отсчет начинается с «0». В данном случае мы хотим добавить 4-й сервер, по этому его порядковый номер будет равен «3».

Если планируется добавить сразу несколько дополнительных узлов виртуализации, в изменяемой строке нужно указать перечисление порядковых номеров эти узлов, корректный формат строки:

hosts: brest_kvm_nodes[3:4]

В этом примере автоматизация будет выполнятся на узлах с 4-го по 5-й узел включительно из группы brest_kvm_nodes.

Добавив строки в файл инвентарь и изменив файл /home/astra/aic-code/ansible/playbooks/iscsi.yml можно переходить к развертыванию — к серверу необходимо подключить репозитории bootstrap сервера, добавить новый сервер виртуализации как клиента ALD Pro, подключить к нему СХД (используемое ПК СВ), инициализировать его как узел виртуализации, сделать клиентом AM.

Для этого выполнить следующие команды из директории /home/astra/aic-code:

task add_repos # Добавление репозиториев bootstrap сервера
task aldpro_client # Добавление сервера как клиента КД
task iscsi_iqn # Установка пакетов iSCSI, получение IQN
task brest_kvm # Инициализация сервера как узла виртуализации
task astra_monitoring_client # Установка клиентской части Astra Monitoring

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

Примечание

Следующие шаги по настройке конфигурационных файлов LVM до перезапуска служб lvmlockd sanlock brest-lvm включительно необходимы только в случае использования хранилища типа BREST_lvm.

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

Для этого на новом узле необходимо в файле /etc/lvm/lvm.conf в строке use_lvmlockd = 0 поменять значение «0» на «1». Также в файле /etc/lvm/lvmlocal.conf нужно раскомментировать строку, содержащую host_id, параметру нужно задать уникальное значение, например «10», таким образом строка примет следующий вид:

host_id = 10

Примечание

У каждого узла управления и виртуализации ПК СВ должно быть уникальное значение параметра host_id. Для дополнительных узлов виртуализации рекомендуется указывать значения от 10 и больше.

Изменив параметры в 2-х файлах, необходимо перезапустить 3 сервиса, отвечающие за работу компонентов LVM а также работу с хранилищем ПК СВ:

systemctl restart lvmlockd sanlock brest-lvm

После этого нужно подключить 2 iSCSI LUN на которых размещены 2 хранилища ПК СВ. Для этого, находясь в директории /home/astra/aic-code необходимо выполнить команду:

task iscsi_connect

После чего необходимо снова перезапустить сервисы связанные с хранилищами:

systemctl restart lvmlockd sanlock brest-lvm

В случае если СХД ПК СВ выступает не iSCSI, вместо 2-х команд запуска автоматизации и донастройки конфигурационных файлов LVM, нужно подключить используемое ПК СВ СХД.

Последним этапов добавления нового узла виртуализации является установкой на него клиентской части Astra Monitoring. Для этого также находясь в директории /home/astra/aic-code необходимо выполнить команду:

task astra_monitoring_client