Puppet部署

一.域名,IP规划 

     域名:beyond.com 

            puppet master:puppet.sa.beyond.com 192.168.254.254 

            puppet client:  *.beyond.com  192.168.254.* 

      PS:涉及的域名都需要做DNS解析,或者绑定hosts 

二.关闭防火墙、关闭selinux 略 

三.软件包选择: 

        puppet.noarch 3.8.4-1.el6  

         puppet-server.noarch 3.8.4-1.el6 

        ruby.x86_64 1.8.7.374-4.el6_6 

        facter.x86_64 1:2.4.4-1.el6 

四.安装pupetmaster: 

        1)puppet master 安装: 

               yum install puppet puppet-server facter ruby ruby-devel -y 

        2) puppet master 配置 

 

        3)启动puppet master,查看证书 

                 /etc/init.d/puppetmaster start 


五. 安装puppet agent 

        1) 安装: 

            yum install puppet facter 

        2)配置 puppet.conf 

        3)向puppetmster 发起认证 

             puppet agent -t 

        4)服务端颁发证书 

            puppet cert --list —all   查看客户端认证请求 

            颁发证书: 

                puppet cert --sign op.test.beyond.com 

            再次查看认证: 

六:agent 和master的认证 

 Puppet注册方式基本上有三种:自动注册、手动注册和预签名注册

    1.手动注册:

 手动注册是由Agent端先发起证书申请请求,然后由Puppetserver端确认方可注册成功,这种注册方式安全系数中等,逐一注册( puppet cert --sign certnmame )在节点数量较大的情况下是比较麻烦的,效率也低,批量注册( puppet cert --sign --all )效率很高,一次性便可注册所有的Agent的请求,但是这种方式安全系数较低,因为错误的请求也会被注册上。

    2.自动认证:

 这种注册方式简单来讲是通过Puppetmaster端的ACL列表进行控制的,安全系统较低,也就是说符合预先定义的ACL列表中的所有节点请求不需要确认都会被自动注册上,也就是说你只需要知道ACL列表要求,其次能和PuppetMaster端通信便可轻易注册成功。当然,它的最大优点就是效率非常高

我的配置: 

    1) 清除之前认证的证书

            puppet cert --clean op.test.beyond.com 

       2)删除agent端已经认证的证书 

             rm -rf /var/lib/puppet/ssl/* 

       3)编写master端ACL列表.autosign.conf 

        添加如下内容: 

            *.beyond.com 

        重启master进程 

             /etc/init.d/puppetmaster restart 

       4)agent重新申请证书,并查看 

agent端: 


master端: 

3.预签名注册: 

 预签名注册是在agent端未提出申请的情况下,预先在puppetmaster端生成agent端的证书,然后复制到节点对应的目录下即可注册成功,这种方式安全系数最高,但是操作麻烦,需要提前预知所有节点服务器的certname名称,其次需要将生成的证书逐步copy到所有节点上去。

        1)master端生成agent证书:

             puppetca --generate agent1_cert.beyond.com

        2)copy证书至agent 

            scp /var/lib/puppet/ssl/private_keys/agent1_cert.beyond.com.pem  agent1.beyond.com:/var/lib/puppet/ssl/priva  

agent1_cert.beyond.com.pem

  scp /var/lib/puppet/ssl/certs/ca.pem  agent1.beyond.com:/var/lib/puppet/ssl/certs




原文地址:https://www.cnblogs.com/pycode/p/9495818.html