Подготовка хранилища для развертывания zVirt
|
Необходимо заранее подготовить хранилище объёмом не менее 55 ГиБ, которое будет использоваться как домен хранения данных для развертывания ВМ HostedEngine. После развертывания рекомендуется добавить дополнительные домены данных для хранения дисков ВМ. Домен данных hosted_storage предназначен только для хранения дисков ВМ HostedEngine. |
В доменах данных хранятся виртуальные жесткие диски и файлы OVF всех виртуальных машин и шаблонов центра данных. Домены данных не могут одновременно использоваться несколькими центрами данных когда они активны (но могут быть перенесены между центрами данных). Домены данных нескольких типов хранения могут быть добавлены в один и тот же центр данных при условии, что они являются общими, а не локальными доменами. Поддерживаются следующие типы хранилищ:
-
NFS;
-
ISCSI;
-
Fibre Channel (FCP);
-
Gluster Storage.
|
При использовании протокола iSCSI, домен хранения hosted_storage должен использовать выделенный iSCSI target. Любые дополнительные домены хранения должны использовать отдельные iSCSI target. |
В случае появления следующей ошибки во время установки:
[ ERROR ] Error: Fault reason is "Operation Failed". Fault detail is "[Physical device initialization failed. Please check that the device is empty and accessible by the host.]". HTTP response code is 400.
Выполнить инициализацию системы хранения при помощи команды:
dd if=/dev/zero of=/dev/mapper/LUN_ID bs=1M count=200 oflag=direct (1)
| 1 | /dev/mapper/LUN_ID - путь до LUN |
|
Будьте аккуратны при выполнении этой операции: не выполняйте её на LUN, содержащим важные данные. |
1. Подготовка хранилища NFS
Следующие шаги универсальны для семейства Unix-подобных операционных систем на базе ядра Linux. Для уточнения конкретных шагов обратитесь к официальному руководству ОС.
-
Создайте каталог (должно быть доступно более 55 ГиБ свободного места):
mkdir -p /storage/domain -
Установите права доступа:
chown vdsm:kvm /storage/domain chmod 0775 /storage/domain -
Опубликуйте каталог, прописав его в конфигурационном файле
NFS-сервера:echo "/storage/domain *(rw,anonuid=36,anongid=36)" >> /etc/exports (1)1 При необходимости замените anonuidиanongidна актуальные для vdsm и kvm на вашем сервере. -
Убедитесь в правильности задания параметров доступа:
cat /etc/exports -
Запустите необходимые сервисы:
systemctl enable nfs-server systemctl enable rpcbind systemctl enable nfs-blkmap systemctl restart nfs-server systemctl restart rpcbind systemctl restart nfs-blkmap -
Создайте правила межсетевого экрана для обеспечения доступности хранилища для других хостов:
firewall-cmd --permanent --add-service=nfs firewall-cmd --permanent --add-service=mountd firewall-cmd --permanent --add-service=rpc-bind firewall-cmd --reloadЕсли в качестве среды исполнения используется не zVirt Node, то необходимо создать служебных пользователей и группы (если они не созданы):
groupadd sanlock -g 179 groupadd kvm -g 36 useradd sanlock -u 179 -g 179 -G kvm useradd vdsm -u 36 -g 36 -G sanlock
2. Подготовка хранилища iSCSI
zVirt поддерживает хранилища доступные по протоколу iSCSI. Хранилища после добавления в среду виртуализации как домены хранения будут использоваться в качестве Volume Group (VG), состоящие из одного или более LUN (PV).
Volume Group (VG) и LUN (PV) не могут одновременно использоваться несколькими доменам хранения.
В настоящее время zVirt не поддерживает хранилище с размером блока 4K, поэтому необходимо сконфигурировать хранилище в legacy mode (512b block). Если ваш хост загружается из хранилища SAN и теряет связь с хранилищем, файловые системы хранилища становятся доступными только для чтения и остаются в этом состоянии после восстановления соединения.
Для предотвращения подобной ситуации рекомендуется добавить в файл конфигурации службы multipath wwid загрузочного LUN, для обеспечения постановки его в очередь при наличии соединения:
multipaths {
multipath {
wwid LUN_ID
no_path_retry queue
}}
3. Подготовка FCP-хранилища
zVirt поддерживает хранилища, доступные по протоколу Fibre Channel. Хранилища после добавление в среду виртуализации как домены хранения будут использоваться в качестве Volume Group (VG), состоящие из одного или более LUN (PV).
В настоящее время zVirt не поддерживает хранилище с размером блока 4K, поэтому необходимо сконфигурировать хранилище в legacy mode (512b block). Если ваш хост загружается из хранилища SAN и теряет связь с хранилищем, файловые системы хранилища становятся доступными только для чтения и остаются в этом состоянии после восстановления соединения.
Для предотвращения подобной ситуации рекомендуется добавить в файл конфигурации службы multipath wwid загрузочного LUN, для обеспечения постановки его в очередь при наличии соединения:
multipaths {
multipath {
wwid LUN_ID
no_path_retry queue
}}
4. Подготовка Gluster Storage
|
Поддержка Gluster оказывается только для zVirt 4.2 и выше. |
Информацию по настройке Gluster Storage см. в официальной документации, учитывая следующие особенности - тома Gluster Storage должны использовать либо трехстороннюю репликацию, либо арбитражную репликацию. Такой вариант снижает риск возникновения split-brain в кластере.
Поддерживаются следующие типы томов:
-
трехсторонне реплицированные и распределенные реплицированные тома (replica 2 или 3)
-
арбитражные реплицированные или распределенные арбитражные реплицированные тома (replica 2 arbiter 1)
Дополнительно необходимо назначить следующие настройки для тома:
gluster volume set VOLUME_NAME group virt
gluster volume set VOLUME_NAME performance.strict-o-direct on
gluster volume set VOLUME_NAME network.remote-dio off
gluster volume set VOLUME_NAME storage.owner-uid 36
gluster volume set VOLUME_NAME storage.owner-gid 36
gluster volume set VOLUME_NAME network.ping-timeout 30
5. Настройка multipath в соответствии с рекомендациями производителя системы хранения данных
Вы можете настроить параметры конфигурации multipath в соответствии с требованиями и рекомендациями производителя системы хранения данных. Эти настройки могут отключать как параметры, определенные по умолчанию, так и параметры, указанные в файле /etc/multipath.conf. Чтобы отключить определенные параметры multipath, не вносите изменения в файл /etc/multipath.conf. Служба VDSM управляет файлом /etc/multipath.conf, установка или обновление VDSM может привести к перезаписи этого файл, включая все содержащиеся в нем настройки. Такая перезапись может привести к сбоям в работе с системой хранения данных. Вместо этого создайте файл в каталоге /etc/multipath/conf.d, который будет содержать параметры, которые вы хотите изменить или отключить.
VDSM выполняет файлы в каталоге /etc/multipath/conf.d в определенном порядке. Для того, чтобы контролировать порядок выполнения, создавайте файлы с именем, которые начинается с цифр, что позволит выполнить его последним по порядку. Например, /etc/multipath/conf.d/90-fcdevice.conf.
В целях исключения серьезных сбоев в работе с системой хранения данных, следуйте следующим рекомендациям:
-
Не изменяйте файл /etc/multipath.conf. Если файл содержит пользовательские изменения, и файл будет перезаписан, это может вызвать сбои в работе с системой хранения данных.
-
Не переопределяйте настройки
user_friendly_namesиfind_multipaths. -
Не переопределяйте параметры
no_path_retryиpolling_interval, если этого не требует производитель системы хранения данных.
-
VDSMнастроен на использование модуляmultipath. Для того, чтобы проверить это выполните команду:vdsm-tool is-configured --module multipath -
Создайте новый конфигурационный файл в каталоге /etc/multipath/conf.d.
-
Скопируйте отдельные параметры, которые вы хотите отключить, из файла /etc/multipath.conf в новый конфигурационный файл /etc/multipath/conf.d/<example>.conf. Удалите все знаки комментариев (
#), отредактируйте значения параметров и сохраните изменения. -
Примените новые настройки с помощью команды:
systemctl reload multipathd
| Не перезапускайте службу multipathd - это приводит к появлению ошибок в журналах VDSM. |
6. Рекомендуемые настройки для multipath
Не изменяйте следующие настройки:
-
user_friendly_names no- имена устройств должны быть одинаковыми для всех гипервизоров, например,/dev/mapper/{WWID}. Значение по умолчанию -no, предотвращает назначение произвольных и непоследовательных имен устройств, таких как/dev/mapper/mpath{N}на разных гипервизорах, что может привести к непредсказуемому поведению системы. Не изменяйте значение параметраuser_friendly_namesнаyes, т.к. такие пользовательские имена устройств могут привести к непредсказуемому поведению системы или сбоям. -
find_multipaths no- параметр определяет, пытается ли zVirt получить доступ к устройствам черезmultipathесли доступно более одного пути. Текущее значение -no, позволяет zVirt получать доступ к устройствам черезmultipath, даже в том случае, если доступен только один путь.
Не изменяйте следующие параметры, если это не требуется производителем системы хранения данных:
-
no_path_retry 4- параметр определяет количество попыток для повторного опроса при отсутствии доступных путей. -
polling_interval 5- параметр определяет количество секунд между попытками опроса, для определения состояния пути до устройства. Если производитель не предоставил четкой причины для увеличения значения, оставьте значение по умолчанию, для того, чтобы система быстрее реагировала на сбои пути.