Экспорт существующего экземпляра EC2 в CloudFormation json / yaml - PullRequest
1 голос
/ 25 мая 2020

Проблема:

У меня запущен экземпляр EC2, и я внес в него некоторые изменения: установлен docker, установочные каталоги для сертификатов и т. Д. c. Теперь я хочу создать такой же экземпляр, но использовать инфраструктуру в качестве участников кода. Вместо того, чтобы запоминать все сделанные мной дополнения и создавать шаблон вручную, я пытаюсь найти способ экспортировать мой текущий экземпляр EC2 в формат json или yaml, чтобы я мог завершить этот экземпляр и создать другой тот, который эквивалентен работающему.

Я пробовал:

aws ec2 describe-instances

Чтение через AWS CLI Документы EC2

Чтение документов CloudFormation

Searched Google

Searched SO

Ответы [ 4 ]

3 голосов
/ 26 мая 2020

Один из вариантов - создать AMI из живого экземпляра и развернуть новый стек CF с помощью AMI.

Другой вариант - импорт ресурса: https://aws.amazon.com/blogs/aws/new-import-existing-resources-into-a-cloudformation-stack/

1 голос
/ 26 мая 2020

Поскольку вы не знаете, как был настроен экземпляр, единственный выбор - создать образ машины Amazon (AMI) . Это создаст точную копию диска, поэтому все, что вы установили, будет доступно для любых новых экземпляров, запускаемых из AMI. Затем шаблон CloudFormation можно настроить для запуска экземпляров с использованием этого AMI.

Если, с другой стороны, вы знали все команды, которые необходимо было выполнить для настройки экземпляра, вы могли бы предоставить Сценарий пользовательских данных , который запускается при первой загрузке новых экземпляров. Это приведет к автоматической настройке экземпляров и является рекомендуемым способом настройки экземпляров, поскольку его легко изменить и позволяет экземплярам запускаться с последней версией операционной системы.

Такой сценарий может быть предоставлен как часть Шаблон CloudFormation.

См .: Выполнение команд на вашем Linux инстансе при запуске - Amazon EC2

0 голосов
/ 26 мая 2020

Существует инструмент (все еще в стадии бета-тестирования), разработанный AWS, который называется CloudFormer :

CloudFormer - это бета-инструмент для создания шаблонов, который создает шаблон AWS CloudFormation из существующих AWS ресурсов в вашей учетной записи . Вы выбираете любые поддерживаемые ресурсы AWS, которые работают в вашей учетной записи, и CloudFormer создает шаблон в корзине Amazon S3.

CloudFormer - это AWS управляемый шаблон . После запуска шаблон создаст для вас AWS::EC2::Instance вместе с рядом других связанных ресурсов. Вы получите доступ к экземпляру, используя URL-адрес через браузер , а мастер AWS проведет вас оттуда.

В этом руководстве даже показано, как создать шаблон CloudFormation из существующего экземпляра EC2.

0 голосов
/ 26 мая 2020

Импортируйте экземпляр EC2 в CloudFormation, затем скопируйте его шаблон.

Подробнее: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import.html

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