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