Как установить GlusterFS на AlmaLinux 9

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

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

В этом руководстве мы рассмотрим процесс установки кластера GlusterFS на серверах AlmaLinux 9. Вы настроите хранение файловой системы высокой доступности с помощью GlusterFS на серверах AlmaLinux 9.

Необходимые условия

Прежде чем приступить к работе, убедитесь, что у вас есть следующее:

  • Два или более серверов AlmaLinux 9 — В данной демонстрации используются два сервера AlmaLinux srv1 с IP-адресом 192.168.10.41 и srv2 с IP-адресом 192.168.10.42.
  • Пользователь, не являющийся root, имеет привилегии администратора root.
  • Новый диск будет использоваться GlusterFS.

Подготовка диска и раздела

Для создания кластера GlusterFS рекомендуется использовать отдельный диск. Таким образом, ваши данные всегда будут в безопасности. В следующей демонстрации используются два разных сервера, и каждый из них имеет дополнительный диск /dev/sdb.

В этом разделе будет создан новый раздел диска /dev/sdb, который будет использоваться GlusterFS.

Выполните следующую команду для проверки списка доступных дисков в вашей системе. В данном случае у нас есть два диска /dev/sda и /dev/sdb, и диск /dev/sdb будет использоваться для GlusterFS.

sudo fdisk -l

Введите следующую команду для создания нового раздела на диске /dev/sdb.

sudo fdisk /dev/sdb
  • Введите n для создания нового раздела.
  • Выберите тип раздела p для основного.
  • Для номера раздела введите 1, чтобы создать 1 раздел.
  • Для первого и последнего сектора раздела оставьте значения по умолчанию и нажмите ENTER.
  • Наконец, введите w для сохранения изменений.

Новый раздел /dev/sdb1 будет создан.

Теперь выполните следующую команду для форматирования раздела /dev/sdb1 в файловую систему ext4.

sudo mkfs.ext4 /dev/sdb1

После этого выполните приведенную ниже команду для создания нового каталога, который будет использоваться в качестве целевого каталога монтирования для /dev/sdb1.

# Run this on srv1
sudo mkdir -p /data/vol1

# Run this on srv2
sudo mkdir -p /data/vol2

Далее выполните следующую команду для монтирования /dev/sdb1 в каталог /data/vol1, затем проверьте список смонтированных файловых систем и новый каталог /data/vol1/brick0.

# Run this on srv1
sudo mount /dev/sdb1 /data/vol1
sudo df -h
sudo mkdir -p /data/vol1/brick0

Повторите команду на сервере srv2 следующим образом:

# Run this on srv2
sudo mount /dev/sdb1 /data/vol2
sudo df -h
sudo mkdir -p /data/vol2/brick0

Настройка FQDN

В этом разделе вы будете настраивать fqdn (полное доменное имя) для каждого сервера AlmaLinux, который будет использоваться для создания кластера GlusterFS,

Выполните следующую команду для настройки fqdn для каждого сервера. В данном случае сервер srv1 будет иметь fqdn srv1.hwdomain.lan, а сервер srv2 — fqdn srv2.hwdomain.lan.

sudo hostnamectl set-hostname srv1.hwdomain.lan
sudo hostnamectl set-hostname srv2.hwdomain.lan

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

sudo nano /etc/hosts

Вставьте следующую конфигурацию и не забудьте изменить данные каждого IP-адреса.

192.168.10.41 srv1.hwdomain.lan srv1
192.168.10.42 srv2.hwdomain.lan srv2

После завершения работы сохраните файл и выйдите из него.

Далее выполните следующую команду для проверки fqdn на каждом сервере и убедитесь, что fqdn указывает на правильный IP-адрес.

sudo hostname -f
ping -c3 srv1.hwdomain.lan
ping -c3 srv2.hwdomain.lan

Установка GlusterFS

Теперь вам предстоит установить пакет GlusterFS на все ваши серверы AlmaLinux, а также добавить службу GlusterFS в firewalld. Что касается дистрибутива на базе RHEL, то пакеты GlusterFS доступны в репозитории CentOS SIG (SpecialInterestGroup).

Сначала выполните приведенную ниже команду dnf, чтобы добавить репозиторий GlusterFS на свои серверы. При появлении запроса введите y и нажмите ENTER для подтверждения.

sudo dnf install centos-release-gluster9

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

sudo dnf repolist

