Итак, это началось, потому что я пытался заставить автоматически масштабируемые узлы самостоятельно регистрироваться в Chef. У меня было следующее в моем файле client.rb
:
node_name "some_prefix-#{`hostname`}"
идея заключалась в том, что каждый узел будет иметь один и тот же префикс, но суффикс на основе имени хоста. К сожалению, hostname
возвращает строку с \n
в конце. Chef с радостью разрешил мне создать этот клиент, но он никак не может получить к нему доступ.
knife client show some_prefix-myHostname
knife client show "some_prefix-myHostname\n"
knife client show "some_prefix-myHostname%0A"
все три приводят к 404
knife client list
показывает клиента и пустую новую строку после него.
Я исправил свой шаблон client.rb, но не могу избавиться от узлов, которые я создал с новой строкой в их именах. Я пробовал использовать нож, webui и даже вручную использовать библиотеку Chef::REST в irb, но все приводит к ошибке 404.
Любые идеи?
РЕДАКТИРОВАТЬ: я также пробовал knife client bulk delete
, но это тоже не удается. Похоже, что библиотека REST очищает URL-адрес и удаляет новую строку перед попыткой отправить запрос.
knife client show 'some_prefix-myHostname\n'
(одинарная кавычка, чтобы избежать интерполяции в библиотеке). Или пытаетесь дважды избежать этого, какknife client show 'some_prefix-myHostname\\n'
? - person Tensibai   schedule 15.04.2015hostname
. Единственное, что может сработать в этом случае, это самостоятельно зайти в базу и починить клиент. Я не хотел этого делать, мне было проще переустановить сервер Chef, потому что у меня есть вся конфигурация (включая узлы и клиенты) в репозитории. - person Draco Ater   schedule 16.04.2015