Cloud-init и сетевые настройки облачного экземпляра¶
cloud-init — механизм первоначального конфигурирования экземпляра облачной виртуальной машины. В НАЙС.ОС CLOUD есть собственный RPM-пакет cloud-init и профиль niceos-cloud.cfg. При этом фактический способ генерации сети (renderer, datasource, периодичность изменения файлов) нужно проверять на конкретном образе.
Почему это важно¶
Если адрес задаёт облачный провайдер через метаданные, а администратор вручную изменяет .network, при перезапуске экземпляра или повторной инициализации настройки могут вступить в конфликт. В результате сеть работает до следующей загрузки, после чего адрес неожиданно меняется.
Диагностика (без изменения системы)¶
rpm -q cloud-init
command -v cloud-init || true
cloud-init status --long 2>/dev/null || true
systemctl list-unit-files 'cloud-*'
networkctl status
ls -l /etc/cloud /etc/cloud/cloud.cfg.d 2>/dev/null
journalctl -b -u cloud-init --no-pager -n 100
Если cloud-init не установлен в данном образе, это не ошибка. Наличие SPEC в каталоге исходников не означает, что он обязательно включён в конкретный ISO.
Как установить источник истины¶
- Посмотрите, присутствует ли в выводе
networkctl status ens3путь к.network, созданному cloud-init. - Проверьте, записывает ли поставщик образа сетевую конфигурацию при первой загрузке.
- Определите, задаётся ли сеть через облачные метаданные, DHCP или статический профиль внутри ОС.
- Уточните, требуется ли после изменения сети удалять/сбрасывать состояние cloud-init. Делать это без проверки нельзя: изменение instance-id и пользовательских данных может вызвать повторную настройку и перезапуск скриптов.
Практическое правило¶
Для стандартного облачного образа сначала изменяйте конфигурацию в штатной системе управления виртуальными машинами, а не переписывайте сетевые файлы в гостевой ОС. Если требуется локальная статическая конфигурация, согласуйте способ с настройками cloud-init, затем подтвердите поведение после перезагрузки.
Непроверенные рецепты
Не выполняйте cloud-init clean --logs и не отключайте network config одной скопированной командой: это меняет повторную инициализацию экземпляра. В этом руководстве такие изменения намеренно не предлагаются до проверки niceos-cloud.cfg и образа.
См. сетевая диагностика и первый запуск.