네트워크 오류로 인해 요리사가 요리책을 업로드하지 못했습니다.

네트워크 오류로 인해 요리사가 요리책을 업로드하지 못했습니다.

가상 머신(192.168.0.21)에 Chef 서버를 만들었습니다. 서버는 https에서 제대로 실행됩니다(opscode 사이트의 마지막 버전입니다).

knife user list(및 다른 목록 명령)은 제대로 실행되어 올바른 결과를 반환합니다(모든 사용자/노드/클라이언트.새 사용자는 정상적으로 표시됩니다).

요리책을 서버에 업로드하려고 할 때 다음 오류가 발생합니다.

네트워크 오류: getaddrinfo: 이름 또는 서비스를 알 수 없음 칼 구성 및 네트워크 설정을 확인하십시오.

또는 이 더 긴 오류:

오류: 네트워크 오류: getaddrinfo: 이름 또는 서비스를 알 수 없음 Knife 구성 및 네트워크 설정을 확인하십시오. /opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:763:in initialize': getaddrinfo: Name or service not known (SocketError) from /opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:763:inopen' from /opt/chef /embedded/lib/ruby/1.9.1/net/http.rb:763:/opt/chef/embedded/lib/ruby/1.9.1/timeout.rb:100:/opt 에서 연결' block in connect' from /opt/chef/embedded/lib/ruby/1.9.1/timeout.rb:69:in의 시간 초과 ' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/rest-client-1.6의 timeout' from /opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:763:in/chef/embedded/lib/ruby/1.9.1/net/http.rb:756:in do_start' from /opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:745:instart'. 7/lib/restclient/request.rb:172: transmit' from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/request.rb:64:in/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/request.rb에서 '실행' :33:in execute' from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/resource.rb:76:input' from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.8.0/lib/chef/cookbook_uploader.rb:153:in block in uploader_function_for' from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.8.0/lib/chef/cookbook_uploader.rb:25:incall' from /opt/chef /embedded/lib/ruby/gems/1.9.1/gems/chef-11.8.0/lib/chef/cookbook_uploader.rb:25:/opt/chef/embedded/lib/ruby/gems/1.9 block (3 levels) in setup_worker_threads' from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.8.0/lib/chef/cookbook_uploader.rb:24:in의 루프'에서. 1/gems/chef-11.8.0/lib/chef/cookbook_uploader.rb:24:in `setup_worker_threads의 블록(2 레벨)'

Knife.rb 파일:

log_level                :info
log_location             STDOUT
node_name                'dony'
client_key               '/home/dony/.chef/dony.pem'
validation_client_name   'chef-validator'
validation_key           '/home/dony/Documents/cd/cv.pem'
chef_server_url          'https://192.168.0.21'
syntax_check_cache_path  '/home/dony/.chef/syntax_check_cache'
cookbook_path   [ "/home/dony/Documents/chef" ]

서버에 대한 다른 명령이 작동하고 있기 때문에 해당 문제에 대해 손가락질할 수는 없습니다.

답변1

서버 결함인 것 같습니다. 서버 FQDN은 서버 측에서 설정되어야 합니다.

  1. 편집 /etc/hostname, 예를 들어yourhost.dyndns.org
  2. 달리다:hostname -F /etc/hostname

그게 다야

답변2

Chef나 기본 라이브러리인 Rest-client에서 이상한 버그를 발견했을 수도 있습니다.

Chef 11.10.alpha에서는 다음과 같았을 수 있습니다.교체/고정이미.

다음과 같이 에서 실제 포트를 지정하려고 시도할 수도 있습니다 knife.rb.

chef_server_url          'https://192.168.0.21:443'

이는 현재 도서관이 위치를 올바르게 해석하는 데 도움이 될 수 있습니다.

관련 정보