Puppet原理

  Puppet是一个或者多个master,众多client,所有的客户端都定期(默认为30分钟)使用facter工具把

客户端的基本信息,通过https的xmlrpc协议发送给服务器端,服务器端通过分析客户端主机名,找到该主机

的配置代码,然后编译配置代码,把编译好的配置代码发送回客户端,客户端执行代码完成配置,并且把代码

执行情况反馈给puppet服务器端。

注释:xmlrpc是使用http协议作为传输协议的rpc机制,使用xml文本的方式传输命令和数据。

安装配置

环境

系统版本

# cat /etc/redhat-release
CentOS release 6.6 (Final)

在Master和Client设置Hosts
Puppet要求所有机器有完整的域名,如果没有DNS服务器提供域名的话,可以在机器上设置主机名
(注意:要先安装Puppet之前设置主机名,因为安装Puppet时会把主机名写入证书,客户端和服务端通信需要这个证书),为了简化安装 直接配置/etc/hosts

#vim /etc/hosts

10.20.0.80 master01.test.com
10.20.0.81 client01.test.com  

系统配置
在Master和Client上面均关闭selinux,iptables:
===================Stop Iptables========================

# service iptables stop
# chkconfig iptables off

关闭selinux

# sed -i 's/enforcing/disabled/g' /etc/selinux/config

NTP时间同步=====重要

#yum -y install ntp
#ntpdate pool.ntp.org
# chkconfig ntpd on
# chkconfig --list | grep ntp
ntpd               0:off    1:off    2:on    3:on    4:on    5:on    6:off
ntpdate            0:off    1:off    2:off    3:off    4:off    5:off    6:off=============Start NTP================
service ntpd start
Starting ntpd:                                             [  OK  ]、

创建组和用户

#groupadd puppet
#useradd -g puppet -s /sbin/nologin puppet

安装puppet

[root@master01 ~]# wget http://yum.puppetlabs.com/el/6/products/x86_64/puppetlabs-release-6-7.noarch.rpm
[root@master01 ~]# rpm -ivh puppetlabs-release-6-7.noarch.rpm
[root@master01 ~]# yum update

Master服务端安装

#yum -y install ruby ruby-libs ruby-shadow puppet puppet-server facter

启动服务并且设置开机启动

########################Satrt Service#########################
[root@master01 ~]# service puppetmaster start
Starting puppetmaster:                                     [  OK  ][root@master01 ~]# chkconfig puppetmaster on

检查是否启动成功

[root@master01 ~]# netstat -tunlp | grep 8140
tcp        0      0 0.0.0.0:8140                0.0.0.0:*                   LISTEN      12393/ruby
默认端口为8140
启动成功

客户端安装配置

[root@client01 ~]# yum -y install puppet

配置文件  添加一条内容

vim /etc/puppet/puppet.conf
[agent]
server  = master01.test.com

启动客户端并添加开机启动

[root@client01 ~]# service puppet start
Starting puppet agent:                                     [  OK  ]
[root@client01 ~]# chkconfig puppet on

证书申请
client需要向服务器端发出请求, 让服务器对客户端进行管理. 这其实是一个证书签发的过程. 第一次运行puppet 客户端的时候会生成一个 SSL 证书并指定发给 Puppet 服务端, 服务器端如果同意管理客户端,就会对这个证书进行签发,可以用这个命令来签发证书,由于我们已经在客户端设置了server地址,因此不需要跟服务端地址。

Master 自动添加

# cat > /etc/puppet/autosign.conf <<EOF> *.fisteam2.com> EOF

agent端去请求证书

[root@client01]#puppet agent --no-daemonize --onetime --verbose --debug
[root@client01]#puppet agent --test 

master查看客户端list

[root@master01]# puppet cert list -all
+ "client01.test.com" (SHA256) 31:A4:D8:3F:CC:07:4E:FB:4F:60:71:14:B5:62:A3:81:B8:0C:E4:1E:7C:E3:EA:2B:D6:7A:A2:B5:8E:C0:1A:9B
+ "master01.test.com" (SHA256) ED:34:76:9F:CC:A1:7D:13:0E:20:96:69:CB:03:CD:71:88:F9:59:1E:82:53:53:43:DE:02:38:2D:48:44:FE:79 (alt names: "DNS:master01.test.com", "DNS:puppet", "DNS:puppet.test.com")

+是已经签好了证书 如果没有+是没有签发成功的
如果没有添加到的话 可以使用

[root@master01]# puppet cert --sgin client01.test.com

puppet基本命令方法

删除证书或者所有

puppet cert clean client01.test.com
puppet cert clean --all

如果出现错误 可以重新来执行
1 在agent端执行

cd /var/lib/puppet
rm -rf ssl/
service puppet restart

2 master执行

cd /var/lib/puppet/ssl/ca/signed
rm -rf client01.test.com
service puppetmaster restart

转载于:https://www.cnblogs.com/yexiaochong/p/5947129.html