Далее выполните следующую команду dnf для установки пакетов GlusterFS на каждый сервер. При появлении запроса введите y для подтверждения и нажмите ENTER.

sudo dnf install glusterfs glusterfs-libs glusterfs-server

Также введите y еще раз, чтобы добавить GPG-ключ репозитория GlusterFS.

После установки GlusterFS выполните приведенную ниже команду systemctl для запуска и включения службы glusterfsd.

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

Затем проверьте службу glusterfsd, чтобы убедиться, что она запущена.

sudo systemctl status glusterfsd.service

Если glusterfsd запущен, то на выходе должно появиться сообщение active (работает).

Теперь выполните приведенную ниже команду firewall-cmd для добавления порта GlusterFS и перезагрузите firewalld для применения изменений.

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

Проверьте список доступных служб на firewalld с помощью следующей команды. В случае успеха в списке служб firewalld должна появиться служба glusterfs.

sudo firewall-cmd --list-all

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

После того как служба GlusterFS запущена и firewalld настроен, необходимо инициализировать кластер GlusterFS.

На сервере srv1 выполните приведенную ниже команду gluster для инициализации кластера GlusterFS. При этом не забудьте изменить srv2.hwdomain.lan на fqdn вашего второго сервера.

sudo gluster peer probe srv2.hwdomain.lan

Если инициализация прошла успешно, должно появиться сообщение «peer probe success».

Теперь выполните следующую команду для проверки состояния кластера GlusterFS. Вы должны увидеть, что текущий кластер GlusterFS с участником srv2.hwdomain.lan server.

sudo gluster peer status

Наконец, перейдите на сервер srv2.hwdomain.lan и выполните приведенную ниже команду gluster для проверки состояния кластера GlusterFS.

sudo gluster peer status

Если установка прошла успешно, вы должны увидеть, что членом кластера GlusterFS является сервер srv1.hwdomain.lan.

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

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

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

Выполните следующую команду для создания нового тома GlusterFS testvol. Введите y и нажмите ENTER для подтверждения.

sudo gluster volume create testvol replica 2 srv1.hwdomain.lan:/data/vol1/brick0 srv2.hwdomain.lan:/data/vol2/brick0

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

sudo gluster volume start testvol

Теперь проверьте состояние тома GlusterFS с помощью следующей команды. Вы должны увидеть том testvol с двумя серверами GLusterFS srv1.hwdomain.lan и srv2.hwdomain.lan.

sudo gluster volume status

Наконец, получить подробную информацию о томе GlusterFS можно также с помощью следующей команды.

sudo gluster volume info

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

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

На клиентской машине добавьте репозиторий GlusterFS с помощью команды dnf, приведенной ниже.

sudo dnf install centos-release-gluster9

Теперь выполните приведенную ниже команду dnf для установки пакета glusterfs-client.

sudo dnf install glusterfs-client

Установив glusterfs-client, можно смонтировать том GlusterFS.

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

sudo mkdir -p /backup

Теперь выполните следующую команду для монтирования GlusterFS-тома testvol с сервера srv1.hwdomain.lan.

sudo mount.glusterfs srv1.hwdomain.lan:/testvol /backup

Проверьте список смонтированных файловых систем в системе с помощью приведенной ниже команды df.

sudo df -h

Вы должны увидеть, что том testvol с GlusterFS-сервера srv1.hwdomain.lan смонтирован в целевой каталог /backup.

Далее перейдите в каталог /backup и создайте новые тестовые файлы для обеспечения доступа на чтение и запись. Кроме того, созданные файлы будут автоматически реплицироваться на кластер GlusterFS.

cd /backup
touch file{1..5}.md
ls

На сервере srv1 выполните следующую команду для проверки списка файлов, доступных в каталоге /data/vol1/brick0.

ls /data/vol1/brick0

Если данные реплицируются, то вы должны увидеть новые файлы, созданные ранее.

Для сервера srv2 выполните команду ls следующим образом. Если репликация прошла успешно, вы должны увидеть новые файлы, доступные и на сервере srv2.

ls /data/vol2/brick0

Заключение

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

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

Поделитесь с друзьями

Добавить комментарий

0 комментариев
Новіші
Старіші Найпопулярніші
Вбудовані Відгуки
Переглянути всі коментарі
0
Ми любимо ваші думки, будь ласка, прокоментуйте.x