Настройка DRBD с двумя жесткими дисками
Создание раздела диска
Создание раздела диска с MBR-разметкой
Для создания раздела диска с MBR-разметкой необходимо выполнить следующие действия:
-
на каждом головном сервере выполнить команду:
sudo fdisk <DISK_2>
где <DISK_2> — наименование второго диска (например, /dev/sdb)
-
ввести следующие значения:
-
в Command ввести n, нажать Enter, чтобы создать новый раздел
-
в Select нажать Enter, чтобы установить тип primary
-
в Partition number нажать Enter, чтобы задать номер раздела по умолчанию
-
в First sector нажать Enter, чтобы задать значение первой секции по умолчанию
-
в Last sector нажать Enter, чтобы задать значение последней секции по умолчанию
-
в Command ввести w, чтобы записать внесенные изменения
Пример вывода команды:
admin@ivcs-main:~$ sudo fdisk /dev/sdb Welcome to fdisk (util-linux 2.36.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0x3121c27e. Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): Using default response p. Partition number (1-4, default 1): First sector (2048-10485759, default 2048): Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-10485759, default 10485759): Created a new partition 1 of type 'Linux' and of size 5 GiB. Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.
-
Создание раздела диска с GPT-разметкой
Для создания раздела диска с GPT-разметкой необходимо выполнить следующие действия:
-
на каждом головном сервере выполнить команду:
sudo gdisk <DISK_2>
где <DISK_2> — наименование второго диска (например, /dev/sdb)
-
ввести следующие значения:
-
в Command выбрать n, нажать Enter, чтобы создать новый раздел
-
в Partition number нажать Enter, чтобы задать номер раздела по умолчанию
-
в First sector нажать Enter, чтобы задать значение первой секции по умолчанию
-
в Last sector нажать Enter, чтобы задать значение последней секции по умолчанию
-
в Hex code or GUID нажать Enter, чтобы задать значение типа раздела файловой системы по умолчанию
-
в Command ввести w, чтобы записать внесенные изменения
-
в Do you want to proceed? ввести y, чтобы сохранить изменения
Пример вывода команды:
admin@ivcs-main:~$ sudo gdisk /dev/sdb GPT fdisk (gdisk) version 1.0.6 Warning: Partition table header claims that the size of partition table entries is 0 bytes, but this program supports only 128-byte entries. Adjusting accordingly, but partition table may be garbage. Warning: Partition table header claims that the size of partition table entries is 0 bytes, but this program supports only 128-byte entries. Adjusting accordingly, but partition table may be garbage. Partition table scan: MBR: not present BSD: not present APM: not present GPT: not present Creating new GPT entries in memory. Command (? for help): n Partition number (1-128, default 1): First sector (34-20971486, default = 2048) or {+-}size{KMGTP}: Last sector (2048-20971486, default = 20971486) or {+-}size{KMGTP}: Current type is 8300 (Linux filesystem) Hex code or GUID (L to show codes, Enter = 8300): Changed type of partition to 'Linux filesystem' Command (? for help): w Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!! Do you want to proceed? (Y/N): y OK; writing new GUID partition table (GPT) to /dev/sdb. The operation has completed successfully.
При выводе команды возможно появление предупреждения, которое можно проигнорировать:
Warning: Partition table header claims that the size of partition table entries is 0 bytes, but this program supports only 128-byte entries.
Adjusting accordingly, but partition table may be garbage. -
Настройка PARTUUID
Настройка PARTUUID не актуальна, начиная с версии Платформы IVA MCU 24.0 |
Если настройка PARTUUID выполняется впервые, то для получения необходимого опыта рекомендуется сначала выполнить действия, описанные в данном разделе, на тестовом стенде |
Головные серверы должны иметь одинаковые версии и разметки дисков |
Для настройки PARTUUID необходимо выполнить следующие действия:
-
привести PARTUUID для раздела на втором диске, где не содержится запись LABEL=”ivcs”, к одному виду, выполнив следующие действия:
Настройка раздела диска актуальна только для кластеров следующих типов:
-
Active/Active/DBStandBy+InternalClusterFS(DRBD)
-
Active/Active/ExternalDB+InternalClusterFS(DRBD)
Раздел для второго диска необходимо создать до выполнения данной инструкции (подробнее в разделе Создание раздела диска) -
определить тип разметки второго диска, где не содержится запись LABEL=”ivcs”, по полю Disklabel type для каждого головного сервера (на каждом головном сервере разметка диска должна быть одинаковой), выполнив команду:
sudo fdisk -l
-
зафиксировать на первом головном сервере значение поля Disk identifier для раздела второго диска, где не содержится запись LABEL=”ivcs”
Пример вывода команды:
-
для диска с MBR-разметкой:
Disk /dev/sdb: 16 GiB, 17179869184 bytes, 33554432 sectors Disk model: Virtual disk Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x595efb6c
-
для диска с GPT-разметкой:
Disk /dev/sdb: 20 GiB, 21474836480 bytes, 41943040 sectors Disk model: VMware Virtual S Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: C06E3D1F-99CB-4C31-B93B-4EBE4E84987C
-
-
для диска с MBR-разметкой выполнить следующие действия:
-
на втором головном сервере выполнить команду:
sudo fdisk <DISK_2>
где <DISK_2> — наименование второго диска (например, /dev/sdb), где не содержится запись LABEL=”ivcs”
-
в Command ввести x
-
в Expert command ввести i
-
в Enter the new disk identifier ввести значение, зафиксированное ранее, из поля Disk identifier для второго диска, где не содержится запись LABEL=”ivcs”
-
в Expert command ввести r
-
в Command ввести w
Пример вывода команды:
admin@ivcs-main:~$ sudo fdisk /dev/sdb Welcome to fdisk (util-linux 2.38.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): x # enter x to go to expert menu Expert command (m for help): i # enter i to change identifier Enter the new disk identifier: 0x60123f76 Disk identifier changed from 0x595efb6c to 0x60123f76. Expert command (m for help): r # enter r to return to main menu Command (m for help): w # enter w to write change to MBR The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.
Данное предупреждение появляется в случае, если диск уже используется, и не влияет на ход смены идентификатора.
This disk is currently in use - repartitioning is probably a bad idea. It’s recommended to umount all file systems, and swapoff all swap partitions on this disk.
The device contains 'drbd' signature and it will be removed by a write command. See fdisk(8) man page and --wipe option for more details.
-
проверить на втором головном сервере изменение значения поля Disk identifier для раздела второго диска, где не содержится запись LABEL=”ivcs”, выполнив команду:
sudo fdisk -l
-
-
для диска с GPT-разметкой выполнить следующие действия:
-
на первом головном сервере выполнить команду:
sudo blkid
-
зафиксировать значение поля PARTUUID для раздела на втором диске, где не содержится запись LABEL=”ivcs”
Пример вывода команды:
/dev/sda2: LABEL="ivcs" UUID="7f6b85bc-4aac-4560-8dcf-1f27351b3dcf" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="primary" PARTUUID="bf7d47ac-1af5-4e94-af5e-9d376145adf3" /dev/loop0: TYPE="squashfs" /dev/loop1: TYPE="squashfs" /dev/sda1: UUID="A390-F19C" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="primary" PARTUUID="b7de2aee-7027-4d09-a377-06b15a78b5af" /dev/sdb1: PARTLABEL="Linux filesystem" PARTUUID="9b44dbef-cfb7-45ae-b88f-ad80612f4c6f"
-
на втором головном сервере выполнить команду:
sudo gdisk <DISK_2>
где <DISK_2> — наименование второго диска (например /dev/sdb), где не содержится запись LABEL=”ivcs”
-
в Command ввести x
-
в Expert command ввести c
Поле Partition number пропущено, так как предполагается, что второй диск имеет всего один раздел -
в Enter the partition’s new unique GUID ввести значение из поля PARTUUID (указывается без кавычек), зафиксированное ранее
-
в Expert command ввести m
-
в Command ввести w
-
в Do you want to proceed? ввести y
Пример вывода команды:
admin@ivcs-main:~$ sudo gdisk /dev/sdb GPT fdisk (gdisk) version 1.0.6 Partition table scan: MBR: protective BSD: not present APM: not present GPT: present Found valid GPT with protective MBR; using GPT. Command (? for help): x # enter x to change to experts menu Expert command (? for help): c # enter c to change PARTUUID Using 1 # use partition 1 because there is only one partition Enter the partition's new unique GUID ('R' to randomize): 9b44dbef-cfb7-45ae-b88f-ad80612f4c6f New GUID is 9b44dbef-cfb7-45ae-b88f-ad80612f4c6f Expert command (? for help): m # enter m to go back to main menu Command (? for help): w # enter w to write the change to disk Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!! Do you want to proceed? (Y/N): y # enter y to agree OK; writing new GUID partition table (GPT) to /dev/sdb. The operation has completed successfully.
-
проверить на втором головном сервере изменение значения поля PARTUUID для раздела второго диска, где не содержится запись LABEL=”ivcs”, выполнив команду:
sudo blkid
-
-
-
для подключения / переподключения локального файлового хранилища выполнить следующие действия:
-
зафиксировать значение поля PARTUUID для раздела второго диска, где не содержится запись LABEL=”ivcs”
Убедиться, что значение поля PARTUUID для раздела второго диска, где не содержится запись LABEL=”ivcs”, имеет одинаковое значение на каждом головном сервере для кластеров Active/Active/DBStandBy+InternalClusterFS(DRBD) и Active/Active/ExternalDB+InternalClusterFS(DRBD), выполнив команду:
sudo blkid
Пример вывода команды:
-
для диска с MBR-разметкой:
/dev/sda1: LABEL="ivcs" UUID="8e8205f4-1744-44cc-b5f2-e9f42f30940f" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="595efb6c-01" /dev/loop0: TYPE="squashfs" /dev/loop1: TYPE="squashfs" /dev/drbd0: UUID="a1654946-b89d-4ad6-9032-6773f4fbd993" BLOCK_SIZE="4096" TYPE="ext4" /dev/sdb1: UUID="d709a0fd2cd6f173" TYPE="drbd" PARTUUID="4f86d2e0-01"
-
для диска с GPT-разметкой:
/dev/sda2: LABEL="ivcs" UUID="7f6b85bc-4aac-4560-8dcf-1f27351b3dcf" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="primary" PARTUUID="bf7d47ac-1af5-4e94-af5e-9d376145adf3" /dev/loop0: TYPE="squashfs" /dev/loop1: TYPE="squashfs" /dev/sda1: UUID="A390-F19C" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="primary" PARTUUID="b7de2aee-7027-4d09-a377-06b15a78b5af" /dev/sdb1: PARTLABEL="Linux filesystem" PARTUUID="9b44dbef-cfb7-45ae-b88f-ad80612f4c6f"
-
-
выполнить подключение / переподключение локального файлового хранилища
Для DRBD предварительно на каждом головном сервере необходимо:
-
выполнить команду sudo iva-cli configurator unlock
-
выполнить скрипт по сборке DRBD на одном из головных серверов. Для головного сервера необходимо в ключе --backbone-device указать значение /dev/disk/by-partuuid/<PARTUUID>, где <PARTUUID> — значение поля PARTUUID для раздела второго диска (указывается без кавычек), где не содержится запись LABEL=”ivcs” (подробнее в разделе Процесс сборки DRBD)
-
-
сохранить изменения, выполнив команду на каждом головном сервере:
sudo iva-cli live save-changes
Если программное обеспечение компании IVA Technologies установлено на серверы с ОС Astra Linux, то команду sudo iva-cli live save-changes выполнять не требуется -
Если данная инструкция выполняется на собранных кластерах Active/Active/DBStandBy+InternalClusterFS(DRBD) или Active/Active/ExternalDB+InternalClusterFS(DRBD), а также, если перед выполнением инструкции система была загружена с неверного диска, то необходимо поочередно перезагрузить головные серверы, предварительно переведя один из них в режим StandBy (подробнее в разделе Полезные команды) |