0

我们在 AWS 上配置了整个基础设施,其中包括在公共子网中配置的用于 Web 前端、AD、DC、ADFS 代理等的一堆 Windows 服务器,以及配置为私有子网的少数数据库服务器。私有子网可以通过 NAT 服务器访问 Internet。参考架构与此非常相似:

http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Scenario2.html#Configuration-2

现在,在所有这些 Windows 机器上安装 Chef 客户端并在托管 Chef 上管理这些服务器的最佳方法/策略是什么?

我了解“WinRC”可以在公共子网上的所有服务器上使用,以与 Chef 托管服务器进行通信。但是对于私有子网上的服务器,自动推出 Chef 客户端并维护它们的最佳策略是什么?

4

1 回答 1

1

Chef 客户端和 Chef 服务器之间的所有通信,无论是托管的还是私有的,都是客户端通过端口 80 和 443 从服务器拉取的。客户端使用出站流量每隔几分钟轮询一次;您可以更改轮询间隔。

在默认的 AWS NAT 子网中,有一条出站规则允许所有端口的所有流量到 Internet 上的任何目的地,例如 0.0.0.0/0。如果您已将其锁定,则可以打开端口 80 和 443。

Chef 文档 - 防火墙和端口...

以下部分描述了独立配置中 Chef 服务器所需的端口: ...

80, 443, ... nginx

nginx 服务用于管理到 Chef 服务器的流量,包括用于内部和外部 API 请求/响应路由的虚拟主机、外部附加请求路由以及前端和后端组件之间的路由。

另一件事——如果您在此子网中引导节点,例如,从干净的 AWS AMI 进行“裸机”构建,执行此操作的正常方法是通过从 Chef 服务器运行的刀命令。它由管理员从具有对新节点的入站访问权限的工作站手动运行。为了在自动缩放等场景中实现自动化,该方法是使用您自己的自定义 AWS AMI 在启动时将 Chef 客户端安装到节点上。

于 2015-05-21T23:52:02.587 回答