Puppent 介绍原理及安装
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 :off :off :on :on :on :on :off
ntpdate :off :off :off :off :off :off :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--.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
tcp 0.0.0.0: 0.0.0.0:* LISTEN /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) :A4:D8:3F:CC::4E:FB:4F::::B5::A3::B8:0C:E4:1E:7C:E3:EA:2B:D6:7A:A2:B5:8E:C0:1A:9B
+ "master01.test.com" (SHA256) ED:::9F:CC:A1:7D::0E::::CB::CD:::F9::1E:::::DE:::2D:::FE: (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
Puppent 介绍原理及安装的更多相关文章
- DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置
DNS服务器:主要介绍DNS的服务原理以及安装及其主从配置 一.DNS简介 1.DNS DNS是域名系统(Domain Name System)的简称,它是一个将域名和IP相互映射的分布式数据库 ...
- mysql备份工具innobackupex,xtrabackup-2.1的原理和安装
mysql备份工具innobackupex,xtrabackup-2.1的原理和安装 http://bbs.2cto.com/read.php?tid=310496 一.Xtrabackup介绍 1. ...
- LVS实现负载均衡原理及安装配置
LVS实现负载均衡原理及安装配置 负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均衡设备F ...
- LVS实现负载均衡原理及安装配置 负载均衡
LVS实现负载均衡原理及安装配置 负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均衡设备F ...
- HBase介绍及简易安装(转)
HBase介绍及简易安装(转) HBase简介 HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问,是Google的BigTable的开源实现.HBase的目标是存 ...
- 数据库介绍(MySQL安装 体系结构、基本管理)
第1章 数据库介绍及mysql安装 1.1 数据库简介 数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增.截取.更新.删除等操作. 所谓“数据库”系以一定方式 ...
- pytest 1.简单介绍一,安装和如何运行
一.pytest是一个接口测试框架,试用版起来比较轻便灵活.首先来介绍他的安装: 直接使用命令 : pip install -U pytest 通过命令 :pytest --version 来查看版 ...
- 【转】数据库介绍(MySQL安装 体系结构、基本管理)
[转]数据库介绍(MySQL安装 体系结构.基本管理) 第1章 数据库介绍及mysql安装 1.1 数据库简介 数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新 ...
- Hadoop生态圈-hbase介绍-伪分布式安装
Hadoop生态圈-hbase介绍-伪分布式安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.HBase简介 HBase是一个分布式的,持久的,强一致性的存储系统,具有近似最 ...
随机推荐
- HDU 1248 寒冰王座
完全背包 #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> ...
- hadoop中,combine、partition、shuffle作用分别是什么?
combine和partition都是函数,中间的步骤应该只有shuffle! combine分为map端和reduce端,作用是把同一个key的键值对合并在一起,可以自定义的.combine函数把一 ...
- 《JS权威指南学习总结--6.3删除属性》
内容要点: 一.delete运算符可以删除对象的属性.它的操作数应当是一个属性访问表达式.让人感到意外的是,delete只是断开属性和宿主对象的联系,而不会去操作属性中的属性: delete book ...
- php websocket聊天室
要理解socket就要先理解http和tcp的区别,简单说就是一个是短链,一个是长链,一个是去服务器拉数据,一个是服务器可以主动推数据. 而socket就是应用层与TCP/IP协议族通信的中间软件抽象 ...
- (转)J2EE中13个规范
今天在做连接oracle数据库的时候,感受到了什么是规范.平时听到别人说学习j2ee一定要学习他的十三个规范,大概的知道每个规范是做什么的,每个“接口”是做什么的. 很早就听过 ...
- wamp,phpserver,xampp环境冲突
这几天在使用laravel5.2时 执行:php artisan migrate [PDOException] could not find driver 分析可能是以下情况造成 1 php.ini配 ...
- 付款前.检查状态.防止重复付款,需要ajax设置为同步,等待ajax返回结果再使用
$("#surePay").on("touchstart",function(){ var apply_id = $('#apply_id').val(); v ...
- OpenCV2.x自学笔记——Qt5.5.1打包exe
[简易步骤] 1.Release模式下生成exe,在release文件夹内,如jujube.exe 2.exe单独拷贝到一个文件夹,如D:\jujube\jujube.exe 3.打开Qt 官方开发环 ...
- (转载)app ico图标字体制作
图标字体化浅谈 在做手机端Web App项目中,经常会遇到小图标在手机上显示比较模糊的问题,经过实践发现了一种比较好的解决方案,图标字体化.在微社区项目中,有很多小的Icon(图标),如分享.回复 ...
- fatal error RC1004: unexpected end of file found处理方法
资源编译器错误 RC1004 错误消息 遇到意外的文件结束 此错误是由于文本文件的最后一行中缺少换行符和回车符而造成的.