Puppent 介绍原理及安装相关推荐

  1. 使用LVS实现负载均衡原理及安装配置详解

    使用LVS实现负载均衡原理及安装配置详解 负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均 ...

  2. 负压电路_通风设备之负压风机的工作原理与安装方法是怎样的?

    点击上方蓝字关注我吧! 作为通风设备之一的负压风机在厂房车间通风换气降温的过程中也发挥了比较重要的作用,常见的车间通风降温方案有工业大风扇+环保空调的"扇机组合",也有环保空调+负 ...

  3. 51单片机入门-开发板介绍及软件安装

    [1-1] 课程简介_哔哩哔哩_bilibili[1-2] 开发工具介绍及软件安装_哔哩哔哩_bilibili[1-3] 单片机及开发板介绍_哔哩哔哩_bilibili 书籍:51单片机C语言教程-郭 ...

  4. 混沌工程工具-阿里ChaoBlade的原理与安装模拟CPUIO异常

    混沌工程工具-阿里ChaoBlade的原理与安装模拟CPU&IO异常 1.概述 从这篇文章开始,介绍一个有趣的测试工程它就是混沌工程. 2.混沌工程介绍 2.1.混沌工程定义 英文原著定义 根 ...

  5. 第一章 Python Kivy 学习 -- Kivy介绍及环境安装

    系列文章目录 第一章 Python Kivy 学习 – Kivy介绍及环境安装 第二章 Python Kivy 学习 – Kivy项目开发原理(待编辑) 第三章 Python Kivy 学习 – Ki ...

  6. linux18.04安装显卡驱动,详细介绍ubuntu18.04安装NVIDIA显卡驱动(亲测有效!)

    详细介绍ubuntu18.04安装NVIDIA显卡驱动(亲测有效!) 详细介绍ubuntu18.04安装NVIDIA显卡驱动(亲测有效!) 详细介绍ubuntu18.04安装NVIDIA显卡驱动(亲测 ...

  7. puppet完全攻略(一)puppet应用原理及安装部署

    puppet完全攻略(一)puppet应用原理及安装部署 puppet简介   puppet官方网站:http://www.puppetlabs.com/ puppet中文wiki:http://pu ...

  8. 16.1 Tomcat介绍16.2 安装jdk16.3 安装Tomcat

    16.1 Tomcat介绍 16.2 安装jdk 安装 完后执行这个命令可以出现下图的信息,说明安装成功了 java -version 16.3 安装Tomcat 下载的是二进制包,不用编译,很方便 ...

  9. Grpc+Grpc Gateway实践一 介绍与环境安装

    介绍与环境安装 假定我们有一个项目需求,希望用Rpc作为内部API的通讯,同时也想对外提供Restful Api,写两套又太繁琐不符合 于是我们想到了Grpc以及Grpc Gateway,这就是我们所 ...

  10. php 7.1 openssl安装,介绍 php7.1 安装openssl扩展,php openssl

    介绍 php7.1 安装openssl扩展介绍php7.1安装心脏出血扩展,PHP7栏目介绍php7.1 安装openssl扩展的方法 推荐(免费):PHP7 在安装(同脉冲亮度分析仪)脉冲振幅分析器 ...

最新文章

  1. 03-NSPredicate谓词
  2. LTE Module User Documentation(翻译6)——物理误差模型、MIMO模型、天线模型
  3. 性能测试工具curl-loader(linux)
  4. esp8266 html文件,ESP8266 基ESP8266_RTOS_SDK (ESP-IDF )中嵌入网页文件(示例代码)
  5. Android 十年,Google 用 AI 为它画了个句号
  6. 分析打开hdu 3335 (最小路径覆盖)
  7. php改时间戳,如何实现转换php时间戳
  8. 用Python自动化爬取CNKI知网数据(批量下载PDF论文)
  9. qca9533 openwrt 启动信息
  10. java 前后端分离
  11. 记录一下Mac浏览器劫持searchbaron.com的经历
  12. block的名词形式_block是什么意思_block在线翻译_英语_读音_用法_例句_海词词典
  13. 不同网段怎么ping通
  14. React State
  15. 期望、方差、标准差、协方差、正太分布、分布
  16. 表头不一致的多个文件如何按规定表头提取汇总(多个Excel按指定列值提取汇总)工具
  17. 数组和链表的增删改查速度比较
  18. 输入手机号获取验证码的注册页面,说出测试过程
  19. 大工18秋《计算机原理》,大工管经发【2015】6号大连理工大学管理与经济学部博士、硕士研究生学术论文标准...
  20. NTC热敏电阻采集温度

热门文章

  1. 如何在“活动监视器”中检查Mac是否需要更多内存?
  2. [MAC] 6 个好用小技巧
  3. 【翻译】CodeMix使用教程(七):扩展
  4. Linux KVM构建及管理
  5. redis info 信息
  6. SDRAM学习笔记(二)
  7. 运动社交或将成为“反科技”先锋
  8. linux 在字符界面中如何查看超出屏幕显示范围的内容
  9. 2022互联网大厂新年礼盒:腾讯向善、阿里家书、百度箱包抢镜!
  10. Spring Cloud 2020 版本最佳实践,你落伍了!