工作站是管理所有Chef配置的地方。工作站上包含所有配置数据,并将这些配置数据推送到中央Chef服务器。这些配置在被推送到Chef服务器之前,在工作站上进行测试。
工作站包含了Knife命令行工具,该工具用于与Chef服务器进行交互。可以有多个工作站一起服务中央Chef服务器。
工作站负责执行以下任务:
- 编写cookbook和receipe,然后推送到中央chef服务器
- 管理中央Chef服务器上的节点配置
编写cookbook和receipe,然后推送到中央chef服务器
receipe
receipe就是一个配置。它描述了一个配置所需的所有内容。用户编写receipe,描述Chef应该如何安装、设置、管理应用程序和软件(如Apache HTTP Server、MySQL或Hadoop)。
receipe描述了应该处于特定状态的一系列资源,例如,应该安装的包、应该运行的服务、应该编写的文件。
cookbook
多个receipe组合在一起,形成cookbook。cookbook定义了一个场景,包含了支持该场景所需的一切:
- receipe
- 属性值
- 文件分布
- 模板
- 对Chef的扩展,如库、定义和自定义资源
管理中心Chef服务器上的节点配置
工作站系统具有各种命令行工具,用于控制和管理中央Chef服务器的各个方面,例如,向中心chef服务器添加新节点、从中心chef服务器删除节点、修改节点配置等操作,都可以在工作站上进行。
执行上述功能主要依赖以下模块:
Knife 工具
此命令行工具可用于与中心Chef服务器通信,执行:
- 添加、删除和更改中心Chef服务器中节点的配置
- 把cookbook上传到中央chef服务器
- 管理角色与环境
基本上,在工作站中,可以使用Knife工具管理中心chef服务器的各个方面。
本地Chef存储库
这是存储中央Chef服务器配置组件的地方。这个Chef存储库可以与中央Chef服务器同步(同样使用Knife 工具)。