Оглавление |
---|
Информация | ||
---|---|---|
| ||
|
Аннотация
Предупреждение |
---|
Параметры стенда
Предупреждение |
---|
Для корректной работы DRBD необходимо наличие ресурсов одинакового объема на узлах |
DRBD должен быть запущен на обоих узлах. Для развертывания кластера используются два подсоединенных к сети компьютера с установленной ОС Astra Linux.
Параметр | Узел 1 | Узел 2 |
---|---|---|
Имя узла | drbd1 | drbd2 |
Статический IP-адрес узла | 10.19.1.36 | 10.19.1.39 |
При необходимости воспользоваться справочной страницей Настройка сетевых подключений в Astra Linux.
Установка DRBD
На обоих узлах:
- Установить пакет:
Command sudo apt install drbd-utils
- Подключить модуль ядра:
Command sudo modprobe drbd
Настройка репликации
Перед началом настройки сделаить резервную копию конфигурационного файла global_common.conf
инструментом cp
:
Command |
---|
|
или при помощи графического файлового менеджера Fly
.
На обоих узлах:
Указать настройки конфигурации виртуального блочного устройства DRBD в /etc/drbd.d/global_common.conf:
Блок кода |
---|
global { usage-count no; } common { net { protocol C; } } |
Настройки основного конфигурационного файла:
блок
global
содержит параметры, влияющие на работу всех ресурсов:- параметр
usage-count
отвечает за отправку статистики использования DRBD на сервера LINBIT. По умолчанию установлен вyes
. Рекомендуется изменить наno;
- параметр
блок
net
содержит параметры сетевого взаимодействия между узлами:параметр protocol указывает используемый режим репликации.
Информация DRBD допускает указание используемого протокола для ресурсов в блоке resource
файлов конфигурации ресурсов (см. ниже)
Описание остальных блоков доступно в виде комментариев в самом файле конфигурации.
Добавление ресурсов
На обоих узлах:
- Указать реплицируемый дисковый ресурс в
/etc/drbd.d/r0.res
для ресурсаr0:
Блок кода resource r0 { # здесь возможно указание значения параметра protocol если он не указан в global_common.conf on drbd01 { device /dev/drbd0; disk /dev/sdb; address 10.19.1.36:7789; meta-disk internal; } on drbd02 { device /dev/drbd0; disk /dev/sdb; address 10.19.1.39:7789; meta-disk internal; } }
Настройки конфигурационного файла ресурсов:
Конфигурационный файл подробнее:
resource
— название ресурса;on <имя_узла>
— описание первого узла:device
— блок данных, который необходимо создать;disk
— родительский жесткий диск;address
— IP-адрес и номер порта соответствующего узла;meta-disk internal
— указание хранить метаданные на этом же узле.
- Инициализировать хранилище метаданных:
Command sudo drbdadm create-md r0
- Запустить службу
drbd:
Command sudo /etc/init.d/drbd start
- Включить в автозагрузку службу
drbd:
Command echo drbd > /etc/modules-load.d/drbd.conf
Далее:
- Сделать один из узлов, наппример
drbd01
, первичным выполнив на нем:Command sudo drbdadm -- --overwrite-data-of-peer primary all
- На вторичном узле
drbd
02 проверить процесс репликации:Command watch -n1 cat /proc/drbd
Информация Остановить
watch
можно сочетанием клавиш <Ctrl+C> - Указать файловую систему для созданного виртуального блочного устройства на первичном узле:
Command sudo mkfs.ext4 /dev/drbd0
- Примонтировать устройство на первичному узле:
Command sudo mount /dev/drbd0 /srv
- для добавления
Просмотр списка задействованных ресурсов DRBD:
Command |
---|
|
более детально:
Command |
---|
|
Управление DRBD
Для управления DRBD применяется компонент drbdadm.
Основные команды:
- проверить синтаксис настроек, указанных в файле конфигурации на ошибки:
Command sudo drbdadm dump
all - задействовать служебные метаданные:
Command sudo drbdadm create-md <имя_узла>
- инициализировать службу на узле (инициализацию нужно проводить на всех узлах):
Command sudo drbdadm up
<имя_узла>использовать
down
вместоup
для выключения; - отслеживать статус синхронизации между узлами:
Command drbdadm status
- принудительно назначить узел первичным:
Command sudo drbdadm primary
<имя_узла>для назначения узла вторичным вместо
primary
указатьsecondary
;Предупреждение Использование параметра
--force
допустимо для данной команды только при первом запуске, в противном случае данные будут утеряны - Вызов справки о
drbdadm
:Command man drbdadm
Проверка работы
- Скопировать несколько файлов на узел, установленный как основной, в каталог
/srv
:Command sudo cp -r /etc/default /srv
- Отмонтировать каталог
/srv:
Command sudo umount /srv
- Установить первичному узлу роль вторичного:
Command sudo drbdadm secondary r0
- Установить вторичному узлу роль первичного:
Command sudo drbdadm primary r0
- Смонтировать ранее отмонтированный раздел:
Command sudo mount /dev/drbd0 /srv
- Убедиться в наличии ранее скопированных файлов в каталоге
/srv
:Command Title ls /etc/default
DRBD и OCFS2
Начиная с версии DRBD-8.0.08
инструмент может задействовать оба узла как первичные, что дает возможность использовать кластерные файловые системы, например OCFS2.
OCFS2 — файловая система, обеспечивающая разделяемое использование одного и того же хранилища несколькими системами.