Назад | Перейти на главную страницу

Ошибка загрузки поваренной книги поваром из-за ошибки сети

Я создал шеф-сервер на виртуальной машине (192.168.0.21). Сервер нормально работает по https (это последняя версия с сайта opscode).

knife user list (и другие команды списка) работают нормально, возвращая правильные результаты (все пользователи / узлы / клиенты. Новые пользователи отображаются нормально).

когда я пытаюсь загрузить кулинарную книгу на сервер, я получаю такую ​​ошибку:

Ошибка сети: getaddrinfo: имя или служба неизвестны. Проверьте конфигурацию ножа и настройки сети.

или эта более длинная ошибка:

ОШИБКА: ошибка сети: getaddrinfo: имя или служба неизвестны. Проверьте конфигурацию ножа и настройки сети /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:inоткрыть 'из /opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:763:in block in connect' from /opt/chef/embedded/lib/ruby/1.9.1/timeout.rb:69:inтайм-аут 'из /opt/chef/embedded/lib/ruby/1.9.1/timeout.rb:100:in timeout' from /opt/chef/embedded/lib/ruby/1.9.1/net/http.rb:763:inподключиться из /opt/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 'из /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/rest-client-1.6.7/lib/restclient/request.rb:172:in 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:inпоместите 'из /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:inвызов 'из /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.8.0/lib/chef/cookbook_uploader.rb:25:in 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:inloop 'из /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.8.0/lib/chef/cookbook_uploader.rb:24:in `block (2 уровня) в setup_worker_threads'

файл 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. редактировать /etc/hostname, например, yourhost.dyndns.org
  2. бегать: hostname -F /etc/hostname

вот и все

Возможно, вы столкнулись со странной ошибкой либо в Chef, либо в его базовой библиотеке rest-client.

В Chef 11.10.alpha это могло быть заменено / исправлено уже.

Вы также можете попробовать указать фактический порт в knife.rb, вот так:

chef_server_url          'https://192.168.0.21:443'

Это может помочь текущей библиотеке правильно интерпретировать местоположение.