Spec-Zone.ru › Chef 16

роль ножа

[редактировать на GitHub]

Роль — это способ определения определенных шаблонов и процессов, которые существуют на узлах организации и относятся к одному рабочему заданию. Каждая роль состоит из нуля (или более) атрибутов и списка выполнения. К каждому узлу может быть назначено ноль (или более) ролей. При запуске роли на узле данные конфигурации этого узла сравниваются с атрибутами роли, а затем содержимое списка выполнения роли применяется к данным конфигурации узла. При запуске Клиента Chef Infra он объединяет собственные атрибуты и списки выполнения со списками, содержащимися в каждой назначенной роли.

Используйте подкоманду knife role для управления ролями, которые связаны с одним или несколькими узлами на сервере Chef Infra.

Примечание

Чтобы добавить роль к узлу и затем построить список выполнения для этого узла, используйте подкоманду knife node и ее аргумент run_list add.

Примечание

Просмотрите список общих параметров, доступных для этой (и всех) подкоманд и плагинов knife.

удаление по массе

Используйте аргумент bulk delete для удаления одной или нескольких ролей, которые соответствуют шаблону, определенному с помощью регулярного выражения. Регулярное выражение должно быть заключено в кавычки и не должно быть окружено косыми чертами (/).

Синтаксис

Этот аргумент имеет следующий синтаксис:

knife role bulk delete REGEX

Параметры

У этой команды нет специфических параметров.

Примеры

Следующие примеры показывают, как использовать эту подкоманду knife:

Удаление ролей по массе

Используйте регулярное выражение для определения шаблона, используемого для удаления ролей по массе:

knife role bulk delete "^[0-9]{3}$"

создание

Используйте аргумент create для добавления роли на сервер Chef Infra. Данные роли сохраняются в формате JSON на сервере Chef Infra.

Синтаксис

Этот аргумент имеет следующий синтаксис:

knife role create ROLE_NAME (options)

Параметры

У этого аргумента есть следующие параметры:

--description DESCRIPTION

Описание роли. Это значение заполняет поле описания для роли на сервере Chef Infra.

Примечание

См. config.rb для получения дополнительной информации о добавлении определенных параметров knife в качестве настроек в файл config.rb.

Примеры

Следующие примеры показывают, как использовать эту подкоманду knife:

Создание роли

Чтобы добавить роль с именем role1, введите:

knife role create role1

В $EDITOR введите данные роли в формате JSON:

{
   "name": "role1",
   "default_attributes": {
   },
   "json_class": "Chef::Role",
   "run_list": ["recipe[cookbook_name::recipe_name]",
                 "role[role_name]"
   ],
   "description": "",
   "chef_type": "role",
   "override_attributes": {
   }
}

По завершении сохраните файл.

удаление

Используйте аргумент delete для удаления роли с сервера Chef Infra.

Синтаксис

Этот аргумент имеет следующий синтаксис:

knife role delete ROLE_NAME

Параметры

У этой команды нет специфических параметров.

Примеры

Следующие примеры показывают, как использовать эту подкоманду knife:

Удаление роли

knife role delete devops

Введите Y, чтобы подтвердить удаление.

редактирование

Используйте аргумент edit для редактирования данных роли на сервере Chef Infra.

Синтаксис

Этот аргумент имеет следующий синтаксис:

knife role edit ROLE_NAME

Параметры

У этой команды нет специфических параметров.

Примеры

Следующие примеры показывают, как использовать эту подкоманду knife:

Редактирование роли

Для редактирования данных роли с именем role1, введите:

knife role edit role1

Обновите данные роли в формате JSON:

{
   "name": "role1",
   "description": "This is the description for the role1 role.",
   "json_class": "Chef::Role",
   "default_attributes": {
   },
   "override_attributes": {
   },
   "chef_type": "role",
   "run_list": ["recipe[cookbook_name::recipe_name]",
                "role[role_name]"
   ],
   "env_run_lists": {
   },
}

По завершении сохраните файл.

из файла

Используйте аргумент from file для создания роли, используя существующие данные JSON в качестве шаблона.

Синтаксис

Этот аргумент имеет следующий синтаксис:

knife role from file FILE

Параметры

У этой команды нет специфических параметров.

Примечание

См. config.rb для получения дополнительной информации о добавлении определенных параметров knife в качестве настроек в файл config.rb.

Примеры

Следующие примеры показывают, как использовать эту подкоманду knife:

Создание роли из данных JSON

Чтобы просмотреть данные роли, основанные на значениях в файле JSON:

knife role from file "path to JSON file"

список

Используйте аргумент list для просмотра списка доступных ролей на сервере Chef Infra.

Синтаксис

Этот аргумент имеет следующий синтаксис:

knife role list

Параметры

У этого аргумента есть следующие параметры:

-w, --with-uri

Показать соответствующие URI.

Примеры

Следующие примеры показывают, как использовать эту подкоманду knife:

Просмотр списка ролей

Чтобы просмотреть список ролей на сервере Chef Infra и отобразить URI для каждой возвращённой роли, введите:

knife role list -w

показ

Используйте аргумент show для просмотра данных роли.

Синтаксис

Этот аргумент имеет следующий синтаксис:

knife role show ROLE_NAME

Параметры

У этого аргумента есть следующие параметры:

-a ATTR, --attribute ATTR

Атрибут (или атрибуты) для отображения.

Примечание

См. config.rb для получения дополнительной информации о добавлении определенных параметров knife в качестве настроек в файл config.rb.

Примеры

Следующие примеры показывают, как использовать эту подкоманду knife:

Показать в формате JSON

Чтобы просмотреть информацию в формате JSON, используйте общий параметр -F как часть команды, например так:

knife role show devops -F json

Другие доступные форматы включают text, yaml, и pp.

Показать как сырые данные JSON

Чтобы просмотреть информацию об узле в сыром формате JSON, используйте параметр -l или --long:

knife role show -l -F json <role_name>

и/или:

knife role show -l --format=json <role_name>

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/knife_role/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API