LaunchConfiguration Userdata vs AWS :: CloudFormation :: Init - PullRequest
1 голос
/ 30 марта 2020

В шаблоне облачной информации, каковы различия между определением сценария initializazion в разделе Userdata ресурса LaunchConfiguration или использованием метаданных AWS :: CloudFormation :: Init? В каких случаях мы должны отдавать предпочтение одному другому? Давайте предположим, что мне нужно настроить элементы EC2 на основе этой LaunchConfiguration, установить tomcat и определить некоторый файл конфигурации, и, возможно, скопировать некоторые пакеты из корзины S3. Лучше сделать это через скрипт Userdata bash или через секцию AWS :: CloudFormation :: Init?

Спасибо.

1 Ответ

1 голос
/ 30 марта 2020

В конце концов, все эти подходы достигают одной и той же цели - выполнить некоторые пользовательские действия при инициализации экземпляра.

Запуск конфигурации и Запуск шаблона позволяет указать конфигурацию вашего экземпляра один раз, а затем повторно использовать ее в нескольких местах. С или без CloudFormation. Запуск конфигурации указывает c для группы AutoScaling. Если вам нужно раскрутить экземпляр, который не входит в группу автоматического масштабирования, используйте Launch Template для достижения того же результата.

Теперь в обоих вышеописанных случаях вы можете использовать либо скрипт Bash в UserData , либо AWS :: CloudFormation :: Init .

Bash в UserData - это всего лишь сценарий Bash. Если вы знакомы с ним и уверены, что можете достичь того, что вам нужно, всего за Bash - go. AWS :: CloudFormation :: Init - это абстракция более высокого уровня, упрощающая множество вещей, таких как создание файлов, права доступа и т. Д. c. Ничто из того, что вы не можете сделать, просто bash, но, безусловно, делает его проще и удобнее в обслуживании.

Следует иметь в виду одну вещь - подход bash + userdata будет работать, как и во всех облачных провайдерах, не ограничиваясь AWS. Google, Azure. - они позволят вам запускать те же скрипты с небольшими изменениями. AWS :: CloudFormation :: Init is AWS - указать c.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...