一、Puppet基础原理
Puppet是一款使用GPLV2X协议授权的开源管理配置工具,puppet是用ruby编写的,因此puppet的语法也和ruby类似,都是很简单的面对对象的高级语言。它既可以通过客户端—服务器的方式运行,也可以独立运行。puppet可以为系统管理员提供方便,快捷的系统自动化管理。
二、puppet工作流程
客户端 puppet-client 向 puppet-master 发起认证请求,或使用带签名的证书。
puppet-master 告诉 puppet-client 是合法的。
puppet-client 调用 facter, Facter 探测出主机的一些变量, 例如主机名、 内存大小、 IP 地址等,puppet-client 将这些信息通过 SSL 连接发送到服务器端。
puppet-master 服务器端检测客户端的主机名,然后找到 manifest 对应的 node 配置,并对该部分内容进行解析。facter 送过来的信息可以作为变量处理,node 牵涉到的代码才解析,其他没牵涉的代码不解析。解析分为几个阶段,首先是语法检查,如果语法错误就报错;如果语法没错,就继续解析,解析的结果生成一个中间的“伪代码”(catelog),然后把伪代码发给客户端。
puppet-client 端接收到“伪代码”,并且执行。
puppet-client 端在执行时判断有没有 file 文件,如果有,则向 fileserver 发起请求。
puppet-client 端判断有没有配置 report,如果已配置,则把执行结果发送给服务器。
puppet-server 端把 puppet-client 端的执行结果写入日志,并发送给报告系统。
更多常见问题,敬请访问PHP中文网。
以上就是puppet是使用什么语言编写的的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2594151.html