puppet

2022-05-14 15:00:15 浏览数 (1)

puppet三板斧:资源、类、模板 与saltstack的对比。 介绍、基础、实战、进阶 1、puppet是一个开源的跨平台的集中化的配置管理工具,发布于2005,目前最新版本为6.3。puppet是基于ruby语言的。在2012年的时候,puppet与Openstack整合。 2、目前puppet已拥有300 客户,包括twitter、oracle、Google、RedHat,国内有新浪、阿里巴巴、腾讯、百度、小米、豆瓣等。 3、puppet管理一台主机的整个生命周期,包括初始化安装、升级、维护、服务迁移。在puppet世界中,一台主机的每个生命周期内的每个动作都被抽象成一个资源。我们需要维护一台主机上的每个资源。 4、puppet的组织结构:

image.png

5、puppet基本结构:

image.png

6、puppet是如何工作的:

image.png

定义:使用Puppet特定的语言定义基础配置信息。通常我们把这些信息写在Modules中。

模拟:在配置执行之前检测代码,但不真正执行。

执行:按定义的配置自动部署。检测并记录下所发生变化的部分。

报告:将期待的变化、实际发生的变化及任何修改发送给报告系统。

7、puppet的数据流走向:

image.png

image.png

image.png

--所有的交互过程都是建立在签发证书的前提下执行的。 --Puppet通信都采用SSL安全加密协议,以保障所有数据传输的安全性。 8、证书申请,客户端安装完后执行puppet apply --test指令后,自动向服务端申请证书 。如果服务端一直不签发证书,客户端会每2分钟请求一次。 9、服务端、客户端的配置文件都是puppet.conf,有三个部分,通用配置main、客户端配置agent、服务端配置master。 fileserverconfig:配置服务端目录的访问权限。 manifestdir:读取的入口文件。 reportdir:客户端信息的目录 reports:报告方式,log日志

image.png

runinterval:时间

image.png

image.png

10、site.pp文件的形式:exec、package资源。import xx.pp导入其他文件。node xx{}节点

image.png

11、namespaceauth.conf 名称空间

image.png

ACL:auth.conf

image.png

image.png

autosign.conf设置自动发配证书

image.png

fileserver.conf

image.png

12、安装上,支持window7、server2003和其他大部分linux系统。

安装ruby和Puppet,开放8140端口,

--noop 看下语法有没有问题

13、根据环境设置:

image.png

image.png

14、资源、类、模板:资源。

file、service、package、exec、user、group、cron、notify:支持50 种资源,常用的这8种。增删改文件目录、启动停止服务、安装软件、执行指令、用户组管理、定时任务管理

image.png

有控制语法:if、case、变量赋值等。

file1->service1

15、多个资源组合成一个类,多个类组成一个模块。

16、模板:ERB模板,根据服务器硬件信息制定不同配置。

vim nginx.conf.erb

worker_processes <%= @processorcount %>;

17 Puppet forge模块

image.png

18节点

image.png

image.png

19、Facter的作用就是获取服务器信息,包括主机名、IP地址、内存大小、操作系统等。

20、

yum install -y ruby-devel ruby-libs rubygems

rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm

服务端安装:yum install -y puppet-server puppet facter

客户端安装:yum install -y puppet facter

客户端第一次执行--test时的证书签发过程

image.png

服务端上的证书列表

image.png

zookeeper的模板文件

image.png

zookeeper资源类

image.png

zookeeper节点配置

image.png

zookeeper客户端执行结果

image.png

服务端收到执行结果报告

image.png

image.png

0 人点赞