Шаблоны операционных систем (шаблоны ОС) — наборы образов диска и скриптов установки, состоящие из дистрибутива и других необходимых для установки операционной системы данных. Используются для удобства установки операционных систем на виртуальные машины.
Скачивание и обновление шаблонов ОС осуществляется на мастер-узле кластера. По умолчанию для хранения шаблонов ОС используется директория /nfsshare. Директория задаётся параметром конфигурационного файла панели управления path ostemplatedir.
Методы синхронизации шаблонов ОС
Идентичность директорий с шаблонами ОС на узлах кластера обеспечивается следующими методами:
- nfs — на каждый узел кластера монтируется директория /nfsshare основного узла. Для использования этого метода требуется установить и настроить NFS-сервер на мастер-узле кластера. Используется по умолчанию;
- rsync — при установке шаблона ОС или при добавлении узла кластера VMmanager запускает последовательную синхронизацию директорий с помощью утилиты rsync;
- distrsync — аналогично методу rsync, но синхронизация управляется утилитой панели ostdistrsync, которая выполняет параллельное обновление шаблонов на всех узлах кластера. Рекомендуется использовать при большом количестве узлов в кластере. Синхронизация шаблонов выполняется как с мастер-сервера, так и с любого узла, на котором синхронизация уже завершена. На сервере, с которого выполняется синхронизация, одновременно выполняется не более одного экземпляра rsync, что снижает нагрузку на сетевой интерфейс и дисковую подсистему;
- manual — никаких действий по синхронизации не происходит, шаблон устанавливается на мастер-узле, синхронизация директорий должна быть осуществлена пользователем.
Метод синхронизации задаётся параметром конфигурационного файла панели управления:
OsTplDistributionMethod { nfs | rsync | distrsync | manual }
При изменении типа синхронизации с nfs на rsync (distrsync) все директории с шаблонами ОС будут отмонтированы, а затем запущена синхронизация с помощью rsync (distrsync).
При изменении типа синхронизации с nfs на manual, никаких действий производится не будет, администратор должен отмонтировать директории самостоятельно. После этого необходимо перезапустить VMmanager:
/usr/local/mgr5/sbin/mgrctl -m vmmgr exit
nfs
При добавлении нового репозитория панель управления скачивает файл oslist по указанной ссылке. Файл oslist содержит список шаблонов, доступных в репозитории. Панель управления скачивает XML-файлы с именами шаблонов из списка в директорию /usr/local/mgr5/var/oscache/<имя репозитория>/<имя шаблона ОС>. После этого список шаблонов из репозитория отображается в панели управления в Настройки кластера → Шаблоны ОС.
При запуске установки шаблона ОС из панели управления, необходимые архивы данных скачиваются и распаковываются в директорию /nfsshare/<имя репозитория>/<имя шаблона ОС>.
Мастер-узел экспортирует директорию /nfsshare с помощью NFS. Для этого производятся следующие действия:
1. Определяется IP-адрес ресурса. По-умолчанию, это основной IP-адрес панели, который привязан к лицензии. Смена сервера, экспортирующего NFS, осуществляется путём добавления/изменения параметра в конфигурационном файле панели управления:
MainIp <IP-адрес>
2. При добавлении узла кластера VMmanager редактирует файл /etc/exports, добавляя туда запись с разрешением для узла кластера.
3. На добавленном узле кластера создаётся директория /nfsshare, к ней монтируется NFS-ресурс:
mount <ip-address>:/nfsshare /nfsshare
4. Редактируется файл /etc/fstab, в него добавляется строка:
<ip-address>:/nfsshare /nfsshare nfs rsize=8192,wsize=8192,timeo=14,intr 0 0
rsync, distrsync
Синхронизация шаблонов запускается при установке или обновлении шаблонов в VMmanager. Вручную добавленные на сервер шаблоны (собственные локальные шаблоны) автоматически синхронизированы не будут.
Вручную запустить команду синхронизации собственных шаблонов ОС можно следующим образом:
/usr/local/mgr5/sbin/mgrctl -m vmmgr osmgr.afterinstall