以下是正在使用的chef-server(opensource)的硬件配置。
4 GB of RAM;
5 GB of free disk space in /opt;
5 GB of free disk space in /var;
Chef-server version installed 11.6;
守护程序中所有正在运行的chef-client的节点可以使用这个主厨服务器吗? 单个厨师服务器是否可以处理300-500的节点?
我已经看到在厨师官方文档中指定了3种配置方案(Standalone,HA,Tiered),我们决定使用哪种方案?采用分层配置是否有任何特定原因,是否允许更多节点?
答案 0 :(得分:2)
我在这个大小的开源厨师服务器上有42个节点并且它表现良好但是在引导具有复杂运行列表/角色分配的节点时,我遇到了一些问题。
这个环境包括 - 20个独角兽/ nginx节点(高度复杂的设置) - 2个redis节点(简单设置) - 3个mysql节点(中等复杂设置) - 15个mongodb节点(中等复杂设置) - 2个nginx节点(简单设置)
这是我的独角兽/ nginx节点的样子草图。我会称之为高度复杂的设置。 - 使用数据库,加密数据包,git repos,模板创建5个独角兽和nginx端点。 - 创建nodejs端点 - 使用数据库和加密的数据库创建linux 10用户 - 设置日志轮换 - 在我的生态系统中基于mysql mongo和redis服务器设置配置文件 - 为该NFS安装创建NFS安装脚本备份 - 和20或其他基本的系统管理员类型任务
我环境中的所有节点都以标准的1800秒间隔签到Chef服务器。降低此间隔将增加服务器的负载。如果您跨越间隔的阈值小于所有节点或您的节点完成其厨师 - 客户端运行所需的时间,那么您的性能问题将会滚雪球。
我在同时引导多个复杂的新节点时遇到了瓶颈,因为几乎每个配方都必须采取行动,例如调用远程repos,设置目录权限,服务重启,chkconfig更新,写出配置文件等。 / p>
当要求厨师服务器使用Chef搜索功能找到符合特定条件的主机时,我遇到了厨师 - 客户端运行的性能瓶颈。例如,搜索数据库(mysql,redis等)主节点以获取该框的FQDN或IP,以便Chef可以继续进行数据库从设置。我通过减少搜索次数并搜索标签为的Chef标签解决了这些问题。
考虑问: "可接受的刀具自举多少分钟?" "可接受的厨师 - 客户运行多少分钟?" "什么是我最复杂的厨师烹饪书/运行清单?"帮助指导您的绩效分析
答案 1 :(得分:1)
Chef documentation有时可能会混淆什么是什么,什么不包括在内作为免费特征。作为免费选项,您只能选择Chef服务器独立,无需复制,无HA,无需分析且无分层配置。随着Chef 12的发布,改变了分发opensource Chef和Enterprise Chef的方式。现在只有一个Chef服务器,并且高级功能作为插件安装(能够为少数节点自由尝试其中一些)。
回答你的问题,我没有经历过同一Chef服务器管理的超过40-50个节点的经验,但我认为它不是非常需要资源,你应该能够管理400-500个节点没有大型机器,如果您关注节点何时收敛以平衡负载与Chef服务器的关系,那就更多了。