安装puppet服务

先安装ruby语言包、ruby标准库、ruby shadow库
yum install -y ruby ruby-libs ruby-shadow
2.需要添加EPRL库,来支持puppet
[root@test date]#wget http://dl.Fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
[root@test date]#rpm -Uvh epel-release-6-8.noarch.rpm
如果你的系统是其他版本或者是32位的,可以到网站:
dl.fedoraproject.org查找你们想要的

在 master上安装和启用 puppet 服务:
[root@master ~]# yum install -y puppet puppet-server facter

[root@master ~]# chkconfig --list |grep puppet

puppet 0:off 1:off 2:off 3:off 4:off 5:off 6:off

puppetmaster 0:off 1:off 2:off 3:off 4:off 5:off 6:off

[root@master ~]# chkconfig puppet on

[root@master ~]# service puppetmaster start

Starting puppetmaster: [ OK ]

[root@master ~]#vi /etc/sysconfig/network

hostname master.test.com

在clients上安装puppet客户端

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

[root@node1 ~]# chkconfig --list |grep puppet

puppet 0:off 1:off 2:off 3:off 4:off 5:off 6:off

[root@node1 ~]# chkconfig puppet on

[root@node1 ~]# chkconfig --list |grep puppet

puppet 0:off 1:off 2:on 3:on 4:on 5:on 6:off

[root@node1 ~]# service puppet start

Starting puppet agent: [ OK ]

[root@node1 ~]#

在clients上解析pupetmaster 的域名

[root@node1 ~]#vim /etc/hosts

192.168.50.30 master.test.com

3.配置puppet

对于puppet 客户端,修改/etc/puppet/puppet.conf,指定master服务器
[main]

# The Puppet log directory.

# The default value is '$vardir/log'.

logdir = /var/log/puppet

# Where Puppet PID files are kept.

# The default value is '$vardir/run'.

rundir = /var/run/puppet

# Where SSL certificates are kept.

# The default value is '$confdir/ssl'.

ssldir = $vardir/ssl

[agent]

# The file in which puppetd stores a list of the classes

# associated with the retrieved configuratiion. Can be loaded in# the separate ``puppet`` executable using the ``--loadclasses``

# option.

# The default value is '$confdir/classes.txt'.

classfile = $vardir/classes.txt

# Where puppetd caches the local configuration. An

# extension indicating the cache format is added automatically.

# The default value is '$confdir/localconfig'.

localconfig = $vardir/localconfig

server = master.test.com

并重启puppet服务
[root@node1 ~]# service puppet restart

Stopping puppet agent: [ OK ]

Starting puppet agent: [ OK ]

[root@node1 ~]#

4.Client申请证书  
服务端自动签发证书设置  
设置master自动签发所有的证书,我们只需要在/etc/puppet 目录下创建 autosign.conf 文件。(不需要修改 /etc/puppet/puppet.conf文件,因为我默认的autosign.conf 文件的位置没有修改)
[root@master ~]# ll /etc/puppet/

total 28

-rw-r--r--. 1 root root 4178 Nov 4 06:24 auth.conf

drwxr-xr-x. 3 root root 4096 Dec 29 15:44 environments

-rw-r--r--. 1 root root 1462 Nov 4 06:23 fileserver.conf

drwxr-xr-x. 2 root root 4096 Nov 4 06:24 manifests

drwxr-xr-x. 2 root root 4096 Nov 4 06:24 modules

-rw-r--r--. 1 root root 853 Nov 4 06:23 puppet.conf

[root@master ~]# cat > /etc/puppet/autosign.conf <<EOF

> *.fisteam2.com

> EOF

[root@master ~]# service puppetmaster restart

Stopping puppetmaster: [ OK ]

Starting puppetmaster: [ OK ]

[root@master ~]#

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

为了详细了解注册的过程和日后排错,可以增加参数,因为配置文件里  
–no-daemonize 前台输出日志  
–verbose 输入更加详细的日志  
–debug 更加详细的日志,排错的时候使用  
–test 表示测试,就带一个–test参数就可以
[root@node1 ~]# puppet agent --no-daemonize --onetime --verbose --debug

就可以申请证书了,由于我配置的自动签发证书,所以直接就签发了,在服务端执行
[root@master ~]# puppet cert list --all

就可以看到所有客户端已经都已签发证书,前面带”+”号的就是签发成功的,如果没有签名的,可以用
[root@master ~]# puppet cert --sign node1.localdomain

