роль ножа
Роль — это способ определения определённых шаблонов и процессов, которые существуют на узлах организации и относятся к одной функциональной обязанности. Каждая роль состоит из нуля (или более) атрибутов и списка выполнения. К каждому узлу можно назначить ноль (или более) ролей. Когда роль выполняется на узле, параметры конфигурации этого узла сравниваются с атрибутами роли, а затем содержимое списка выполнения этой роли применяется к параметрам конфигурации узла. При запуске клиента Chef Infra он объединяет собственные атрибуты и списки выполнения с теми, которые содержатся в каждой назначенной роли.
Используйте подкоманду knife role для управления ролями, связанными с одним или несколькими узлами на сервере Chef Infra.
Примечание
run_list add. Примечание
удаление по шаблону
Используйте аргумент 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.
Примечание
Примеры
В следующих примерах показано, как использовать эту подкоманду 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
Параметры
У этой команды нет специфических параметров.
Примечание
Примеры
В следующих примерах показано, как использовать эту подкоманду 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 -
Атрибут (или атрибуты) для отображения.
Примечание
Примеры
В следующих примерах показано, как использовать эту подкоманду 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/