我应该在AWS上使用什么来进行配置管理

时间:2018-01-03 05:51:36

标签: amazon-web-services amazon-ec2 automation aws-opsworks

我正在尝试使用AWS OpsWorks找到配置管理的解决方案。我可以看到AWS为OpsWorks提供了三种服务

  1. Chef Automate
  2. 木偶
  3. AWS堆栈
  4. 我已经阅读了所有这三个基础知识,但无法比较其中三个。我无法理解何时使用哪种解决方案。

    我想为我的多个EC2实例实现一个解决方案,使用它我可以从中央存储库(github)向我的所有实例提供更新。并且,如果需要,回滚更改。

    以下是我的疑问:

    1. 这三个解决方案中哪一个最适合这个用例?
    2. 如果我的实例位于不同的地区,我该怎么用?
    3. 我无法找到有关这些主题的任何有用信息,以便我可以做出决定。如果我能够获得一些有用的文章的链接,那将是很好的。

      提前致谢。

1 个答案:

答案 0 :(得分:0)

TerraformPackerAnsible是一个很好的资源,我每天都会使用它们来配置AMI并构建我的所有基础架构。

Terraform - 基础架构配置管理,它允许您配置运行应用程序所需的所有AWS,Azure,GCE组件。

Packer - 通过预安装应用程序常用的软件来创建可重用的图像。

Ansible - 配置前后配置管理。您可以使用Ansible with Packer在AMI中配置软件,然后在需要时使用Ansible在配置后对其进行配置。如果您有权访问云服务器,则无需使用厨师服务器或木偶主服务器即可从桌面运行Ansible。

此示例为Wordpress站点提供了所有基础结构,并使用Ansible在配置后配置它。

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

所有这些都可以在Jenkins pipeline或其他连续部署工具(如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