Что я должен использовать для управления конфигурацией в AWS

Я пытаюсь найти решение для управления конфигурацией с помощью AWS OpsWorks. Я вижу, что AWS предлагает три сервиса для OpsWorks

  1. Шеф-повар Автомат
  2. Марионетка
  3. Стеки AWS

Я прочитал основы всех трех из них, но не могу сравнить между тремя из них. Я не могу понять, когда использовать какое решение.

Я хочу реализовать решение для нескольких моих экземпляров EC2, используя которое я могу доставлять обновления всем своим экземплярам из центрального репозитория (github). И, если необходимо, откат меняется.

Итак, мои запросы следующие:

  1. Какое из трех решений лучше для этого варианта использования?
  2. Что я должен использовать, если мои экземпляры находятся в разных регионах?

Я не могу найти ничего полезного по этим темам, чтобы я мог принять решение. Было бы здорово, если бы я мог получить ссылки на некоторые полезные статьи.

Заранее спасибо.

1 ответ

Terraform, Packer и Ansible являются отличным ресурсом, я использую их каждый день для настройки AMI и построения всей моей инфраструктуры.

Terraform - Управление конфигурацией для инфраструктуры, оно позволяет вам предоставлять все компоненты AWS, Azure, GCE, необходимые для запуска приложения.

Упаковщик - создает повторно используемые образы, предварительно установив программное обеспечение, которое является общим для ваших приложений.

Ansible - управление конфигурацией до и после предоставления. Вы можете использовать Ansible с Packer для предоставления программного обеспечения в AMI, а затем, если необходимо, использовать Ansible, чтобы настроить его после предоставления. Нет необходимости в шеф-сервере или марионеточном мастере, вы можете запустить Ansible со своего рабочего стола, если у вас есть доступ к облачным серверам.

В этих примерах предоставляется вся инфраструктура для сайта Wordpress и используется Ansible для его настройки после предоставления.

https://github.com/strongjz/tf-wordpress

Все это также можно автоматизировать в конвейере Jenkins или с помощью других инструментов непрерывного развертывания, таких как CircleCI и т. Д.

Ansible не имеет ограничений по регионам, как и Terraform. Packer - это локальный инструмент сборки или на CD-сервере.

Примеры:

https://www.terraform.io/intro/examples/aws.html

https://github.com/ansible/ansible-examples

https://www.packer.io/intro/getting-started/build-image.html

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