Создание хранилища через CLI

После развертывания HOSTVM используйте данное руководство для создания нового хранилища для виртуальных машин с использованием CLI.

Для обеспечения отказоустойчивости рекомендуется вариант настройки на трех либо кратном трем количестве серверов (3, 6, 9, 12 и т.д.), приведенный в данном руководстве.

Создание дополнительных записей имен серверов

На каждый из серверов будущего кластера и на ВМ engine добавить в файлы /etc/hosts записи следующего вида:

192.168.120.10    glusternode1    glusternode1.localdomain
192.168.120.11    glusternode2    glusternode2.localdomain
192.168.120.12    glusternode3    glusternode3.localdomain
  • glusternode1-3 имя нод SDS (второе имя для серверов и их ip-адреса на выделенных под SDS интерфейсах).

  • Опционально можно прописать все имена на DNS-сервере.

Разметка дискового пространства

Допустим, что под новое хранилище виртуальных машин datastore мы хотим выделить 3ТБ.

Для размещения используем рейд-массив дисков, представленный в виде устройства /dev/sdX.

На каждом из серверов создадим logical volume под виртуальные машины:

pvcreate /dev/sdX
vgcreate datavg /dev/sdX
lvcreate -L 3072G -n datastore_lv datavg
mkfs.xfs -l size=512 /dev/mapper/datastore_lv
mkdir -p /data/gluster/datastore
  • datavg – имя новой volume группы

  • datastore_lv – имя логического тома в составе группы datavg

  • /data/gluster/datastore - точка монтирования

После того, как созданы том и файловая система, следующий шаг – создать запись в /etc/fstab:

/dev/mapper/datavg-datastore_lv    /data/gluster/datastore    xfs    defaults 0 0

И примонтировать том:

mount -a

На каждом из серверов создать директории под брики и запустить службы sds:

mkdir /data/gluster/datastore/brick
systemctl start glusterd && systemctl enable glusterd

Открыть требуемые для работы порты на каждом сервере:

firewall-cmd --zone=public --add-port=24007-24008/tcp --permanent
firewall-cmd --zone=public --add-port=24009/tcp --permanent
firewall-cmd --zone=public --add-port=111/tcp --permanent
firewall-cmd --zone=public --add-port=139/tcp --permanent
firewall-cmd --zone=public --add-port=445/tcp --permanent
firewall-cmd --zone=public --add-port=965/tcp --permanent
firewall-cmd --zone=public --add-port=2049/tcp --permanent
firewall-cmd --zone=public --add-port=38465-38469/tcp --permanent
firewall-cmd --zone=public --add-port=631/tcp --permanent
firewall-cmd --zone=public --add-port=111/udp --permanent
firewall-cmd --zone=public --add-port=963/udp --permanent
firewall-cmd --zone=public --add-port=49152-49251/tcp --permanent
firewall-cmd --zone=public --add-service= nfs --permanent
firewall-cmd --zone=public --add-service=samba --permanent
firewall-cmd --zone=public --add-service=samba-client --permanent
firewall-cmd --reload

Инициализация хранилища:

Дальнейшая настройка осуществляется с одного из серверов будущего кластера т.е. приведённые ниже команды нужно запускать только с одного из серверов.

В примере команды выполняются с glusternode1.

Добавить ноды sds в зону видимости друг друга:

root@glusternode1:~# gluster peer probe glusternode2
root@glusternode1:~# gluster peer probe glusternode3

Инициализировать хранилище datastore командой :

root@glusternode1:~# gluster volume create datastore replica 3 glusternode1:/data/gluster/datastore/brick glusternode2:/data/gluster/datastore/brick glusternode3:/data/gluster/datastore/brick

Применить следующие настройки для хранилища datastore:

root@glusternode1:~# gluster volume set datastore cluster.quorum-type auto
root@glusternode1:~# gluster volume set datastore network.ping-timeout 10
root@glusternode1:~# gluster volume set datastore auth.allow \*
root@glusternode1:~# gluster volume set datastore group virt
root@glusternode1:~# gluster volume set datastore storage.owner-uid 36
root@glusternode1:~# gluster volume set datastore storage.owner-gid 36
root@glusternode1:~# gluster volume set datastore server.allow-insecure on
root@glusternode1:~# gluster volume set datastore features.shard on
root@glusternode1:~# gluster volume set datastore features.shard-block-size 512MB
root@glusternode1:~# gluster volume start datastore

Добавление хранилища через web-интерфейс портала администрирования

Убедиться, что в настройках кластера, на котором развернуто хранилище, включена опция:

Compute > Clusters > выбрать кластер > нажать кнопку Edit > вкладка General > Enable Gluster Service

После применения настроек создать новое хранилище на подготовленном ранее томе:

Compute > Storage > Storage Domains > нажать кнопку New Domain

  • В качестве Storage type указать GlusterFS

  • Указать имя хранилища

  • В поле Path указать путь к созданному тому (имя сервера и имя тома sds): glusternode1:/datastore

  • В поле Mount options указать остальные ноды : backup-volfile-servers=glusternode2:glusternode3

Last updated