| Секция | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Введение
В статье описано создание iSCSI-хранилища данных на основе двухузлового кластера Pacemaker. Кластер используется для минимизации времени недоступности iSCSI-хранилища.
...
Кластер состоит из двух узлов: ведущего и подчинённого. Роль ведущего может выполнять любой узел (на рисунке ниже ведущим является узел pcmk-1 и , а подчинённым – pcmk-2).
| Примечание |
|---|
Термины "ведущий узел кластера" и "подчинённый узел кластера" используются только в рамках описываемого кластера iSCSI-хранилища. Сам по себе кластер Pacemaker не делит узлы на ведущие и подчинённые, для него все узлы равноправны. |
На каждом узле:
- есть диск
/dev/vdb(на компьютере и в виртуальной машине VirtualBox это будет диск/dev/sdb); - поверх диска
/dev/vdbработает DRBD-устройство; - поверх DRBD-устройства работает iSCSI-сервер.
Кластер запускает и останавливает на узлах управляет: виртуальным IP-адресом, запуском и остановкой DRBD-устройства , и iSCSI-серверы, а также управляет виртуальным IP-адресом.Один узел кластера является ведущим, второй – подчинённымсервера.
На ведущем узле: DRBD-устройство является ведущим, работает iSCSI-сервер. На подчинённом узле: DRBD-устройство является подчинённым, iSCSI-сервер остановлен.
...
Предварительная настройка
Разрешение имён
Задать имена узлов и настроить разрешение имён в соответствии со статьёй "Настройка разрешения имен и статических IP-адресов".
При тестовом создании кластера можно настроить разрешение имён с помощью файла /etc/hosts:
- На каждом узле –
...
- добавить в файл
/etc/hostsстроки:Блок кода 10.192.6.74 pcmk-1 10.192.6.75 pcmk-2 - На первом узле – установить
...
- имя узла pcmk-1:
Command sudo hostnamectl hostname pcmk-1 - На втором узле – установить
...
- имя узла pcmk-2:
Command sudo hostnamectl hostname pcmk-2
Сетевой экран
При использовании сетевого экрана должны быть открыты порты:
...
- Для установки DRBD-пакетов используется команда:
Command sudo apt install drbd-utils "drbd-$(uname -r)"
- DRBD-устройство настраивается на узлах pcmk-1 и pcmk-2 с IP-адресами, указанными в разделе "Архитектура кластера".
- Для создания DRBD-устройства используется блочное устройство
/dev/vdb. - Настраиваются глобальные настройки в файле
/etc/drbd.d/global_common.conf:Блок кода global { usage-count no; } - Настраивается ресурс "dvolume" с помощью конфигурационного файла
/etc/drbd.d/dvolume.res:Блок кода resource "dvolume" { device minor 1; meta-disk internal; net { protocol C; fencing resource-only; } handlers { fence-peer "/usr/lib/drbd/crm-fence-peer.9.sh"; unfence-peer "/usr/lib/drbd/crm-unfence-peer.9.sh"; } on "pcmk-1" { node-id 0; disk "/dev/vdb"; } on "pcmk-2" { node-id 1; disk "/dev/vdb"; } connection { host "pcmk-1" address 10.192.6.74:7789; host "pcmk-2" address 10.192.6.75:7789; } } - Для запуска DRBD-устройства – вместо команды "
sudo /etc/init.d/drbd start" используется команда:Command sudo drbdadm up dvolume
- Для назначения ведущим DRBD-устройством на текущем узле – вместо команды "
sudo drbdadm -- --overwrite-data-of-peer primary all" используется команда:Command sudo drbdadm primary --force all
Предупреждение Не создавать файловую систему и не монтировать DRBD-устройство.
...
Если произошла рассинхронизация данных на DRBD-устройствах, то тогда на узле с подчинённым DRBD-устройством выполнить команду:
...