Объединение автоматической инстиметолки cloud-init с другими облачными устройствами.init modules

Я пытаюсь подготовить виртуальную машину с cloud-init и живым образом сервера. (Я не использую облачный образ, по инфраструктурным причинам мне приходится устанавливать из ISO)

Однако всякий раз, когда я пытаюсь объединить autoinstall с, например, write_files, часть write_files, похоже, не преуспевает.

Следующая установка Ubuntu:

#cloud-config
autoinstall:
  version: 1
  identity:
    hostname: boxy-001
    password: "$1$k46kl1..."
    username: alice
  storage:
    layout:
      name: lvm
  ssh:
    install-server: true
    authorized-keys: 
      - "ecdsa-sha2-nistp256 AAAAE2...."
     
write_files:              
- content: |              
    cloud_init_has_run    
  path: /cloud_init_flag  

Но файл не записывается в /cloud_init_flag.

Отсутствуют ли модули? Является ли конфигурация облака неполной на живых ИОУ Сервера?

Edit файл записывается, но он написан в среде установки! Вместо этого я, скорее всего, должен использовать ключ autoinstall.user-data для предоставления user-data для целевой системы.

1
задан 21 June 2021 в 12:55

1 ответ

как заставить работать cloud-init в установленной системе в сочетании с автоматической установкой?

Существует ключ user-data config для файла автоматической установки .

Например, если вы хотите, чтобы ваша конфигурация write_files использовалась cloud-init в установленной системе , тогда этот фрагмент может быть включен как часть файл автоустановки.

#cloud-config
autoinstall:
  version: 1
  user-data:
    write_files:
    - content: |
        cloud_init_has_run
      path: /cloud_init_flag
...

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

  • Во время установки subiquity создаст конфигурацию для cloud-init по адресу / target / var / lib / cloud / seed / nocloud- net / user-data .
  • Во время первой загрузки установленной системы cloud-init будет использовать этот файл конфигурации для выполнения некоторых задач установки. Примечательно, что так создается первый пользователь.
  • Если раздел user-data включен в файл автоустановки, то subiquity объединит раздел пользовательских данных в сгенерированный / target Файл / var / lib / cloud / seed / nocloud-net / user-data .

Используя приведенный выше фрагмент, объединенная конфигурация привела к этому содержимому файла.

#cloud-config
growpart: {mode: 'off'}
locale: en_US.UTF-8
preserve_hostname: true
resize_rootfs: false
...
write_files:
- {content: 'cloud_init_has_run

    ', path: /cloud_init_flag}

Во время первой загрузки cloud-init действительно создал файл / cloud_init_flag с настроенным содержимым.

1
ответ дан 28 July 2021 в 11:31

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

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