随笔分类 -  Puppet

摘要: 在puppet的master/agent模型中,master和agent通信是以https协议通信;使用https通信就意味着要有证书验证,有证书就会有ca;在puppet的master/agent模型中,它内置了ca,意思就是我们不需要再手动搭建ca;对应master的证书,私钥文件以及ca的证书私钥文件,puppet master都会自动生成;对于agent的私钥和证书签署文件也会由puppet agent自动生成;并且在第一次启动agent时,它默认会把生成的证书签发文件发送给master,等待master签发证书;在master上签发证书,这一步需要人工手动干预;证书签发好以后,master和agent才可以正常通信; 阅读全文
posted @ 2020-12-07 19:40 Linux-1874 阅读(1270) 评论(0) 推荐(0) 编辑
摘要: 在puppet中模块的概念有点类似ansible中的角色;在puppet中模块就是把定义在一个资源清单中的各个资源拆分到不同的资源文件中,然后把对应的文件放在特定的目录中;简单讲puppet中的模块就是一个按约定的、预定义的结构存放了多个文件或子目录的目录,目录里的文件或子目录必须遵循某种命名规范;puppet会按照此种规范在特定位置查找模块所需文件,不过这些特定的目录可以通过puppet配置参数modulepath来指定; 阅读全文
posted @ 2020-12-04 23:22 Linux-1874 阅读(979) 评论(0) 推荐(0) 编辑
摘要: 整个selector语句会被当作一个单独的值,puppet会将控制变量按列出的次序依次与每个case进行比较,并在遇到一个匹配的case后,将其值作为整个语句的值进行返回,并忽略后面的其他case;控制变量与各case比较的方式和case语句相同,但如果没有任何一个case与控制变量匹配,puppet在编译时将报错,因此,我们在使用selector必须提供一个default case;控制变量只能是一个变量或一个有返回值的函数,不能使用表达式;各个case的值可以是字符串,变量,有返回值的函数,正则表达式或default; 阅读全文
posted @ 2020-12-03 23:57 Linux-1874 阅读(941) 评论(0) 推荐(0) 编辑
摘要: 我们知道一个服务的配置文件发生了变化,如果要让其配置生效,通常会重新启动服务或重新载入配置文件内容;在ansible中当一个服务的配置文件发生变化,是通过定义handler和notify来触发对应的服务执行重启或重载配置操作;在puppet中当一个服务的配置文件发生变化触发对应服务重启或重新载入配置,需要定义资源与资源间的通知或订阅关系; 阅读全文
posted @ 2020-12-02 21:14 Linux-1874 阅读(791) 评论(0) 推荐(0) 编辑
摘要: 在puppet中,资源就是指我们要操作被管控端主机的对象;puppet中的资源概念有点类似ansible中的模块,在ansible中不同模块有着不同的功能,比如用户管理,我们就要用user模块,文件管理就要用file模块,执行命令有shell模块和command模块;puppet中的资源也是类似的作用,不同的是puppet中资源是高度抽象的;所谓高度抽象就是指用户无需关心底层操作系统接口;比如我们要在被管控端安装一个nginx软件,如果用puppet来实现,我们直接使用package这个资源即可完成,用户不用考虑底层到底是windows还是centos或者ubuntu,puppet它能够自动识别,然后采用不同的安装方法; 阅读全文
posted @ 2020-12-01 23:50 Linux-1874 阅读(840) 评论(0) 推荐(2) 编辑
摘要: puppet是一个IT基础设施自动化运维工具,它能够帮助系统管理员管理基础设施的整个生命周期;比如,安装服务,提供配置文件,启动服务等等一系列操作;基于puppet,可实现自动化重复任务、快速部署关键性应用以及在本地或云端完成主动变更和快速扩展架构规模等;它遵循GPL协议(2.7.0以前),基于ruby语言开发,2.7.0以后使用apache 2.0协议; 阅读全文
posted @ 2020-11-28 23:10 Linux-1874 阅读(1513) 评论(0) 推荐(1) 编辑