Список необходимых ресурсов VCD
- Organization
- VirtualDataCenter
- vApp
- StoragePolicy
- SizingPolicy
- Network
- EdgeRouter
- Catalog
Organization, VirtualDataCenter, StoragePolicy, SizingPolicy, EdgeRouter и Catalog должны быть предоставлены вашим поставщиком услуг VMware Cloud Director. Также в тенанте нужно выдать следующие права на изменение параметров ВМ (используйте инструкцию):
- guestinfo.metadata
- guestinfo.metadata.encoding
- guestinfo.userdata
- guestinfo.userdata.encoding
- disk.enableUUID
- guestinfo.hostname
Network (внутренняя сеть) может быть настроена вашим поставщиком услуг VMware Cloud Director, либо вы можете настроить ее самостоятельно. Далее рассматривается настройка внутренней сети самостоятельно.
Добавление сети
Перейдите во вкладку Networking и нажмите на кнопку NEW:
Выберите необходимый Data Center:
Network type должен быть Routed:
Присоедините EdgeRouter к сети:
Установите имя сети и CIDR:
Не добавляйте Static IP Pools, т.к. будет использоваться DHCP:
Укажите адреса DNS-серверов:
Настройка DHCP
Для динамического заказа узлов необходимо включить DHCP-сервер для внутренней сети.
Рекомендуем выделить начало диапазона адресов сети на системные нагрузки (control plane, frontend-узлы, системные узлы), а остальное выделить на DHCP-пул. Например, для сети по маске /24
будет достаточно выделения 20 адресов под системные нагрузки.
Перейдите во вкладку Networking и откройте созданную сеть:
В открытом окне откройте вкладку IP Management -> DHCP -> Activate:
Во вкладке General settings настройте параметры аналогично примеру:
Добавьте пул:
Установите адреса DNS-серверов:
Добавление vApp
Перейдите во вкладку Data Centers -> vApps -> NEW -> New vApp:
Установите имя и включите vApp:
Добавление сети к vApp
После создания vApp, необходимо присоединить к ней созданную внутреннюю сеть.
Перейдите во вкладку Data Centers -> vApps, откройте необходимый vApp:
Перейдите во вкладку Networks и нажмите на кнопку NEW:
В появившемся окне выберите тип Direct и выберите сеть:
Входящий трафик
Входящий трафик необходимо направить на edge router (порты 80, 443) при помощи правил DNAT на выделенный адрес во внутренней сети. Этот адрес поднимается при помощи MetalLB в L2 режиме на выделенных frontend-узлах.
Настройка правила DNAT на edge gateway
Перейдите во вкладку Networking -> Edge Gateways, откройте edge gateway:
Перейдите во вкладку Services -> NAT:
Добавьте следующие правила:
Первые два правила используются для входящего трафика, а третье — для доступа по SSH к узлу с control plane (без этого правила установка будет невозможна).
Настройка firewall
После настройки DNAT необходимо настроить firewall. Сначала необходимо настроить наборы IP-адресов (IP sets).
Перейдите во вкладку Security -> IP Sets:
Создайте следующий набор IP (тут подразумевается, что адрес MetalLB будет .10
а адрес узла с control plane — .2
):
Добавьте следующие правила firewall:
Шаблон виртуальной машины
Работоспособность провайдера подтверждена только для шаблонов виртуальных машин на базе Ubuntu 22.04.
На виртуальных машинах должен быть установлен пакет cloud-init
.
После запуска виртуальной машины должны быть запущены следующие службы, связанные с этим пакетом:
cloud-config.service
;cloud-final.service
;cloud-init.service
.
В примере используется OVA-файл, предоставляемый Ubuntu, с двумя исправлениями. Исправления необходимы для корректного заказа CloudPermanent-узлов и для возможности подключать диски, созданные CSI.
Подготовка шаблона из OVA-файла
Скачайте OVA-файл:
Перейдите на вкладку Libraries -> Catalogs -> Каталог организации:
Выберите скаченный шаблон и загрузите его в каталог:
Создайте виртуальную машину из шаблона:
Укажите пароль по умолчанию и публичный ключ. Это необходимо для того, чтобы войти в консоль виртуальной машины.
Для того чтобы получить возможность подключения к виртуальной машине, выполните следующие шаги:
- Запустите виртуальную машину
- Дождитесь получение IP-адреса
- Пробросьте порт 22 до виртуальной машины:
Войдите на виртуальную машину по SSH и выполните следующие команды:
echo -e '\n[deployPkg]\nwait-cloudinit-timeout=1800\n' >> /etc/vmware-tools/tools.conf
passwd -d ubuntu
passwd -d root
rm /home/ubuntu/.ssh/authorized_keys
history -c
shutdown -P now
Выключите виртуальную машину и создайте шаблон виртуальной машины:
После создания шаблона виртуальной машины, обратитесь к поставщику услуг VMware Cloud Director с просьбой включить для шаблона параметр disk.enableUUID
.
Использование хранилища
- VCD поддерживает CSI, диски создаются как VCD Independent Disks.
- Guest property
disk.EnableUUID
должно быть разрешено для используемых шаблонов виртуальных машин. - Deckhouse Kubernetes Platform поддерживает изменение размера дисков с версии v1.59.1.