Почему я получаю исключения "неопределенный метод" при выполнении "run_list add", "run_list remove" и "rackspace server delete"?

[Первоначально опубликовал это на форуме opscode, не получил ответа]

Я тестирую бесплатную учетную запись chef-сервера, размещенную на сервере, и несколько подкоманд не работают с "Неожиданными ошибками". Возможно, моя версия и версия сервера несовместимы?

ОС: Ubuntu 12.04LTS

Local Chef: 10.12.0 (устанавливается через гем)

Местный Рубин: 1.8.7

Кроме того, компьютер рабочей станции был сконфигурирован вручную, но клиенты, с которыми я экспериментировал, запускаются с плагином Rackspace (с использованием 'knife rackspace server create…'). Кажется, что при работе с шеф-поваром хоста проблемные команды не выполняются. Однако, прежде чем он попытается изменить клиента, я не верю, что именно в этом проблема. Виртуальные серверы, которые запускаются с помощью 'создания сервера стоечных ножей', запускаются правильно, но затем удалить их с помощью ножа не удается.

Если я добавляю рецепт в run_list при создании сервера, рецепт правильно добавляется в run_list. Если я попытаюсь добавить его позже или удалить тот, с которого был инициализирован сервер, эти команды не будут выполнены.

Вот вывод нескольких соответствующих команд (со следами стека):

https://gist.github.com/7100ada3fd6690113697

1 ответ

Глядя на вашу суть (очень полезно, кстати!), Похоже, что синтаксис для модификаций run_list может быть немного не соответствующим.

В одном примере вы предоставляете:

knife node run_list remove rs-chefdemo-03 init_noop -VV

Ошибка не очень полезная, согласился.

Я считаю, что правильный синтаксис, который вы должны использовать:

knife node run_list remove rs-chefdemo-03 'recipe[init_noop]' -VV

Это должно действовать так, как вы ожидаете.

Для knife rackspace Я подозреваю, что вы используете неправильный ключ, как указано в файле readme:

Удаляет существующий сервер в текущей настроенной учетной записи Rackspace Cloud по идентификатору сервера / экземпляра. Вы можете найти идентификатор экземпляра, введя "список серверов стоечного ножа".

Таким образом, правильный синтаксис для этого будет:

knife rackspace server delete 20950789 -VV

Удачи!

Другие вопросы по тегам