Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
- Astra Linux Special Edition РУСБ.10015-16 исп. 1 и 2
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.5)
- Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
Параметры стенда
Для развертывания кластера используются два подсоединённых к сети компьютера с установленной ОС Astra Linux. Каждый из этих компьютеров будет выполнять роль узла кластера, поэтому далее они будут называться Узел 1 и Узел 2.
Параметры сети:
- Сеть 192.168.23.0/24;
- gateway 192.168.23.1;
- Предполагается, что в сети отстутствует служба DNS, поэтому адреса узлов задаются с помощью файла /etc/hosts.
Параметры узлов
Параметр | Узел 1 | Узел 2 |
---|---|---|
Имя узла | tpcmk-1 | tpcmk-2 |
Статический IP-адрес узла | 192.168.23.101 | 192.168.23.102 |
Дополнительно:
- В качестве адреса кластера будет использован адрес 192.168.23.100;
- Для тестирования отказоустойчивости используется рабочая станция, подключенная к той же сети;
Настройка стенда
Настройка сетевого соединения и имен узлов
Узел 1 | Узел 2 |
---|---|
Присвоить узлу статический IP-адрес 192.168.23.101: sudo nmcli c d path 1 sudo nmcli c m path 1 ip4 192.168.23.101/24 gw4 192.168.23.1 sudo nmcli c m path 1 ipv4.method manual sudo nmcli c u path 1 | Присвоить узлу статический IP-адрес 192.168.23.102: sudo nmcli c d path 1 sudo nmcli c m path 1 ip4 192.168.23.102/24 gw4 192.168.23.1 sudo nmcli c m path 1 ipv4.method manual sudo nmcli c u path 1 |
Записать имена узлов в файл /etc/hosts: sudo sed -i '$a 192.168.23.101\tpcmk-1' /etc/hosts sudo sed -i '$a 192.168.23.102\tpcmk-2' /etc/hosts | |
Установить имя узла pcmk-1: sudo hostnamectl set-hostname pcmk-1 | Установить имя узла pcmk-2: sudo hostnamectl set-hostname pcmk-2 |
Перезагрузить узел: sudo reboot |
Установка кластерного ПО
Установить пакеты кластерного ПО:
Инициализация кластера
Инициализировать кластер:
sudo pcs cluster setup --name astracluster pcmk-1 pcmk-2 --force
STONITH (Shoot The Other Node In The Head) - технология отвечающая за физическое устранение узла из кластера обеспечивающая полное обесточивание нееисправных узлов, чтобы исключить повреждение данных. Поскольку в тесте устройства управления электропитанием не зайдествованы, эту возможность удобнее отключить, иначе будет постоянно выдаваться предупреждение, что STONITH не сконфигурирован
Посмотреть состояние узлов кластера можно командой:
Online: [ pcmk-1 pcmk-2 ]
Проверить правильность конфигурации кластера можно командой:
sudo crm_verify -L
Если узел кластера выключался/перезагружался, то считается, что узел работает нештатно, и решение о возможности его повторного включения в кластер может принять только человек. Автоматическое включение узлов в кластер не применяется. Для возврата узла в кластер требуется повторно добавить его в кластер, выполнив на нём команду:
Подготовка http-сервера Apache
Установить пакеты Apache:
Подключение ресурсов и настройка их поведения
Задать значение глобального таймаута на операции со всеми ресурсами:
“WebSite должен работать на узле, где размещён ClusterIP”:
sudo pcs constraint colocation add WebSite with ClusterIP INFINITY“Сначала запускается ClusterIP, затем WebSite”:
sudo pcs constraint order ClusterIP then WebSite
Тестирование
Тест должен продемонстрировать отказоустойчивость двухузлового кластера Active/Passive
Подготовка теста
На рабочей станции, находящейся в одной сети с кластером, создать сценарий test-request.sh следующего содержания:
#!/bin/sh while true ; do wget --no-cache -qO- http://192.168.23.100/index.html sleep 1s done
Установить созданному файлу сценария права на исполнение
Если в данный момент ресурс ClusterIP размещён на узле 1, то вывод сценарий будет таким:
Test Site - pcmk-1 Test Site - pcmk-1 Test Site - pcmk-1 Test Site - pcmk-1 Test Site - pcmk-1 Test Site - pcmk-1
Отключение от сети узла кластера
Найти узел кластера, на котором размещены ресурсы, выполнив команду на любом узле:
Test Site - pcmk-1 Test Site - pcmk-1 Test Site - pcmk-1 Test Site - pcmk-2 Test Site - pcmk-2 Test Site - pcmk-2
Включить сетевое соединение на отключённом от сети узле:
Online: [ pcmk-1 pcmk-2 ]
Выключение узла кластера
Найти узел кластера, на котором размещены ресурсы, выполнив команду на любом узле:
Если кластерные ресурсы располагались на узле 2, то выключения узла 2 ресурсы переместятся на узел 1.
Test Site - pcmk-2 Test Site - pcmk-2 Test Site - pcmk-2 Test Site - pcmk-1 Test Site - pcmk-1 Test Site - pcmk-1
Когда выключенный узел загрузится, вернуть его в кластер, выполнив на нём команду: