Puppet使用主从结构或客户端服务器结构。通过SSL(安全套接字层)互连的Puppet客户端和服务器。它是一个模型驱动的系统。
文章图片
在这里, 客户端称为Puppet代理/从属/节点, 而服务器称为Puppet主服务器。
让我们看看Puppet架构的组件:
Puppet大师
Puppet主机以Puppet代码的形式处理所有与配置相关的过程。这是一个基于Linux的系统, 其中安装了puppet master软件。Puppet大师必须在Linux中。它使用the代理将配置应用于节点。
这是检查和标记SSL证书的地方。
Puppet奴隶或特工
Puppet代理是真实的工作系统, 由客户端使用。它安装在客户端计算机上, 并由Puppet主机进行维护和管理。他们内部有一个Puppet代理服务。
【Puppet架构详细介绍】可以在任何操作系统(例如Windows, Linux, Solaris或Mac OS)上配置代理计算机。
配置资料库
Config存储库是存储所有服务器和节点相关配置的存储区域, 我们可以根据要求提取这些配置。
事实
事实是键值数据对。它包含有关节点或主机的信息。它代表a客户端状态, 例如操作系统, 网络接口, IP地址, 正常运行时间以及客户端计算机是否为虚拟机。
这些事实用于确定任何代理的当前状态。任何目标计算机上的更改都是基于事实进行的。Puppet的事实是预定义和自定义的。
目录
用Puppet编写的整个配置和清单文件将更改为编译格式。这种编译格式称为目录, 然后我们可以将此目录应用于目标计算机。
上图执行以下功能:
- 首先, 代理节点将事实发送到主服务器或服务器并请求目录。
- 主机或服务器借助主机访问的某些信息来编译并返回节点的目录。
- 然后, 代理通过检查目录中提到的每个资源, 将目录应用到节点。如果它标识了处于未处于所需状态的资源, 则进行必要的调整以修复它们。或者, 它确定在无操作模式下需要进行调整以协调目录。
- 最后, 代理将报告发送回主服务器。
文章图片
上图描述了以下内容:
- Puppet从属请求Puppet主证书。
- Puppet主服务器响应于客户端请求将主证书发送到Puppet从属。
- Puppet主服务器向Puppet从属设备请求从属证书。
- Puppet从属将请求的从属证书发送到Puppet主控。
- Puppet从属向Puppet主控发送数据请求。
- 最终, 主机根据请求将数据发送到slave。
推荐阅读
- Puppet教程入门介绍
- Mockito监视或模拟抽象类
- PowerMock模拟对象
- Mockito与EasyMock有什么区别()
- Hamcrest Matchers介绍和用法
- 行为驱动开发(BDD)
- 参数捕获器(ArgumentCaptor)
- Mockito参数匹配器
- 读取 Android 设备内核日志的方法