Установка и настройка Corosync и Pacemaker на узлах кластера
Corosync и Pacemaker обеспечивают связь и управление ресурсами кластера для обеспечения высокой доступности. Они обеспечивают автоматическое перемещение служб на работоспособный узел в случае сбоя, сводя к минимуму время простоя.
Чтобы установить и настроить Corosync и Pacemaker на узлах кластера:
- На обоих узлах кластера установите необходимые пакеты:
sudo apt install pacemaker -y
sudo apt install crmsh -y
sudo apt install resource-agent-extra -y
- Настройте Corosync и Pacemaker на обоих узлах кластера согласно официальной документации. Это включает в себя включение автоматического запуска, генерацию и распространение ключа аутентификации и настройку прав доступа для файла authkey.
Чтобы убедиться в правильности параметров, выполните следующую команду на одном из узлов кластера:
crm status
Ожидаемые выходные данные должны показать статус кластера и список всех активных узлов, подтверждающий, что Corosync работает правильно и узлы обмениваются данными.
- На обоих узлах кластера настройте основные параметры кластера Pacemaker:
crm configure property stonith-enabled="false"
crm configure property symmetric-cluster="false"
crm configure rsc_defaults resource-stickiness="110"
crm configure rsc_defaults migration-threshold=3
crm configure property no-quorum-policy=ignore
- На обоих узлах кластера выключите запуск скриптов, которыми будет управлять Corosync:
systemctl disable drbd.service
- На одном из узлов кластера создайте ресурсы на основе DRBD в Pacemaker.
- Ресурс DRBD для klfocdata
- Создайте ресурс кластера для тома DRBD
klfocdata, что позволит кластеру автоматически управлять своим состоянием и отслеживать его работоспособность:crm configure primitive drbd_klfocdata ocf:linbit:drbd params drbd_resource="klfocdata" \
op monitor interval="60s" op start interval="0" timeout="240s" op stop interval="0" \
timeout="240s" op monitor role=Master interval="10s" op monitor role=Slave interval="30s"
- Создаете ресурс управляемый кластером
ms_drbd_klfocdataна основе созданного ресурсаdrbd_klfocdata:crm configure ms ms_drbd_klfocdata drbd_klfocdata meta master-max="1" master-node-max="1" \
clone-max="2" clone-node-max="1" notify="true"
- Создать точку монтирования для тома DRBD
fs_klfocdata, указав устройство, целевую директорию, тип файловой системы и параметры монтирования:crm configure primitive fs_klfocdata ocf:heartbeat:Filesystem params device="/dev/drbd0" \
directory="/mnt/KlFocDataShare_klfoc" fstype="ext4" options="data=journal"
- Создайте ресурс кластера для тома DRBD
- Ресурс DRBD для klfocstate
- Создайте ресурс кластера для тома DRBD
klfocstate, что позволит кластеру автоматически управлять своим состоянием и отслеживать его работоспособность:crm configure primitive drbd_klfocstate ocf:linbit:drbd params drbd_resource="klfocstate" \
op monitor interval="60s" op start interval="0" timeout="240s" op stop interval="0" \
timeout="240s" op monitor role=Master interval="10s" op monitor role=Slave interval="30s"
- Создайте ресурс, управляемый кластером ms_drbd_klfocstate, на основе созданного ресурса
drbd_klfocstate:crm configure ms ms_drbd_klfocstate drbd_klfocstate meta master-max="1" master-node-max="1" \
clone-max="2" clone-node-max="1" notify="true"
- Создайте точку монтирования для тома DRBD
fs_klfocstate, указав устройство, целевую директорию, тип файловой системы и параметры монтирования:crm configure primitive fs_klfocstate ocf:heartbeat:Filesystem params device="/dev/drbd2" \
directory="/mnt/KlFocStateShare_klfoc" fstype="ext4" options="noatime"
- Создайте ресурс кластера для тома DRBD
- Ресурс DRBD для klfocdata
- Определите порядок монтирования ресурсов, там где DRBD находятся в состоянии Primary. Назовите этот ресурс
cluster_resources:crm configure colocation cluster_resources inf: fs_klfocdata ms_drbd_klfocdata:Master ms_drbd_klfocstate:Master
- Определите группу ресурсов и служб
group_klfoc:crm configure group group_klfoc fs_klfocdata fs_klfocstate
- Настройте запуск группы ресурсов
group_klfocпосле соответствующих DRBD ресурсов. Назовите это правилоall_after_drbd:crm configure order all_after_drbd inf: ms_drbd_klfocdata:promote group_klfoc:start
- Задайте предпочтение для запуска первичных и вторичных ресурсов: приоритет 100 для
node1и 50 дляnode2:crm configure location loc_klfocdata_one ms_drbd_klfocdata 100: db1 # hostname of the first cluster node
crm configure location loc_klfocdata_two ms_drbd_klfocdata 50: db2 # hostname of the second cluster node
crm configure location loc_klfocstate_one ms_drbd_klfocstate 100: db1 # hostname of the first cluster node
crm configure location loc_klfocstate_two ms_drbd_klfocstate 50: db2 # hostname of the second cluster node
crm configure location loc_group_one group_klfoc 100: db1 # hostname of the first cluster node
crm configure location loc_group_two group_klfoc 50: db2 # hostname of the second cluster node
- На обоих узлах кластера выключите автоматический запуск службы DRBD:
systemctl disable drbd.service
Corosync и Pacemaker будут установлены и настроены на узлах кластера. После этого нужно установить СУБД и создать базу данных Сервера администрирования и базу данных IAM.