Machine image customization controller#
Machine image customization controller - это контроллер для настройки образов в DropApp Plus. Отвечает за управление и обновление образов контейнеров, развернутых в кластере. Он может использоваться для настройки параметров образа, таких как переменные окружения, секреты и другие настройки конфигурации. Работая с Machine image customization controller, можно легко внести изменения в образы контейнеров в кластере DropApp Plus без необходимости повторного развертывания всего приложения.
Последовательность выполнения#
Сетевые данные для каждого хоста должны быть в формате NMState под ключом с именем nmstate в секрете, указанном в networkDataName в поле PreprovisioningImage.
Все PreprovisioningImage файлы с меткой infraenvs.agent-install.openshift.io будут проигнорированы этим контроллером.
Сгенерированные URL-адреса являются случайными и изменятся при перезапуске контроллера.
Сохраняется только файл Ignition для каждого образа. При получении HTTP-запроса веб-сервер генерирует поток с архивом CPIO, содержащим файл Ignition и добавленный к initramfs. Поддерживаются запросы диапазона HTTP.
Настройки среды#
Требуются следующие переменные среды:
IRONIC_AGENT_IMAGE;DEPLOY_ISO;DEPLOY_INITRD.
Опциональны следующие переменные среды:
IRONIC_BASE_URL;IRONIC_INSPECTOR_BASE_URL;IRONIC_AGENT_PULL_SECRET;IRONIC_AGENT_VLAN_INTERFACES;IRONIC_RAMDISK_SSH_KEY;REGISTRIES_CONF_PATH;IP_OPTIONS;HTTP_PROXY;HTTPS_PROXY;NO_PROXY.
Запуск контроллера#
Двоичный файл контроллера - /machine-image-customization-controller.
Для настройки используются следующие флаги командной строки:
-namespace- пространство имен, который отслеживает контроллер для согласования ресурсовpreprovisioningimage;-images-bind-addr- адрес и порт для привязки к веб-серверу;-images-publish-addr- адрес, с которого клиенты будут получать доступ к конечной точке образа.
Статическая работа#
Существует также отдельный двоичный файл, /machine-image-customization-server, который запускает веб-сервер с использованием статических конфигурационных файлов, а не как контроллер DropApp Plus.
Для настройки используются следующие флаги командной строки:
-nmstate-dir- расположение статических файлов NMState;-images-bind-addr- адрес и порт для привязки к веб-серверу;-images-publish-addr- адрес, с которого клиенты будут получать доступ к конечной точке образа.
Результат#
Machine image customization controller настроен и успешно запускается.