簡體   English   中英

Windows Puppet代理無法連接到Puppet Enterprise Master

[英]Windows Puppet Agent does not connect to Puppet Enterprise Master

我剛剛使用默認選項在Windows azure vm上創建了puppet Labs企業主版。 我可以成功訪問PE控制台https://puppetmasterazure.cloudapp.net/ 能夠訪問控制台,我認為主機配置正確。

我現在在Azure中創建了一個新的Windows VM,並將其鏈接到Puppet Master。 但是,代理無法連接到主服務器(我也看不到在Puppet控制台中簽署新代理證書的請求)。 我可以在Windows事件日志中看到以下錯誤消息。

    Could not request certificate: getaddrinfo: No such host is known. 
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/sys/ruby/lib/ruby/1.9.1/net/http.rb:763:in `initialize'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/sys/ruby/lib/ruby/1.9.1/net/http.rb:763:in `open'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/sys/ruby/lib/ruby/1.9.1/net/http.rb:763:in `block in connect'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/sys/ruby/lib/ruby/1.9.1/timeout.rb:69:in `timeout'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/sys/ruby/lib/ruby/1.9.1/timeout.rb:100:in `timeout'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/sys/ruby/lib/ruby/1.9.1/net/http.rb:763:in `connect'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/sys/ruby/lib/ruby/1.9.1/net/http.rb:756:in `do_start'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/sys/ruby/lib/ruby/1.9.1/net/http.rb:745:in `start'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/sys/ruby/lib/ruby/1.9.1/net/http.rb:1285:in `request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/sys/ruby/lib/ruby/1.9.1/net/http.rb:1027:in `get'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/network/http/connection.rb:133:in `execute_request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/network/http/connection.rb:80:in `block in request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/network/http/connection.rb:79:in `times'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/network/http/connection.rb:79:in `request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/network/http/connection.rb:58:in `get'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:84:in `http_request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:63:in `http_get'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:97:in `block in find'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:178:in `block in do_request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/request.rb:261:in `do_request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:178:in `do_request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:91:in `find'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/certificate/rest.rb:12:in `find'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/indirection.rb:201:in `find'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/ssl/host.rb:201:in `certificate'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/ssl/host.rb:36:in `localhost'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/ssl/validator/default_validator.rb:26:in `initialize'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/ssl/validator.rb:27:in `new'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/ssl/validator.rb:27:in `default_validator'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/network/http_pool.rb:27:in `http_instance'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:58:in `network'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:83:in `http_request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:63:in `http_get'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:97:in `block in find'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:178:in `block in do_request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/request.rb:261:in `do_request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:178:in `do_request'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/rest.rb:91:in `find'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/certificate/rest.rb:12:in `find'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/indirector/indirection.rb:201:in `find'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/ssl/host.rb:201:in `certificate'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/ssl/host.rb:324:in `wait_for_cert'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/application/agent.rb:477:in `wait_for_certificates'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/application/agent.rb:318:in `run_command'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/application.rb:364:in `block (2 levels) in run'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/application.rb:470:in `plugin_hook'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/application.rb:364:in `block in run'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/util.rb:478:in `exit_on_fail'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/application.rb:364:in `run'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/util/command_line.rb:137:in `run'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/lib/puppet/util/command_line.rb:91:in `execute'
C:/Program Files (x86)/Puppet Labs/Puppet Enterprise/puppet/bin/puppet:4:in `<main>'

我已經驗證過的事情

  • 我查看了puppet.conf文件,可以確認服務器名稱正確設置為master。
  • 我可以從Internet Explorer中的代理瀏覽到人偶控制台。

有什么想法可以使代理與主控通信嗎?

我必須進行2次更改,導致從代理向主服務器提出了證書簽名請求。

  1. 打開cmd和telnet“ telnet puppetmaster.xxx.net 8140”,這告訴我從木偶到主服務器的通信失敗。 D'oh應該記得在配置代理程序時打開端口(端點)。 打開防火牆端口,puppet使用8140作為默認端口。

  2. 找到Puppet.conf文件,在Windows框上為C:\\ ProgramData \\ PuppetLabs \\ puppet \\ etc。 驗證服務器名稱的格式,我之前已將其配置為https://puppetmaster.xxx.net,它實際上應該沒有https。

[main]服務器= puppetmasterazure.xxx.net pluginsync = true自動刷新= true archive_files = true archive_file_server = puppetmasterazure.xxx.net圖= true環境=生產

瞧! 進行這些更改后,重新啟動服務。 這將強制嘗試連接到主機。 您應該能夠在Puppet企業控制台中看到證書簽名請求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM