puppet3.8.7安装以及配置(三种认证方式)以及常见报错

安装:
1、为了方便,可以直接配置一个Centos-7、epel源来解决puppet的所有依赖包,配置puppet的源。puppet3.8.7安装以及配置(三种认证方式)以及常见报错
2、安装之前设置好服务端与客户端的主机名:
服务端:hostnamectl set-hostname puppet-masterpuppet3.8.7安装以及配置(三种认证方式)以及常见报错
客户端:hostnamectl set-hostname puppet-agent
puppet3.8.7安装以及配置(三种认证方式)以及常见报错
分别在客户端与服务端的/etc/hosts中编写:
puppet3.8.7安装以及配置(三种认证方式)以及常见报错
这里要注意的就是主机名后面接的这个.localdomain。是因为不知道什么原因,每次配置了别的主机名比如master121。在最后的认证过程中客户端向服务端发送验证时就变成minion121.localdomain。网上解决好久都没辙。索性直接改成这样吧。
3、安装
服务端:yum install puppet-server -y
客户端:yum install puppet -y
4、安装完成之后客户端与服务端需要进行认证。

  1. 手动认证
    1、服务端:systemctl start puppetmaster(监听8140端口开启)(守护进程的方式)
    客户端也启动服务:systemctl start puppet 或者puppet agent --test --server puppet-master。一般情况下客户端重新启动后会自动向master发送一个请求认证。如果没有发送就采用后面的命令。
    服务端重启后,会自动先给自己认证通过。(前面“+”号) puppet cert list --all 用来查看当前master端认证的机器。
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    客户端:
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    服务端认证:puppet cert sign puppet-agent.localdomain (看到没?我的客户端主机名明明是puppet-agent,但是认证过来时成了puppet-agent.localdomain)
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    这时可以在服务端的/etc/puppet/maninfest下面编写一个site.pp
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    服务端再次执行:puppet agent --test --server puppet-master.localdomain (这时后面不接接的localdomain时就老是报错……)
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    这时就可以在/tmp下看到自动化过来的文件:puppettest3.txt。后面的部署就这样。
    注意: 还可以在客户端/etc/puppet/puppet.conf的agent标签下直接写上server=puppet-master.localdomain。在执行命令是就不用加–server.

  2. 自动注册
    1、清除服务端已经认证通过的机器。puppet cert clean --all
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    2、同时删除客户端rm -rf /var/lib/puppet/ssl/
    3、服务端在/etc/puppet/下编写autosign.conf文件 其中写的就是哪些机器可以自动注册通过的特征。
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    4、重启服务端。systemctl restart puppet-master
    5、客户端:puppet agent --test 即可(/etc/puppet/puppet.conf已经配置过server)直接就通过了。
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错

  3. 预签名注册
    1、同理,删除掉上面说的客户端与服务端相关配置。
    服务端:rm -rf /etc/puppet/autosign.conf
    puppet cert clean --all
    客户端:rm -rf /var/lib/puppet/ssl/
    2、puppet-master端预先生成puppet-agent端的证书。
    puppet ca generate puppet-agent.localdomain
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    3、客户端生成目录结构,报错了可以不予理会,–server后面可以随便写,这里只是为了生成目录结构。
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    这就是生成的目录结构:
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    4、拷贝服务端预先生成的文件到客户端:
    puppet3.8.7安装以及配置(三种认证方式)以及常见报错
    5、客户端:puppet agent --test