2015-06-04 153 views
1

我在两个虚拟机(一个主站和一个节点)安装木偶企业。当我尝试用木偶代理手动运行我的经纪人-ti得到错误木偶:服务器主机名不匹配服务器证书

Server hostname '192.168....' did not match server certificate; expected one of host-192-168-.....localdomain. 

如果我加入--server host-192-168.....localdomain它的工作原理运行它,但这种方式我可以手动和自身runInterval后,做到这一点并不在我的傀儡控制台上工作,它表示它没有反应。我想这是因为它自己得到了我之前提到的错误,所以我的主人无法从此节点接收任何报告。

有人可以帮助我吗?我怎样才能让我的节点的代理与正确的服务器证书名称的主人联系?从节点

puppet.conf:

[main] 

vardir = ... 
logdir = ... 
rundir = ... 
basemodulepath = ... 
user = ... 
group = ... 
archive_files = ... 

[agent] 

report = ... 
classfile = ... 
localconfig = ... 
graph = ... 
pluginsync = ... 
environment = ... 
server = 192.168.10.39 
certname = 192.168.10.40 
noop = true 
runinterval = 1800 

如果我把服务器=主机-...(主)没有什么变化。我想,我不能改变从[代理]部分,因为应该有主IP(我相信)......

我想那是什么链接,现在我的傀儡代理-t不在服务器在我的节点上做任何事情。为了更好的understandig,我是从主张贴我puppet.conf:

[main] 

certname = host-192-168-10-39.localdomain 
vardir = /var/opt/lib/pe-puppet 
logdir = /var/log/pe-puppet 
rundir = /var/run/pe-puppet 
basemodulepath = /opt/alu/deploy/puppet/modules:/etc/puppetlabs/puppet.... 
environmentpath = /opt/alu/deploy/puppet/environments 
server = 192.168.10.39 
user = pe-puppet 
group = pe-puppet 
archive_files = true 
archive_files_server = 192.168.10.39 
module_groups = base+pe_only 
dns_alt_names = puppet 

[agent] 

report = true 
classfile = $vardir/classes.txt 
localconfig = $vardir/localconfig 
graph = true 
pluginsync = true 
environment = production 
noop = true 
runinterval = 1800 

[master] 

node_terminus = classfier 
ca_server = host-192-168-10-39.localdomain 
reports = console,puppetdb 
storeconfigs = true 
storeconfigs_backend = puppetdb 
certname = 192-168-10-39.localdomain 
server = 192.168.10.39 
always_cache_features = true 
default_manifest = /opt/alu/deploy/puppet/manifests/default.pp 

从木偶代理错误-t:http://i62.tinypic.com/34ijlmu.png

回答

1

有多种原因针对此问题,请列出您的puppet.conf。

但是从顶端看,它看起来像是由主服务器生成的证书中的名称与服务器的主机名称之间的一些不匹配。也许在生成证书并重新启动时,主机名已被更改,因为主机名更改有时在重新启动后才会生效。

puppetlabs官方文件建立有助于解决这个问题,请点击此链接:https://docs.puppetlabs.com/guides/troubleshooting.html?_ga=1.110966791.343491524.1432986084#agents-are-failing-with-a-hostname-was-not-match-with-the-server-certificate-error-whats-wrong。这可能与在/ etc/puppet/conf中设置certname值并重新启动主服务器一样简单。

+0

我试着你说的话和我的傀儡代理-t停止工作....所以我扭转了一切。我使用master和node中的两个puppet.conf编辑了我的问题,以便更好地观察。请帮忙:) – Robert

+0

嘿@Robert在链接指导中,可以请保留certname和hostname(我看着你的puppet.conf文件)相同的192-168-10-39.localdomain。我建议再次执行这些步骤,我相信你可以解决它,因为你的puppet.conf与puppetlabs文档链接中提到的完全相反。 – user3278897

+0

@Robert,只是一个补充,如果您从代理中删除/ssl public_keys并在服务器上执行“puppet cert clean #against clients”,那就太好了。并开始让这个工作。罗伯特请随时添加一个便条,我可以理解这些都是可悲的问题。 – user3278897

1

而是在命令行上发出--server的,只是添加添加server=...在代理的puppet.conf文件的[main]部分。

+0

@Robert请不要在评论中分享它。如有需要,请将其添加到您的问题中。 –

+0

谢谢。我会记住这个;) – Robert

相关问题