Поиск по сайту:

Как установить GlusterFS на Rocky Linux


На этой странице

  1. Необходимое условие
  2. Настройка полного доменного имени и /etc/hosts
  3. Настройка раздела
  4. Добавление репозитория GlusterFS для Rocky Linux
  5. Установка сервера GlusterFS
  6. Открытие порта с помощью Firewalld
  7. Инициализация кластера GlusterFS
  8. Создание тома GlusterFS
  9. Монтирование тома GlusterFS на клиентском компьютере
  10. Тестирование доступа для записи и высокой доступности
  11. Заключение

GlusterFS или Gluster File System — это бесплатная распределенная файловая система с открытым исходным кодом, разработанная RedHat. GlusterFS — это масштабируемая файловая система, сформированная из нескольких серверов в единую файловую систему, которая позволяет пользователям подключаться и монтировать том GlusterFS.

GlusterFS — это современная файловая система, которая может обрабатывать петабайты данных, а также проста в установке и обслуживании, а также легко масштабируется.

В этом руководстве вы узнаете, как установить GlusterFS на две системы Rocky Linux и настроить кластеризацию между двумя серверами. Мы также расскажем, как смонтировать том GlusterFS на клиентской машине.

Предпосылка

  • Два сервера Rocky Linux с дополнительным диском на каждом сервере.
  • На обоих серверах настроен пароль root.

Настройка полного доменного имени и /etc/hosts

Прежде чем начать, вам нужно будет настроить полное доменное имя и файл /etc/hosts на каждом сервере.

Ниже представлен подробный сервер, который мы будем использовать для создания кластера GlusterFS:

  • server1.localdomain.lan с IP-адресом 192.168.10.15
  • server2.localdomain.lan с IP-адресом 192.168.10.20

Чтобы настроить полное доменное имя на каждом сервере, выполните приведенную ниже команду hostnamectl.

На server1 выполните приведенную ниже команду hostnamectl.

sudo hostnamectl set-hostname server1.localdomain.lan

И на server2 выполните следующую команду.

sudo hostnamectl set-hostname server2.localdomain.lan

Затем отредактируйте конфигурацию /etc/hosts с помощью редактора nano.

sudo nano /etc/hosts

Вставьте следующую конфигурацию.

192.168.10.15 server1.localdomain.lan
192.168.10.20 server2.localdomain.lan

Сохраните файл, нажав Ctrl+X и введя Y для подтверждения.

Теперь проверьте соединение между server1 и server2, используя приведенную ниже команду ping.

ping -c3 server1.localdomain.lan
ping -c3 server2.localdomain.lan

Каждое локальное доменное имя будет преобразовано в правильный IP-адрес сервера.

Настройка раздела

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

В этом руководстве и на server1, и на server2 есть дополнительный диск /dev/vdb1 размером 5 ГБ.

Теперь отредактируйте конфигурацию /etc/fstab с помощью редактора nano, чтобы добавить свой диск.

sudo nano /etc/fstab

Для server1 диск /dev/vda1 будет подключен к каталогу /data/vol1.

/dev/vda1 /data/vol1 ext4 default 0 0

А для server2 диск /dev/vda1 будет подключен к каталогу /data/vol2.

/dev/vda1 /data/vol2 ext4 default 0 0

Затем смонтируйте диск /dev/vda1 с помощью приведенной ниже команды.

sudo mount -a

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

sudo df -h

Вы должны увидеть, что диск /dev/vda1 подключен к каталогу /data.

Теперь, прежде чем приступить к установке и настройке кластера GlusterFS, запустите приведенную ниже команду, чтобы создать каталог Brick0 внутри каталога /data.

На server1 выполните приведенную ниже команду.

sudo mkdir -p /data/vol1/brick0

Для server2 выполните приведенную ниже команду.

sudo mkdir -p /data/vol2/brick0

Добавление репозитория GlusterFS для Rocky Linux

После успешной настройки диска теперь вы будете устанавливать пакеты GlusterFS на свои серверы Rocky Linux.

Текущий Rocky Linux по-прежнему не предоставляет серверные пакеты GlusterFS, но вы можете использовать пакеты GlusterFS выпуска CentOS.

