【发布时间】:2018-06-03 08:08:18
【问题描述】:
当使用 Terraform(或云形成)启动 EC2 时,我们可以通过在 user_data/remote-exec 中放置一些脚本来配置 EC2。或者,我们可以使用 Ansible/Chef 等配置 EC2。在 user_data/remote-exec 中配置 EC2 和使用 Ansible/Chef 有什么区别?什么时候用前者,什么时候用后者(我知道 Ansible/Chef 是幂等的)?
就我而言,EC2 最初是手动启动的,然后使用大量 linux 命令手动配置。并且这些命令不是我配置的。现在我是使用 terraform 自动化整个结构并配置 EC2 的人。使用 user_data/remote-exec 配置 EC2 非常简单。我只需要将他们拥有的所有现有 linux 命令放入一些脚本中,并稍加改动即可。而且如果使用我的脚本配置结果不成功,至少我可以通过比较我的脚本和原来的linux命令来快速判断我是否遗漏了一些命令。但是如果我使用 ansible/chef,我必须使用不同的语言重写所有步骤。如果配置不符合预期,我很难弄清楚哪些步骤不正确,因为 ansible/chef 和 linux 命令的语法完全不同。
我的问题是,我应该使用 ansible/chef 还是 user_data/remote-exec 进行配置?
【问题讨论】: