使用Chef Server维护EC2服务器

时间:2015-02-04 04:52:43

标签: amazon-web-services amazon-ec2 chef autoscaling

我有一个使用AWS EC2实例的托管主厨帐户。

实例可以通过chef-client连接到托管厨师并运行初始化 run_list,预设为一个名为servers的角色。一切都运行和安装 正确的初始条款。

我还应该提到我在ec2实例上进行了自动缩放,增加了实例数量 在“按需”的基础上提供,这很好。

我发现有一种说法很有意义,但似乎更多涉及。 https://www.youtube.com/watch?v=yHub6E4DNvg

我的问题是如何在初始配置后维护服务器。首先,如果我对我的角色进行更新以包含更多的烹饪书或配置,我将如何以简单的方式推出这个数量来说明X服务器。

其次,厨师服务器如何知道节点是否出现故障并通知管理员?

任何指导?

2 个答案:

答案 0 :(得分:0)

这是一个非常广泛的问题......

对于简单的一个:失败的节点=>解决方案是使用报告处理程序,请参阅文档here

为了保持所需状态,我们的想法是让厨师定期在节点上运行,因此它会继续强制执行cookbook中定义的conf,任何更改都会相应更新。 (这就是厨师被隐瞒的方式)。

如果您希望在以下情况下更多地控制运行哪个服务器:

  1. 使用push-jobs addon(商业插件,不是免费的)
  2. 使用一些编排工具(除了定期运行之外,我个人还使用rundeck运行adhoc)。
  3. 有很多方法可以做到这一点,使用哪一个是偏好和环境问题。

答案 1 :(得分:0)

我认为你也可以使用刀子根据一定的标准经营厨师 - 客户:

knife ssh 'role:somerole' 'chef-client' -x username -P password

以下是厨师的文档:https://docs.chef.io/knife_ssh.html