Перейти к основному содержанию

Простая установка VPS с Cloud-Init


Введение EDIS Global недавно перешла от традиционной установки операционных систем из .iso к установке из .qcow2 с помощью Cloud-Init для виртуальных серверов (VPS). Изменение затрагивает большинство современных дистрибутивов с поддержкой Cloud-Init. В этой статье объясняются назначение Cloud-Init, его преимущества перед установкой из .iso и использование cloudinit_user_data для эффективного управления VPS.

Что такое Cloud-Init?

Cloud-Init — отраслевой стандарт автоматической первоначальной настройки облачных машин. Он настраивает облачную машину, например VPS, при первом запуске в процессе её создания. Cloud-Init может задавать имя хоста, добавлять пользователей и устанавливать пакеты. Он читает пользовательские данные, переданные при создании машины, и выполняет заданную настройку.

Преимущества Cloud-Init перед установкой ОС из .iso

  1. Автоматическая настройка: Cloud-Init автоматизирует настройку нового VPS, уменьшая объём ручной работы.
  2. Скорость и эффективность: машины загружаются и становятся готовыми к работе быстрее, чем при установке из .iso.
  3. Индивидуальная конфигурация: позволяет гибко настроить машину под конкретные задачи при первом запуске.
  4. Масштабирование: упрощает развёртывание и управление множеством машин; каждая может получать одинаковые или разные настройки в зависимости от переданных пользовательских данных.
  5. Совместимость с разными платформами: поддерживает различные операционные системы и подходит для разных сред.

Как работает cloudinit_user_data

Когда передавать собственные пользовательские данные

Сейчас собственные cloudinit_user_data поддерживаются через операцию set/reinstall Management API с поддерживаемым образом. Они не поддерживаются в первоначальном запросе Order API. Переустановка заменяет существующую ОС и данные; сначала сохраните всё необходимое. Чтобы настроить новый VPS без дополнительной переустановки, закажите стандартную ОС с открытым SSH-ключом и примените конфигурацию по SSH, например с помощью Ansible. См. процесс развёртывания через API. cloudinit_user_data — мощная возможность Cloud-Init, позволяющая передавать собственные настройки и скрипты, которые система выполнит при инициализации. Данные используют формат #cloud-config — файл конфигурации на основе YAML. Пояснения к примеру конфигурации:
set_hostname: задаёт имя хоста VPS. user и password: задают пользователя и пароль по умолчанию. disable_root: определяет, нужно ли отключить учётную запись root. ssh_pwauth: включает аутентификацию SSH по паролю. manage_etc_hosts: разрешает Cloud-Init управлять файлом /etc/hosts. runcmd: выполняет указанные команды при первом запуске. В этом примере изменяет срок действия пароля root и настройки SSH. users: определяет дополнительных пользователей. power_state: управляет состоянием питания машины после инициализации; здесь задана перезагрузка. package_upgrade: обеспечивает обновление всех пакетов при первом запуске.
Итоги Переход на Cloud-Init и установку из .qcow2 существенно улучшает управление VPS в EDIS Global. Cloud-Init обеспечивает более быстрое развёртывание, расширенную автоматизацию и гибкие индивидуальные настройки, повышая удобство и эффективность работы.
Внешний источник:
Последнее изменение 7 ноября 2026 г.