Я создал настройку, как показано ниже, и для всего этого я использую Amazon EC2:
Сервер Ubuntu 12.04, на котором у меня установлен сервер Chef и настроен нож. Это работает отлично, я могу запускать команды ножа, и это дает мне ожидаемые результаты.
Еще один похожий сервер ubuntu, который я пытаюсь использовать в качестве клиента шеф-повара. Установил повар и настроил клиент. Так же установлен нож на клиенте. Я знаю, что это установлено правильно, потому что после установки я выполнил команду
knife --version
я получил вывод
Chef: 10.16.2
Теперь я настроил файл knife.rb. Содержимое выглядит следующим образом: log_level :info log_location STDOUT node_name 'knife' cache_type 'BasicFile' cache_options( :path => "~/.chef/checksums" ) client_key '~/.chef/clientkey.pem'
cookbook_path [ "~/mychefrepo/cookbooks" ]
cookbook_copyright "example org"
cookbook_email "[email protected]"
cookbook_license "apachev2"
chef_server_url "http://ip-11-213-23-99:4000"
validation_key "~/.chef/validation.pem"
После настройки Если я запускаю команду ножа
knife client list
Я получаю следующую ошибку:
ОШИБКА: не удалось пройти аутентификацию на http://ip-11-213-23-99:4000 как client1 с ключом /etc/chef/clientkeys.pem
Прошу развеять мои следующие сомнения:
- Обязательно ли хранить clientkey.pem на сервере шеф-повара? Если да, то в каком месте?
- Есть ли какое-то конкретное место, где мне нужно сохранить файл pem на клиенте шеф-повара?
- Что я делаю неправильно?