已离开
已离开
3月前 · 11 人阅读

Puppet---配置管理工具,使用C/S架构,客户端的factor搜集客户端各种资源信息,上报服务器端master,检查服务器端配置,有改变则编译并在客户端运行。

客户端可以根据设定的runinterval的值与服务器进行一次通信,查看是否有配置变更,也可以在服务器上主动触发一次配置信息更新,强制各客户端做相应更改。客户端配置信息若被改变,则可以检查服务器返回的信息进行修正。

我们基于Centos7.4系统

前提:

1、NTP配置成功且同步成功(Centos7.4自带chrony作为时间同步服务);

2、配置dns服务,能够对主机名解析(动态或静态解析都可以);

安装过程:

1、服务器端:

(1)服务器端安装:

服务器端软件包为puppet-server,在Centos7官方源以及epel源中都没有,需要先安装puppet-server源,以及gpg秘钥:


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

然后安装软件包puppet-server:


yum install -y puppet-server

(2)服务器端配置:

在【main】字段下配置:


server=puppet-server.baidu.com        #配置服务器fqdn(server 也可以写作dns_alt-names)
runinterval=10                        #单位s,不配置默认是30min,1800s

启动服务:


systemctl start puppetmaster
systemctl enable puppetmaster
systemctl status puppetmaster

建立puppet server(看到版本号就行,不用管无法建立PID的错误):


puppet master --verbose --no-daemonize

2、客户端

(1)客户端安装puppet包:


yum install puppet -y

(2)客户端配置:


server=puppet-server.baidu.com      #服务器端的fqdn
runinterval=10                      #与服务器端配置间隔相同

启动服务:


systemctl start puppet
systemctl enable puppet
systemctl status puppet

测试与主机连通性并申请ca认证:


puppet agent --test --server=puppet-server.baidu.com --no-daemonize --verbose   (--no-daemonize响应内容意思是不放在后台)

可以看到很明确的证书请求过程:


Info: Caching certificate for ca
Info: csr_attributes file loading from
/etc/puppet/csr_attributes.yaml
Info: Creating a new SSL certificate request for puppet-node1.baidu.com
Info: Certificate Request fingerprint (SHA256):
FB:85:C3:0A:78:43:C8:D0:EC:F1:38:29:80:B6:AB:AF:75:76:40:B
4:92:C6:12:35:C3:0C:23:C2:09:02:F9:FC
Info: Caching certificate for ca
Exiting; no certificate found and waitforcert is disabled

3、签发证书

在服务端查看客户端的证书请求:


puppet cert --list

签署客户端证书:


puppet cert sign clientfqdnname    #一个个签署
(puppet cert sign -all)           #全部签署

安装篇完成。

简单做个测试,查看客户端/home目录下是否有test文件,内容是否是‘test’:


cat > /etc/puppet/manifests/site.pp < file,
     content => 'test',
}
EOF
收藏 0
puppet server 客户端 服务器端 配置 yum
评论 ( 0 )