Я, может казаться, не нахожу информации о том, как предоставить пользовательский сценарий, который будет выполнен после установки. Есть ли примеры на этом, которое может обеспечить сообщество?
Нужно отметить, что команды здесь для 1,0 API. В 2,0 и вверх, команда:
maas <profile> machine deploy <system_id> user_data=<base64-encoded-userdata>
В зависимости от которого установщика Вы используете, МААС обеспечивает различные механизмы для настройки установки. Этот ответ предполагает использование 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
, выполненный во время этапа ввода в эксплуатацию, и который в жизненный цикл узла МААСА прибывает перед установкой. Ввод в действие обычно используется для задач администрирования, которые предназначены к не, непосредственно влияют на установку; примеры были бы: