Повар - Узлы

Knife preflight показывает подробную информацию обо всех узлах, которые используют определенную кулинарную книгу перед ее загрузкой на сервер Chef.

Начиная

Для начала нам нужно установить гем Knife-preflight.

Step 1 - Определите путь в гем-файле.

vipin@laptop:~/chef-repo $ subl Gemfile 
source 'https://rubygems.org' 
gem 'knife-preflight'

Step 2 - Запустите упаковщик, чтобы установить гем предполетного ножа.

vipin@laptop:~/chef-repo $ bundle install 
Fetching gem metadata from https://rubygems.org/ 
...TRUNCATED OUTPUT... 
Installing knife-preflight (0.1.6)

Метод работы

Выполните предварительную проверку с помощью ножа по данной кулинарной книге.

Мы можем запустить команду предварительной проверки, чтобы узнать, какие узлы и роли имеют данную кулинарную книгу в своих расширенных списках выполнения.

vipin@laptop:~/chef-repo $ knife preflight ntp 
Searching for nodes containing ntp OR ntp::default in their 
expanded run_list... 
2 Nodes found 
www-staging.example.com 
cms-staging.example.com 
Searching for roles containing ntp OR ntp::default in their 
expanded run_list... 
3 Roles found 
your_cms_role 
your_www_role 
your_app_role 
Found 6 nodes and 3 roles using the specified search 
criteria

Есть несколько способов выполнения кулинарной книги на узле.

  • Вы можете назначить кулинарную книгу непосредственно узлу, добавив ее в список выполнения узла.

  • Вы можете добавить к роли поваренную книгу и добавить роль в список выполнения узла.

  • Вы можете добавить роль в список выполнения другой роли и добавить эту другую роль в список выполнения узла.

  • Кулинарная книга может быть зависимостью от другой используемой кулинарной книги.

Независимо от того, как поваренная книга попадает в список выполнения узла, команда предварительной проверки Knife перехватит ее, поскольку Chef сохраняет все расширенные списки ролей и рецептов в атрибутах узла. Команда Knife предварительной проверки выполняет поиск именно этих атрибутов узла.