Есть ли примеры сценариев пользовательской установки?

Я, может казаться, не нахожу информации о том, как предоставить пользовательский сценарий, который будет выполнен после установки. Есть ли примеры на этом, которое может обеспечить сообщество?

1
задан 16 June 2015 в 05:15

2 ответа

Нужно отметить, что команды здесь для 1,0 API. В 2,0 и вверх, команда:

maas <profile> machine deploy <system_id> user_data=<base64-encoded-userdata>
2
ответ дан 3 December 2019 в 06:41

В зависимости от которого установщика Вы используете, МААС обеспечивает различные механизмы для настройки установки. Этот ответ предполагает использование curtin установщика (также известный как установщик быстрого пути), который стал значением по умолчанию в МААСЕ 1.7.

МААС использует облако-init в качестве части его процесса установки. Существует несколько способов настроить облачное-init поведение, самое легкое существо, просто предоставляющее Сценарий Пользовательских Данных, который облако-init выполняет во время первой начальной загрузки, после того, как установка операционной системы полна.

В МААСЕ это может быть выполнено путем обеспечения user_data аргумента node start Команда CLI. Формат той команды:

maas <user> node start <node uuid> user_data=<script> distro_series=<name>

где <script> на самом деле base64-закодированная строка. Для конкретного примера, принимая Вас хотел бы запустить названный скрипт addkey.sh то, которое печатает некоторый вывод к консоли установки, импортирует ключ SSH из Панели запуска для пользователя ubuntu, и регистрирует результаты к файлу журнала:

#!/bin/sh
(
echo ======== Hi World ======================
echo ============== $(date) =================
ssh-import-id user
) | tee /my.log

Вы могли дать следующие команды:

$ script=$(base64 addkey.sh)
$ maas myuser node start node-79b67e82-d25c-11e4-a333-00163eca91de \
  user_data=$script distro_series=trusty

который в случае успеха должен возвратиться (через некоторое время) произведенный в следующем формате:

Success.
Machine-readable output follows:
{
    "status": 6, 
    "macaddress_set": [
        {
...

Теперь это запускает тот скрипт после развертывания одного определенного узла. Если требуется иметь команды, настроенные, таким образом, они работают на любом узле, который установлен через МААС, можно добавить команды, которые будут выполнены как часть late_commands строка файла конфигурации в /etc/maas/preseeds/curtin_userdata файл. Для более сложного примера, который использует этот механизм для установки двух VLAN на сетевом интерфейсе, см. http://astokes.org/customizing-fastpath-curtin-installations/.

Обратите внимание, что Curtin в настоящее время главным образом не документирован; существует однако файл обзора, который описывает часть детали его операции.

Следует иметь в виду, что этот механизм не должен быть перепутан с a comissioning script, выполненный во время этапа ввода в эксплуатацию, и который в жизненный цикл узла МААСА прибывает перед установкой. Ввод в действие обычно используется для задач администрирования, которые предназначены к не, непосредственно влияют на установку; примеры были бы:

  • микропрограммное обновление
  • тестирование исправности компонентов основного оборудования
  • запись - в
3
ответ дан 3 December 2019 в 06:41

Другие вопросы по тегам:

Похожие вопросы: