报错问题及解决方法:
1.报错信息:
Warning: Unable to fetch my node definition, but the agent run will continue: Warning: getaddrinfo
原因:PuppetMaster端和PuppetClient的证书不匹配
解决方法:
清除Master和客户端的SSl证书
Master:puppet cert --clean --all
Client:rm -rf /var/lib/puppet/ssl/
重启解决
2.报错信息:vsftpd: warning: can’t get client address: Bad file descriptor
原因:这是REDHAT9中VSFTP的一个BUG
解决方法:
把/etc/vsftpd/vsftpd.conf中的tcp_wrappers=YES改为tcp_wrappers=NO
3.报错信息:
err: Could not request certificate: Retrieved certificate does not match private key; please remove certificate from server and regenerate it with the current key
原因:获取到的证书和key不匹配
解决办法:
a.在客户端删除ssl证书 rm -rf /var/lib/puppet/ssl/,
b.在puppetmaster端,执行 puppetca -c 客户端主机名
c. 客户端在重新生成证书请求: puppet –test –server puppetmaster主机名
d.在puppetmaster端,执行 puppetca -s 客户端主机名
4.报错信息:
puppet 认证错误:Could not request certificate: unknown message digest algorithm
原因:根据日志提示:是算法有问题,根据 https://serverfault.com/questions/660649/puppet-master-3-6-2-error-on-signing-puppet-client-2-7-25 网站提出的解决方案 需要修改 ruby代码
解决办法:
修改 /usr/lib/ruby/site_ruby/1.8/puppet/ssl/certificate_request.rb文件的 71行 把 MD5 修改成SHA256 解决
sed -i 's#MD5#SHA256#' /usr/lib/ruby/site_ruby/1.8/puppet/ssl/certificate_request.rb
运行 puppet 测试命令 puppetd --test --debug 在服务端进行查看 问题得以解决
5.报错信息:
1.启动puppet master服务,提示:Could not run:Could not create PID file:/var/lib/puppet/run/master.pid
2.执行命令 netstat -tunlp |grep "8140",结果为 tcp 0 0 0.0.0.0:8140
原因:上述两个问题是由于master.pid 已有pid占用导致
解决办法:
cat master.pid #查看pid,比如10805
kill -9 10805 # 删除该pid
ps -ef | grep 10805 #查看该id是否删除成功
puppet master #启动master
netstat -tunlp |grep "8140" #结果为 tcp 0 0 0.0.0.0:8140 0.0.0.0:* LISTEN 15815/ruby 说明master启动成功
6.报错信息:
第一次启动master端时,puppet服务会在本地创建认证中心,给自己授权证书和key,但通过 tail -f /var/log/messages 查看日志,发现证书未授权成功:Could not request certificate: getaddrinfo: Temporary failure in name
解决办法:
检查 /etc/hosts 和 /etc/puppet/puppet.conf 与 /etc/hostname 文件的 主机名与 IP 是否匹配
1.先安装依赖包yum-plugin-downloadonly
[root@node1 ~]# yum install yum-plugin-downloadonly
2.安装软件
方法一:
[root@node1 ~]# yum install --downloadonly nano
[root@node1 ~]# ll /var/cache/yum/x86_64/7/base/packages
-rw-r–r-- 1 root root 450136 Jul 4 2014 nano-2.3.1-10.el7.x86_64.rpm
不加–downloaddir参数,下载的依赖包会放在默认路径/var/cache/yum/x86_64/7/base/packages下。
方法二:
[root@node1 ~]# yum install --downloadonly --downloaddir=/root keepalived
[root@node1 ~]# ll
-rw-------. 1 root root 1259 Jul 7 18:43 anaconda-ks.cfg
-rw-r–r-- 1 root root 339344 Aug 23 2019 keepalived-1.3.5-16.el7.x86_64.rpm
-rw-r–r-- 1 root root 42784 Aug 23 2019 lm_sensors-libs-3.4.0-8.20160601gitf9185e5.el7.x86_64.rpm
-rw-r–r-- 1 root root 724340 Jun 24 01:36 net-snmp-agent-libs-5.7.2-48.el7_8.1.x86_64.rpm
-rw-r–r-- 1 root root 769104 Jun 24 01:36 net-snmp-libs-5.7.2-48.el7_8.1.x86_64.rpm