2013-07-08 2 views
3

Я установил сервер шеф-повара и после копирования файлов admin.pem и validator.pem с сервера на мою рабочую станцию, а затем настроил нож на рабочей станции, используя knife configure ..., я создаю нового пользователя, который я могу проверить на веб-сайте ui, и я могу успешно запустить knife client list и другие команды ножа. Затем я пытаюсь загрузить поваренную книгу, черезповарский нож с ошибкой ключа после попытки загрузить поваренную книгу

knife cookbook upload -o cookbooks/ apache2 

и я получаю эту ошибку:

ERROR: Your private key could not be loaded from /etc/chef/client.pem
Check your configuration file and ensure that your private key is readable

и все последующие команды ножа будут возвращать эту ошибку. Единственное, что я могу сделать, чтобы заставить его работать снова, - запустить «knife configure -i ....»

Что происходит, и что я делаю неправильно? Сначала я не создаю новых узлов или клиентов, просто пытаюсь загрузить кулинарные книги. Это моя проблема? Тем не менее, похоже, что отказ загрузки поваренной книги не должен приводить к полной испорченности конфигурации ножа, да?

+0

ах, только что выяснил мою проблему, которая была очень простой. В каталоге, в котором я пытался загрузить кулинарные книги, у меня был файл knife.rb, который не указывал ключи и т. Д., Поэтому нож использовал это, чтобы настроить себя и привести к ошибкам. Я получил следующие ошибки, потому что я все еще находился в этом каталоге. Duh ... ;-) Нижняя строка: убедитесь, что ваш файл knife.rb над файлом поездки в любых проектах указывает ваш сервер и ключевые атрибуты, если вы собираетесь взаимодействовать с шеф-сервером – wkhatch

ответ

4

У вас есть код admin.pem и validation.pem - ~/.chef.

Сначала убедитесь, что вы выполняете команду в том же каталоге, где хранится ваш нож. Rb. Это лучший способ запустить команду ножа. В противном случае вы можете запустить команду knife configure client ., чтобы создать новый файл client.pem и client.rb.

+0

да, я это сделал и проблема заключалась в том, что файл катапультирования knife.rb находился в каталоге, в котором я выдавал команды, хотя этот файл knife.rb не переместил ни одного из атрибутов, определенных в файле ~/.chef/knife.rb. Как только я добавил эти атрибуты к локальному, конкретному проекту knife.rb, все работало, как ожидалось. Спасибо за ответ – wkhatch

+0

Добро пожаловать –

Смежные вопросы