2013-02-14 19 views
18

(hosted-) şef ile bir serseri kutusu sağlama zaman aşağıdaki hatayı alıyorum: Burada Chef Serseri Kutusunu: şifrelenmiş veri torbasını bulamıyor gizli

No such file or directory - file not found '/tmp/encrypted_data_bag_secret' 

çağrı hataya neden olan:

ssl = Chef::EncryptedDataBagItem.load("ssl", s[:id]) 

/etc/chef da normalde diğer sunucularda bulunduğu encrypted_data_bag_secret'u bulamıyorum.

Veri poşeti sırrını yükleyen bir yapılandırma eksik mi?

Yığın izleme gerisi nerede:

[2013-02-14T16:51:15+00:00] ERROR: Running exception handlers 
[2013-02-14T16:51:15+00:00] FATAL: Saving node information to /srv/chef/file_store/failed-run-data.json 
[2013-02-14T16:51:15+00:00] ERROR: Exception handlers complete 
[2013-02-14T16:51:15+00:00] FATAL: Stacktrace dumped to /srv/chef/file_store/chef-stacktrace.out 
[2013-02-14T16:51:15+00:00] FATAL: Errno::ENOENT: No such file or directory - file not found '/tmp/encrypted_data_bag_secret' 

cevap

27

bir serseri kutusu sağlama, size şifrelenmiş veri çanta kullanmak istiyorsanız, veri çanta için gizli anahtar bir yol sağlamak zorunda.

config.vm.provision :chef_solo do |chef| 
    [...] 
    chef.encrypted_data_bag_secret_key_path = '/etc/chef/encrypted_data_bag_secret' 
    [...] 
end 
+2

Güzel adam! Bu bilgiyi hiçbir yerde bulamadım. Bu garip çünkü knife.rb dosyasında ayar 'encrypted_data_bag_secret_key' olarak adlandırılıyor. Teşekkürler! – j7nn7k

+3

https://github.com/mitchellh/vagrant/pull/398 –

+0

Lütfen yerel makinenizde şef.encrypted_data_bag_secret_key_path için bir yol belirtmeniz gerektiğini unutmayın. Daha sonra, "/ etc/chef/encrypted_data_bag" varsayılan olarak, şef.encrypted_data_bag_secret anahtarını koyacaktır. –

1

Thomas Obermüller'in Draco Ater'in yanıtına verdiği yanıtta hızlı bir düzeltme.

  1. chef.encrypted_data_bag_secret kalkmıştır ve ayar hiçbir etkisi yoktur:; Vagrant 1.6.5 aracılığıyla Vagrant 1.5.1 yılında (ve muhtemelen daha önce 1.5.1 den bunu deneyin vermedi), değişikliklerin bir çift vardır .
  2. Vagrant, şifrelenmiş anahtarı, başlangıçta olduğu gibi /etc/chef/encrypted_data_bag_secret varsayılanına ayarlamak yerine /tmp/vagrant-chef-2/encrypted_data_bag_secret_key numaralı telefona koyar.
+0

Her zaman vagrant-şef-2 mi? İlk koşumda, bunu vagrant-chef-1'e koydu. – Jack

+0

Muhtemelen Vagrant 1 kullanıyorsunuzdur o zaman? –

+0

"1.6.5" üzerinde olduğum anlaşılıyor. Ama aynı zamanda bana en son sürümün 1.7.1 olduğunu söyledi. Tuhaf. – Jack