Установка и настройка Corosync и Pacemaker на узлах кластера

19 октября 2026

ID 322765

Corosync и Pacemaker обеспечивают связь и управление ресурсами кластера для обеспечения высокой доступности. Они обеспечивают автоматическое перемещение служб на работоспособный узел в случае сбоя, сводя к минимуму время простоя.

Чтобы установить и настроить Corosync и Pacemaker на узлах кластера:

  1. На обоих узлах кластера установите необходимые пакеты:

    sudo apt install pacemaker -y

    sudo apt install crmsh -y

    sudo apt install resource-agent-extra -y

  2. Настройте Corosync и Pacemaker на обоих узлах кластера согласно официальной документации. Это включает в себя включение автоматического запуска, генерацию и распространение ключа аутентификации и настройку прав доступа для файла authkey.

    Чтобы убедиться в правильности параметров, выполните следующую команду на одном из узлов кластера:

    crm status

    Ожидаемые выходные данные должны показать статус кластера и список всех активных узлов, подтверждающий, что Corosync работает правильно и узлы обмениваются данными.

  3. На обоих узлах кластера настройте основные параметры кластера 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

  4. На обоих узлах кластера выключите запуск скриптов, которыми будет управлять Corosync:

    systemctl disable drbd.service

  5. На одном из узлов кластера создайте ресурсы на основе DRBD в Pacemaker.
    • Ресурс DRBD для klfocdata
      1. Создайте ресурс кластера для тома 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"

      2. Создаете ресурс управляемый кластером 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"

      3. Создать точку монтирования для тома 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 для klfocstate
      1. Создайте ресурс кластера для тома 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"

      2. Создайте ресурс, управляемый кластером 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"

      3. Создайте точку монтирования для тома DRBD fs_klfocstate, указав устройство, целевую директорию, тип файловой системы и параметры монтирования:

        crm configure primitive fs_klfocstate ocf:heartbeat:Filesystem params device="/dev/drbd2" \

        directory="/mnt/KlFocStateShare_klfoc" fstype="ext4" options="noatime"

  6. Определите порядок монтирования ресурсов, там где DRBD находятся в состоянии Primary. Назовите этот ресурс cluster_resources:

    crm configure colocation cluster_resources inf: fs_klfocdata ms_drbd_klfocdata:Master ms_drbd_klfocstate:Master

  7. Определите группу ресурсов и служб group_klfoc:

    crm configure group group_klfoc fs_klfocdata fs_klfocstate

  8. Настройте запуск группы ресурсов group_klfoc после соответствующих DRBD ресурсов. Назовите это правило all_after_drbd:

    crm configure order all_after_drbd inf: ms_drbd_klfocdata:promote group_klfoc:start

  9. Задайте предпочтение для запуска первичных и вторичных ресурсов: приоритет 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

  10. На обоих узлах кластера выключите автоматический запуск службы DRBD:

    systemctl disable drbd.service

Corosync и Pacemaker будут установлены и настроены на узлах кластера. После этого нужно установить СУБД и создать базу данных Сервера администрирования и базу данных IAM.

Вам помогла эта статья?
Что нам нужно улучшить?
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!
Спасибо за ваш отзыв, вы помогаете нам становиться лучше!