Я пытаюсь использовать Chef для установки графитового сервера, и я столкнулся с ошибками, говоря, что на виртуальной машине не было обнаружено ни шеф-повара, ни шеф-клиента. Я использую Ubuntu 12.04.amd64 LTS, это версия сервера, поэтому у нее не будет установлен chef-клиент. Я знаю, что 13 версия автоматически установит chef-client, но я не могу использовать 13 версий.
Я googled и увидел, что некоторые люди предлагают ssh к коробке и apt-get install chef-client.
Мой вопрос: есть ли в любом случае, что я могу предварительно установить шеф-повар, прежде чем шеф-повар запишет? В принципе, я бы хотел, чтобы моя программа chef загрузила необработанное изображение и сделала все без дополнительных ручных шагов от пользователей. Возможно ли это?
My Vagrantfile:
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu-12.04-amd64"
config.vm.box_url = "http://cloud-images.ubuntu.com/vagrant/precise/current/precise-server-cloudimg-amd64-vagrant-disk1.box"
config.vm.hostname = "graphite"
config.vm.network :forwarded_port, guest: 8080, host: 9090
config.vm.provision :chef_solo do |chef|
chef.cookbooks_path = "cookbooks"
chef.roles_path = "roles"
chef.data_bags_path = "data_bags"
chef.add_role "Graphite-Server"
chef.add_role "StatsD-Server"
end
end
Журнал ошибок:
[default] Running provisioner: chef_solo...
The chef binary (either `chef-solo` or `chef-client`) was not found on
the VM and is required for chef provisioning. Please verify that chef
is installed and that the binary is available on the PATH.
Спасибо