NAS (Network Attached Storage) — это сетевое хранилище, обеспечивающее доступ к данным на уровне файлов. NAS может быть использовано для хранения образов ВМ и связанных клонов.
Ограничения NAS
Миграция ВМ c дисками в NAS доступна только в другое NAS или файловое хранилище.
GlusterFS
Использование узлов кластера VMmanager в качестве узлов GlusterFS не поддерживается. Это может привести к:
- снижению производительности ВМ и системы хранения данных из-за конфликтов доступа к ресурсам;
- риску потери данных и снижению доступности хранилища из-за высокой нагрузки на сервер.
Логика работы
Чтобы подключить NAS к узлу кластера, на устройстве с NAS должна быть настроена NFS или кластерная файловая система. Кластерная файловая система — это система, которая может одновременно использоваться несколькими серверами. К таким системам относятся OCFS2, GlusterFS, CephFS, GFS2 и др.
Узлы кластера VMmanager получают доступ к NAS через примонтированную директорию, которая указывается при подключении хранилища.
Настройка файловой системы
В качестве примера рассматривается настройка NFS на серверах с ОС Astra Linux и AlmaLinux. Вы также можете использовать файловую систему на базе OCFS2, GlusterFS, CephFS или GFS2.
Astra Linux
Для установки и настройки NFS используйте инструкции из официальной документации Astra Linux. Настройку сервера выполните на сервере с хранилищем, настройку клиента — на узлах кластера.
При настройке конфигурационного файла /etc/exports укажите для разделяемого ресурса параметр no_root_squash:
/srv/vmshare 192.168.1.0/24(rw,sync,no_subtree_check,no_root_squash)
Если на узлах кластера включена отказоустойчивость, для монтирования хранилища выполните команды:
mount.nfs4 -o user,noauto,soft,timeo=5,retry=1 <NAS_IP>:/<NAS_DIR> /<NODE_DIR>
chmod -R 777 <NODE_DIR>
Если на узлах кластера установлена ОС Astra Linux Special Edition 1.7.4 с уровнем защищённости "Воронеж", то для директории, в которую будет примонтировано хранилище, нужно установить мандатные атрибуты командой:
pdpl-file 0:63:0:ccnr <path_to_dir>
AlmaLinux
- На сервере хранилища:
-
Создайте директорию для монтирования. Например, /mnt/nfsshare/:
mkdir -p /mnt/nfsshare
-
Установите права на доступ к директории:
chown nobody:nobody /mnt/nfsshare
chmod 777 /mnt/nfsshare
-
Установите серверное ПО NFS:
dnf update -y
dnf -y install nfs-utils
-
Запустите сервис и добавьте его в автозагрузку:
systemctl start nfs-server.service
systemctl enable nfs-server.service
-
Добавьте IP-адреса узлов кластера в конфигурационный файл /etc/exports. Для этого для каждого узла кластера выполните команду:
echo '/mnt/nfsshare <NODE_IP>(rw,async,no_subtree_check,no_root_squash)' >> /etc/exports && exportfs -vra
Пояснения к команде -
Разрешите подключения NFS в настройках файрвола:
firewall-cmd --permanent --add-port=2049/tcp
firewall-cmd --reload
-
-
На узлах кластера:
-
Установите клиентское ПО NFS:
dnf -y install nfs-utils nfs4-acl-tools
-
Запустите сервис и добавьте его в автозагрузку:
systemctl start nfs-client.target
systemctl enable nfs-client.target
-
Создайте директорию, к которой будет примонтировано хранилище. Например, /mnt/nas/:
mkdir -p /mnt/nas
-
Примонтируйте хранилище:
Если в кластере отключена отказоустойчивостьmount.nfs4 <NAS_IP>:/mnt/nfsshare /mnt/nas
Если в кластере включена отказоустойчивостьmount.nfs4 -o user,noauto,soft,timeo=5,retry=1 <NAS_IP>:/mnt/nfsshare /mnt/nas && chmod -R 777 /mnt/nas
Пояснения к командам -
Добавьте примонтированный раздел в автозагрузку. Для этого добавьте в файл /etc/fstab строку:
<NAS_IP>:/mnt/nfsshare /mnt/nas nfs defaults 0 0
Пояснения
-
Связанные статьи: