首页 技术 正文
技术 2022年11月10日
0 收藏 697 点赞 2,519 浏览 1094 个字

1,什么是puppet

puppet是一种Linux、Unix、windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件、用户、cron任务、软件包、系统服务等。puppet把这些系统实体称之为资源,puppet的设计目标是简化对这些资源的管理以及妥善处理资源间的依赖关系。
puppet采用C/S星状的结构,所有的客户端和一个或几个服务器交互。每个客户端周期的(默认半个小时)向服务器发送请求,获得其最新的配置信息,保证和该配置信息同步。每个puppet客户端每半小时(可以设置)连接一次服务器端, 下载最新的配置文件,并且严格按照配置文件来配置客户端. 配置完成以后,puppet客户端可以反馈给服务器端一个消息. 如果出错,也会给服务器端反馈一个消息

puppet模型由三部分组成

1 部署

2 配置语言和资源抽象层

3事务层

1.1.1部署

第一篇puppet

服务端称为puppet master,客户端称为agent端,puppet master在一台主机上守护进程的方式运行,包含所有的配置文件。agent通过标准的ssl加密和验证的连接与puppet master通信连接,接受或者拉取需要配应用的配置。

默认情况下,agent会30分钟与puppet master进行一次通信,检查新添加的主机或者新的配置。

1.1.2配置语言

配置语言小例子:

安装vim包 一个puppet的资源结构

 类型{标题:
属性 => 值,
}

具体实例:

 package{"vim":
ensure => present,
}

puppet默认提供很多资源类型,可以来管理文件,服务,软件包,以及计划任务等等。

上边的例子我们指定了属性ensure,他的值为present,ensure来指明软件包的状态,已安装,已卸载,present是告诉puppet来安装这个包,卸载的话是absent

1.1.3资源抽象层

当一个agent连接master的时候Puppet使用一个叫做Facter的工具来返回agent的信息,其中包含了操作系统,然后puppet会根据操作系统来选择合适的软件包管理工具,最后puppet会向puppetmaster汇报资源是否配置成功。

1.1.4事务层

puppet事务过程涉及每一台主机的配置过程

解释和编译配置

将编译好的配置同步到agent

在agent上面应用配置

向master汇报结果

学习puppet的网址:

http://kisspuppet.com/2014/03/04/puppet_learning_base2/

http://www.kancloud.cn/wizardforcel/puppet-27-cookbook

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,492
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,907
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,740
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,495
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,133
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,297