Назад | Перейти на главную страницу

как отключить выполнение пользовательских данных с помощью cloud-init

Я создаю новый AMI в EC2 и хочу отключить на нем все, что может быть помещено в пользовательские данные при запуске (или перезагрузке) из этого AMI. Я посмотрел на существующие /etc/cloud/cloud.cfg и /etc/cloud/cloud.cfg.d/* но не вижу, где это включено (возможно, оно включено по умолчанию). Как я могу перенастроить cloud-init, чтобы запретить это или даже разрешить повторное включение? Подозреваю, мне тоже нужно отключить #cloud-config. Нужно ли мне для этого отключить весь пакет cloud-init?

редактировать:

Я буду использовать Amazon Linux и Ubuntu в различных AMI.

edit2:

Похоже, мне нужно отключить все из user-data. Может, так будет проще.

edit3:

Я действительно хочу иметь доступ к user-data в мой скрипты.

Это мой нынешний прием - не слишком элегантный, но он работает:

patch /usr/lib/python2.7/dist-packages/cloudinit/stages.py <<EOF
@@ -469,7 +469,6 @@
     def consume_data(self, frequency=PER_INSTANCE):
         # Consume the userdata first, because we need want to let the part
         # handlers run first (for merging stuff)
-        self._consume_userdata(frequency)
         self._consume_vendordata(frequency)

         # Perform post-consumption adjustments so that
EOF

Более элегантный способ сделать это - создать файл с именем cloud-config.txt в / вар / библиотека / облако / экземпляры / {идентификатор-вашего-экземпляра} , со следующим содержанием:

#cloud-config   
# from 1 files
# cloud-config.txt

--- cloud_final_modules:
-   - scripts-user
    - never 
...