即可看到证书已经签发。

安装puppet的更多相关文章

  1. CentOS7:安装Puppet

    环境说明: 192.168.154.137 master.localdomain #Puppet Server 192.168.154.138 agent1.localdomain #Puppet A ...

  2. CentOS7安装Puppet+GitLab+Bind

    添加Puppet官方源 rpm -Uvh https://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm 安装Puppet yum -y i ...

  3. yum安装puppet

    yum安装puppet author:headsen chen     2017-10-31  17:09:35 个人原创,转载请注明作者和出处,否则依法追究法律责任: 环境:centos 6.5 [ ...

  4. CentOS 6.4安装Puppet

    CentOS安装Puppet   环境介绍:centos6.4x64 採用CentOS-6.4-x86_64-minimal.iso最小化安装   puppet版本号3.6.2.ruby1.8.7,f ...

  5. Centos 安装Puppet

    环境说明: OS:CentOS 5.4 i386puppetmaster    192.168.0.12    hostname: puppetmaster.info.comclient       ...

  6. Puppet部署:安装puppet server、client

    Puppet部署:安装puppet server.client   puppet与其他手工操作工具有一个最大的区别就是 puppet的配置具有稳定性,因此你可以多次执行puppet,一旦你更新了你的配 ...

  7. 在CentOS 6.4上安装Puppet配置管理工具

    在CentOS 6.4上安装Puppet配置管理工具 linux, puppetAdd comments 五052013 上篇说了下在ubuntu12.04上安装puppet,安装的版本为puppet ...

  8. puppet的使用:安装puppet

    最近项目要使用puppet,趁机赶紧学习下. 在家里的机器中搭建puppet环境,使用两台ubuntu 14.04: 准备工作 时间同步 两台设备先进行时间同步,我把要安装master的机器作为NTP ...

  9. centos7安装puppet详细教程(简单易懂,小白也可以看懂的教程)

    简介: Puppet是一种linux.unix平台的集中配置管理系统,使用ruby语言,可配置文件.用户.cron任务.软件包.系统服务等.Puppet把这些系统实体称之为资源,它的设计目标是简化对这 ...

随机推荐

  1. PHP date()函数格式与用法汇总

    在页面的最前页加上 date_default_timezone_set("PRC");   /*把时间调到北京时间,php5默认为格林威治标准时间*/ date () a:   & ...

  2. MS10_087漏洞学习研究

    类别:栈溢出,fileformat类别漏洞 描述: This module exploits a stack-based buffer overflow in the handling of the ...

  3. 如何用while循环 输出一个九九乘法表

    方法一 i = 1 while i < 10: k = 1 while k <= i: print('%d*%d=%2d '% (i,k,i*k),end='') #end='' 表示不换 ...

  4. JavaScript学习笔记(十一)——闭包

    在学习廖雪峰前辈的JavaScript教程中,遇到了一些需要注意的点,因此作为学习笔记列出来,提醒自己注意! 如果大家有需要,欢迎访问前辈的博客https://www.liaoxuefeng.com/ ...

  5. Linux 链接详解----静态链接实例分析

    由Linux链接详解(1)中我们简单的分析了静态库的引用解析和重定位的内容, 下面我们结合实例来看一下静态链接重定位过程. /* * a.c */ ; void add(int c); int mai ...

  6. 浅谈canvas绘画王者荣耀--雷达图

    背景: 一日晚上下班的我静静的靠在角落上听着歌,这时"滴!滴!"手机上传来一阵qq消息.原来我人在问王者荣耀的雷达图在页面上如何做出来的,有人回答用canvas绘画.那么问题来了, ...

  7. HDU1532 Drainage Ditches SAP+链式前向星

    Drainage Ditches Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  8. php计算多个集合的笛卡尔积实例详解

    笛卡尔积 笛卡尔积是指在数学中,两个集合X和Y的笛卡尔积(Cartesian product),又称直积,表示为X*Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员. 假设集合A ...

  9. win10下Python3.6安装、配置以及pip安装包教程

    0.目录 1.前言 2.安装python 3.使用pip下载.安装包 3.1 安装Scrapy 3.2 安装PyQt 3.3 同时安装多个包 3.4 pip的常用命令 1.前言 之前在电脑上安装了py ...

  10. Java 代码学习之理解数据类型中的坑

    package dailytest; import org.junit.Test; public class DataTypeTest { /** * 当有字符串第一次参与运算后,+成了连接符的作用 ...