2017-02-08 7 views
2

シェフと一緒にサーバーがインストールされています。 デバッグ時に、エラーがシェフクライアントがマシンのメタデータを読み取ることができませんでした

Re-raising exception: NoMethodError - undefined method `[]' for nil:NilClass 

トレースが

/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.18.31/lib/chef/data_collector/messages/helpers.rb:133:in `read_node_uuid' 
    /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.18.31/lib/chef/data_collector/messages/helpers.rb:111:in `node_uuid' 
    /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.18.31/lib/chef/data_collector/messages.rb:40:in `run_start_message' 
    /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.18.31/lib/chef/data_collector.rb:130:in `block in run_started' 
    /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.18.31/lib/chef/data_collector.rb:307:in `disable_reporter_on_error' 
    /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.18.31/lib/chef/data_collector.rb:128:in `run_started' 
    /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.18.31/lib/chef/event_dispatch/dispatcher.rb:43:in `call' 
    /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.18.31/lib/chef/event_dispatch/dispatcher.rb:43:in `block in call_subscribers' 
    /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.18.31/lib/chef/event_dispatch/dispatcher.rb:34:in `each' 
    /opt/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.18.31/lib/chef/event_dispatch/dispatcher.rb:34:in `call_subscribers' 

であるマシンのみの1

sudo chef-client -j /etc/chef/first-boot.json 

を実行しているときにそれらのいずれかが失敗し始めました行は

です
metadata["node_uuid"] 

メタデータは、私はこれで苦労してるdata_collector_metadata.jsonファイル

def metadata 
       Chef::JSONCompat.parse(Chef::FileCache.load(metadata_filename)) 
    rescue Chef::Exceptions::FileNotFound 
      {} 
end 

を読み込むことで来ている...これは、いくつかのサーバーで、これに取り組んでいる理由、それが何だったか

答えて

1

を発見していません問題。 違いはシェフクライアントのバージョン スタートアップスクリプトがシェフを最新バージョンで再インストールしたことです。

curl -L "https://www.opscode.com/chef/install.sh" | bash 

は、私は特定のバージョンのbash

curl -LO https://omnitruck.chef.io/install.sh && sudo bash ./install.sh -v 12.15.19 && rm install.sh 

に変更した。このbashのを使用しており、それは

+0

あなたは12.0.2超大型の時代遅れであることに注意する必要があります働いて、あなたが本当に解決しなければなりませんこのASAP :) Test Kitchenは、Chefの新バージョンを試してみてください。 – coderanger

関連する問題