Добавьте репозиторий GlusterFS в вашу систему Rocky Linux, используя следующую команду.

sudo dnf install centos-release-gluster9

Введите y, чтобы подтвердить установку, и нажмите ENTER, чтобы продолжить.

Затем перейдите в каталог /etc/yum.repos.d/ и отредактируйте конфигурацию репозитория CentOS-Gluster-9.repo, используя nano. редактор.

cd /etc/yum.repos.d/
sudo nano CentOS-Gluster-9.repo

Измените строку baseurl, используя репозиторий Rocky Linux, и прокомментируйте строку списка зеркал, как показано ниже.

# CentOS-Gluster-9.repo
#
# Please see http://wiki.centos.org/SpecialInterestGroup/Storage for more
# information

[centos-gluster9]
name=CentOS-$releasever - Gluster 9
#mirrorlist=http://mirrorlist.centos.org?arch=$basearch&release=$releasever&repo=storage-gluster-9
baseurl=https://dl.rockylinux.org/vault/centos/8.5.2111/storage/x86_64/gluster-9/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Storage

[centos-gluster9-test]
name=CentOS-$releasever - Gluster 9 Testing
baseurl=http://buildlogs.centos.org/centos/$releasever/storage/$basearch/gluster-9/
gpgcheck=0
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Storage

Сохраните файл, нажав Ctrl+X и Y для подтверждения.

Теперь проверьте доступный репозиторий в вашей системе Rocky Linux, используя следующую команду.

sudo dnf repolist

Вы увидите репозиторий выпуска CentOS для GlusterFS 9.

Установка сервера GlusterFS

Теперь установите пакеты GlusterFS в системе Rocky Linux с помощью приведенной ниже команды dnf.

sudo dnf install glusterfs glusterfs-libs glusterfs-server

Введите Y, чтобы подтвердить установку, и нажмите ENTER, чтобы продолжить.

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

sudo systemctl enable glusterfsd.service
sudo systemctl start glusterfsd.service

Теперь проверьте статус службы glusterfsd, используя приведенную ниже команду.

sudo systemctl status glusterfsd.service

Вы увидите, что служба glusterfsd активна со статусом exited, что означает, что она запущена, но диспетчер systemd не может найти ни одного демона для мониторинга.

Открытие порта с помощью Firewalld

Прежде чем приступить к настройке кластера GlusterFS, вам необходимо открыть порт для службы GlusterFS.

В операционных системах на базе RHEL Linux приложением брандмауэра по умолчанию является firewalld, которое предоставляет инструмент командной строки firewall-cmd для управления брандмауэром.

Добавьте службу glusterfs в конфигурацию firewalld и перезагрузите firewalld с помощью приведенной ниже команды.

sudo firewall-cmd --add-service=glusterfs --permanent
sudo firewall-cmd --reload

После этого проверьте список служб на брандмауэре с помощью следующей команды.

sudo firewall-cmd --list-services

Вы увидите, что служба glusterfs добавлена в файл firewalld.

Инициализация кластера GlusterFS

Следующим шагом будет инициализация и настройка кластера GlusterFS в системах Rocky Linux.

Сначала инициализируйте кластер GlusterFS с помощью следующей команды. Эта команда должна быть запущена на сервере server1 и может быть запущена только один раз.

Используя эту команду, вы добавите server2.localdomain.lan к одноранговому узлу GlusterFS на server1. Кроме того, server2 будет автоматически инициализирован после выполнения следующей команды.

sudo gluster peer probe server2.localdomain.lan

Теперь вы должны увидеть выходное сообщение peer probe: Success.

Затем проверьте статус однорангового узла на server1 с помощью следующей команды.

sudo gluster peer status

Вы должны увидеть, что на server1 есть только один одноранговый узел.

Кроме того, запустите приведенную ниже команду на server2, чтобы проверить доступные одноранговые узлы на server2.

sudo gluster peer status

Вы должны увидеть, что на server2 есть только один узел.

Создание тома GlusterFS

После успешной инициализации кластера GlusterFS вы создадите новый том GlusterFS, который будет использоваться клиентскими машинами.

