Сценарии
Чтобы гарантировать, что вы можете использовать функцию внедрения пользовательских данных для внедрения начальной пользовательской информации (например, пароля входа) в ECSсозданные из частного образа, установите Cloudbase-Init на ECS, который используется для создания образа.
- Если Cloudbase-Init не установлен, вы не можете настроить ECS. Вместо этого вы можете использовать только пароль в файле образа для входа в ECS.
- По умолчанию ECS, созданные из публичного образа, имеют установленный Cloudbase-Init. Вам не нужно устанавливать или настраивать Cloudbase-Init на таких ECS.
- Для ECSсозданные из внешних файлов образов, установите и настройте Cloudbase-Init, выполнив операции, описанные в этом разделе.
Cloudbase-Init — это программное обеспечение с открытым исходным кодом. Если установленная версия имеет уязвимости в безопасности, рекомендуется обновить её до последней версии.
Требования
- EIP был привязан к ECS.
- Вы вошли в ECS.
- Этот ECS использует DHCP для получения IP‑адресов.
Установите Cloudbase-Init
- В Windows Запустить меню, выберите Панель управления > Программы > Программы и компоненты и проверьте, установлен ли Cloudbase-Init 1.1.2.
- Если Cloudbase-Init 1.1.2 установлен, пропустите последующие шаги и перейдите к Настройте Cloudbase-Init.
- Если Cloudbase-Init установлен, но версия не 1.1.2, удалите Cloudbase-Init и перейдите к следующему шагу.
- Если Cloudbase-Init не установлен, перейдите к следующему шагу.
- Проверьте, является ли ОС Windows desktop.
- Включите учётную запись администратора (в качестве примера используется Windows 7).
- Нажмите Запуск и выберите Панель управления > Система и безопасность > Административные инструменты.
- Дважды щелкните Управление компьютером.
- Выберите Системные инструменты > Локальные пользователи и группы > Пользователи.
- Щелкните правой кнопкой Администратор и выберите Свойства.
- Снимите выделение Учетная запись отключена.
- Скачайте пакет установки Cloudbase-Init.
Скачайте установочный пакет Cloudbase-Init подходящей версии в зависимости от архитектуры ОС с официального сайта Cloudbase-Init (http://www.cloudbase.it/cloud-init-for-windows-instances/).
Чтобы получить стабильную версию, перейдите по следующим путям:
- 64‑бит: https://www.cloudbase.it/downloads/CloudbaseInitSetup_Stable_x64.msi
- 32‑бит: https://www.cloudbase.it/downloads/CloudbaseInitSetup_Stable_x86.msi
- Дважды щелкните по установочному пакету Cloudbase-Init.
- Нажмите Далее.
- Выберите Я принимаю условия Лицензионного соглашения и нажмите Далее.
- Оставьте путь по умолчанию и нажмите Далее.
- В Параметры конфигурации окно, введите Администратор для Имя пользователя, выберите COM1 для Последовательный порт для журналирования, и снимите Запустить службу Cloudbase-Init от имени LocalSystem.Note
Номер версии, показанный на рисунке, предоставлен только для справки.
Рисунок 1 Настройка параметров
- Нажмите Далее.
- Нажмите Установить.
- В Файлы в использовании диалоговое окно, выберите Закройте приложение и попытайтесь перезапустить их и нажмите OK.
- Проверьте, является ли версия ОС Windows desktop.
- В Завершён Мастер установки Cloudbase-Init окно, убедитесь, что ни один параметр не выбран.
Рисунок 2 Завершение установки Cloudbase-Init
NoteНомер версии, показанный на рисунке, предназначен только для справки.
- Нажмите Готово.
Настройте Cloudbase-Init
- Отредактируйте файл конфигурации C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\cloudbase-init.conf в каталоге установки Cloudbase-Init.
- Добавить netbios_host_name_compatibility=false в последнюю строку файла, чтобы имя хоста могло иметь максимум 63 символа.Note
Если вы используете NetBIOS в своей сети, имя хоста не может превышать 15 символов, поскольку у NetBIOS ограничение в 15 символов.
- Добавить metadata_services=cloudbaseinit.metadata.services.httpservice.HttpService чтобы агент мог получить доступ к источнику данных IaaS OpenStack.
- Добавить плагины для настройки плагинов, которые будут загружены. Отделяйте плагины запятыми (,). Информация, выделенная жирным, является ключевым словом каждого плагина.
- Следующие плагины загружаются по умолчанию. При необходимости можно оставить все или некоторые из них.plugins=cloudbaseinit.plugins.common.localscripts.LocalScriptsPlugin,cloudbaseinit.plugins.common.mtu.MTUPlugin,cloudbaseinit.plugins.windows.createuser.CreateUserPlugin,cloudbaseinit.plugins.common.setuserpassword.SetUserPasswordPlugin,cloudbaseinit.plugins.common.sshpublickeys.SetUserSSHPublicKeysPlugin,cloudbaseinit.plugins.common.sethostname.SetHostNamePlugin,cloudbaseinit.plugins.windows.extendvolumes.ExtendVolumesPlugin,cloudbaseinit.plugins.common.userdata.UserDataPlugin,cloudbaseinit.plugins.windows.licensing.WindowsLicensingPlugin
Функции плагина:
- LocalScriptsПлагин настраивает скрипты.
- MTUПлагин настраивает сетевые интерфейсы MTU.
- CreateUserПлагин создаёт пользователя.
- SetUserPasswordПлагин настраивает пароль.
- SetUserSSHPublicKeysПлагин настраивает ключ.
- SetHostNameПлагин настраивает имя хоста.
- ExtendVolumesПлагин расширяет дисковое пространство.
- UserDataПлагин Внедряет пользовательские данные.
- WindowsLicensingPlugin активирует Windows‑инстансы.
NoteЕсли вам нужно изменить имя хоста ECS после их создания из этого образа, и сервисы на ECS чувствительны к изменениям имени хоста, вам не рекомендуется настраивать SetHostNamePlugin здесь.
- Опциональные плагины:plugins=cloudbaseinit.plugins.windows.winrmlistener.ConfigWinRMListenerPlugin,cloudbaseinit.plugins.windows.winrmcertificateauth.ConfigWinRMCertificateAuthPlugin
Функции плагинов:
- ConfigWinRMListenerPlugin настраивает прослушивание удалённых входов.
- ConfigWinRMCertificateAuthPlugin настраивает удалённые входы без аутентификации по паролю.Caution
Плагины WinRM используют слабый криптографический алгоритм, что может привести к угрозам безопасности. Поэтому вам рекомендуется не загружать эти плагины.
- Следующие плагины загружаются по умолчанию. При необходимости можно оставить все или некоторые из них.
- (Опционально) Добавьте следующие элементы конфигурации для настройки количества повторных попыток и интервала получения метаданных:retry_count=40retry_count_interval=5
- (Опционально) Добавьте следующий элемент конфигурации, чтобы предотвратить отключения сети метаданных, вызванные маршрутом по умолчанию, добавленным Windows:[openstack]add_metadata_private_ip_route=False
- (Опционально) Если версия Cloudbase-Init 0.9.12 или новее, вы можете задать длину пароля.
Измените значение user_password_length чтобы задать длину пароля.
- (Опционально) Добавьте следующий элемент конфигурации, чтобы отключить изменение пароля при первом входе в систему:
first_logon_behaviour=no
- (Опционально) Добавьте следующий элемент конфигурации, чтобы обеспечить сохранение синхронизации времени из BIOS после перезапуска системы:
real_time_clock_utc=true
NoteЗапись реестра RealTimeIsUniversal=1 позволяет системе синхронизировать время из BIOS. Если real_time_clock_utc=true не добавлена, Cloudbase-Init будет установлен RealTimeIsUniversal назад к 0, вызывая, что система не синхронизирует время из BIOS после перезапуска.
- Добавить netbios_host_name_compatibility=false в последнюю строку файла, чтобы имя хоста могло иметь максимум 63 символа.
- Освободите текущий DHCP‑адрес, чтобы созданный ECSs могут получать корректные адреса.
В командной строке Windows выполните следующую команду, чтобы освободить текущий DHCP‑адрес:
ipconfig /release
NoteЭта операция прервет сетевое соединение и негативно повлияет на ECS использование. Сеть автоматически восстановится после ECSs запускаются снова.
- При создании образа с использованием Windows ECS, вам необходимо изменить политику SAN ECS к OnlineAll. В противном случае, диски EVS, подключённые к ECS, созданные из образа, могут быть офлайн.
Windows имеет три типа политик SAN: OnlineAll, OfflineShared, и OfflineInternal.
Таблица 1 Политики SAN Тип
Описание
OnlineAll
Все недавно обнаруженные диски автоматически выводятся в онлайн.
OfflineShared
Все диски на совместно используемых шинах, таких как iSCSI и FC, по умолчанию остаются офлайн, тогда как диски на несовместимых шинах остаются онлайн.
OfflineInternal
Все недавно обнаруженные диски остаются офлайн.
- Выполнить cmd.exe и выполнить следующую команду для запроса текущей политики SAN ECS с использованием DiskPart:
diskpart
- Выполните следующую команду для просмотра политики SAN ECS:
san
- Если политика SAN OnlineAll, выполните exit команду для выхода из DiskPart.
- Если политика SAN не OnlineAll, перейдите к 3.c.
- Выполните следующую команду для изменения политики SAN ECS на OnlineAll:
san policy=onlineall
- Выполнить cmd.exe и выполнить следующую команду для запроса текущей политики SAN ECS с использованием DiskPart:
- Сценарии
- Требования
- Установить Cloudbase-Init
- Настроить Cloudbase-Init