В этом руководстве вы создадите новый том с именем myvolume с репликой типа из 2 дисков с server1 и server2.

sudo gluster volume create myvolume replica 2 server1.localdomain.lan:/data/vol1/brick0 server2.localdomain.com:/data/vol2/brick0

Теперь введите y для подтверждения и нажмите ENTER, чтобы создать том GlusterFS.

Когда процесс завершится успешно, вы увидите результат, как на следующем снимке экрана.

Затем запустите том myvolume Glusterfs, используя следующую команду.

sudo gluster volume start myvolume

Вы увидите выходное сообщение volume start: myvolume: Success, что означает, что myvolume запущен.

Теперь выполните приведенную ниже команду, чтобы проверить состояние тома GLusterFS.

sudo gluster volume status

Ниже вы увидите, что статус myvolume подключен к сети и готов к использованию для клиентов.

При желании вы также можете проверить состояние тома GlusterFS, используя следующую команду.

sudo gluster volume info

Вы увидите том myvolume с типом репликации и статусом «запущен». Myvolume основан на диске на серверах server1 и server2.

Монтирование тома GlusterFS на клиентской машине

Теперь вы создали том myvolume GlusterFS. Далее вы узнаете, как настроить компьютер cline и смонтировать том GlusterFS.

В этом уроке мы будем использовать клиентскую машину с именем client.

Отредактируйте конфигурацию /etc/hosts на клиентском компьютере с помощью редактора nano.

sudo nano /etc/hosts

Вставьте следующую конфигурацию.

192.168.10.15 server1.localdomain.lan
192.168.10.20 server2.localdomain.lan

Сохраните файл с помощью Ctrl+X и введите Y для подтверждения.

Чтобы проверить соединение между клиентским компьютером и сервером GlusterFS, выполните приведенную ниже команду ping.

ping -c3 server1.localdomain.lan

вы увидите, что клиентская команда может подключиться к серверу GlusterFS.

Затем установите клиентский пакет GlusterFS из репозитория AppStream Rocky Linux с помощью следующей команды.

sudo dnf install glusterfs-client

Введите y, чтобы подтвердить установку, и нажмите ENTER, чтобы продолжить.

После завершения установки создайте новый каталог монтирования /data с помощью приведенной ниже команды.

sudo mkdir /data

Смонтируйте том myvolume GlusterFS в каталог /data с помощью приведенной ниже команды монтирования.

sudo mount.glusterfs server1.localdomain.lan:/myvolume /data

Если ошибки нет, том GlusterFS успешно подключен к вашей клиентской машине.

Выполните следующую команду, чтобы проверить том GlusterFS.

df -h

Вы увидите, что мой том GlusterFS успешно подключен к каталогу /data на клиентской машине.

Тестирование доступа для записи и высокой доступности

На клиентском компьютере перейдите в каталог /data и создайте новый файл с помощью приведенной ниже команды.

С помощью этой команды вы создадите 5 файлов в каталоге /data.

cd /data
touch file{1..5}.md

Теперь перейдите на server1 и проверьте каталог /data/vol1/brick0 с помощью следующей команды.

ls /data/vol1/brick0

Вы должны увидеть, что файл доступен на server1.

Затем выключите или завершите работу server1 с помощью следующей команды.

sudo shutdown -r now

Снова перейдите на server2 и проверьте состояние GlusterFS на server2 с помощью следующей команды.

sudo gluster peer status

Вы увидите, что одноранговый сервер server1 находится в состоянии отключен.

Проверьте доступные файлы в каталоге /data/vol2/brick0 с server2.

ls /data/vol2/brick0

Вы увидите, что все файлы от клиента также доступны на server2, что означает, что данные реплицируются с однорангового сервера.

Теперь, если вы вернетесь к клиентскому компьютеру, вы увидите, что состояние подключения к серверу GlusterFS все еще активно и работает, даже когда server1 не работает. Это означает, что высокая доступность GlusterFS выполнена успешно.

Заключение

Поздравляем! Вы успешно установили и настроили кластерное хранилище GlusterFS в системах Rocky Linux. Кроме того, вы узнали, как настроить том GlusterFS и смонтировать том GlusterFS на клиентской машине.