Ресурс rhsm_register
Эта страница сгенерирована из исходного кода Chef Infra Client. Чтобы предложить изменение, отредактируйте файл rhsm_register.rb и отправьте запрос на добавление изменений в репозиторий Chef Infra Client.
Используйте ресурс rhsm_register для регистрации узла в Red Hat Subscription Manager или на локальном сервере Red Hat Satellite.
Новинка в Chef Infra Client 14.0.
Синтаксис
Полный синтаксис всех свойств, доступных ресурсу rhsm_register:
rhsm_register 'name' do
activation_key String, Array
auto_attach true, false # default value: false
base_url String
environment String
force true, false # default value: false
https_for_ca_consumer true, false # default value: false
install_katello_agent true, false # default value: true
organization String
password String
release Float, String
satellite_host String
server_url String
service_level String
system_name String
username String
action Symbol # defaults to :register if not specified
endгде:
-
rhsm_register— это ресурс. -
name— это имя, заданное для блока ресурса. -
actionопределяет, какие шаги Chef Infra Client предпримет для приведения узла в нужное состояние. -
activation_key,auto_attach,base_url,environment,force,https_for_ca_consumer,install_katello_agent,organization,password,release,satellite_host,server_url,service_level,system_name, иusername— это свойства, доступные для данного ресурса.
Действия
Ресурс rhsm_register имеет следующие действия:
:nothing- Этот блок ресурса не выполняет действий, пока не получит уведомление от другого ресурса. После уведомления этот блок ресурса либо выполняется немедленно, либо помещается в очередь для выполнения в конце выполнения Chef Infra Client.
:register- Зарегистрировать узел в RHSM. (по умолчанию)
:unregister- Отменить регистрацию узла из RHSM.
Свойства
Ресурс rhsm_register имеет следующие свойства:
-
activation_key - Тип в Ruby: Строка, Массив
Строка или массив ключей активации, используемых при регистрации; вы также должны указать свойство «organization», когда используете это свойство.
-
auto_attach - Тип в Ruby: true, false | Значение по умолчанию:
falseЕсли true, RHSM попытается автоматически прикрепить хост к соответствующим подпискам. В целом лучше использовать ключ активации с предварительно определёнными подписками.
-
base_url - Тип в Ruby: Строка
Имя хоста сервера доставки контента, который будет использоваться для получения обновлений. Как Customer Portal Subscription Management, так и Subscription Asset Manager используют размещённые сервисы доставки контента Red Hat с URL https://cdn.redhat.com. Поскольку Satellite 6 размещает собственный контент, URL должен использоваться для систем, зарегистрированных в Satellite 6.
Новое в Chef Infra Client 17.8
-
environment - Тип в Ruby: Строка
Окружение для использования при регистрации; требуется при использовании свойств username и password.
-
force - Тип в Ruby: true, false | Значение по умолчанию:
falseЕсли true, система будет зарегистрирована, даже если она уже зарегистрирована. Обычно любые операции регистрации завершаются неудачей, если машина уже зарегистрирована.
-
https_for_ca_consumer - Тип в Ruby: true, false | Значение по умолчанию:
falseЕсли true, Chef Infra Client получит katello-ca-consumer-latest.noarch.rpm из satellite_host с использованием HTTPS.
Новое в Chef Infra Client 15.9
-
install_katello_agent - Тип в Ruby: true, false | Значение по умолчанию:
trueЕсли true, будет установлен RPM «katello-agent».
-
organization - Тип в Ruby: Строка
Организация для использования при регистрации; требуется при использовании свойства «activation_key».
-
password - Тип в Ruby: Строка
Пароль для использования при регистрации. Это свойство неприменимо при использовании ключа активации. Если указано, также требуются свойства username и environment.
-
release - Тип в Ruby: Вещественное число, Строка
Устанавливает младшую версию операционной системы для использования при подписках на систему. Продукты и обновления ограничены указанной версией младшей версии. Используется только с опцией
auto_attach. Например,release '6.4'добавит--release=6.4к команде регистрации.Новое в Chef Infra Client 17.8
-
satellite_host - Тип в Ruby: Строка
Полное доменное имя (FQDN) хоста Satellite для регистрации. Если это свойство не указано, хост будет зарегистрирован в публичной службе RHSM Red Hat.
-
server_url - Тип в Ruby: Строка
Имя хоста службы подписки для использования. По умолчанию Customer Portal Subscription Management, subscription.rhn.redhat.com. Если вы не используете этот параметр, система регистрируется в Customer Portal Subscription Management.
Новое в Chef Infra Client 17.8
-
service_level - Тип в Ruby: Строка
Устанавливает уровень сервиса для использования при подписках на регистрируемой машине. Используется только с опцией
auto_attach.Новое в Chef Infra Client 17.8
-
system_name - Тип в Ruby: Строка
Имя системы для регистрации, по умолчанию – имя хоста.
Новое в Chef Infra Client 16.5
-
username - Тип в Ruby: Строка
Имя пользователя для использования при регистрации. Это свойство неприменимо при использовании ключа активации. Если указано, также требуются свойства password и environment.
Общие функциональные возможности ресурсов
Ресурсы Chef включают в себя общие свойства, уведомления и блокировки ресурсов.
Общие свойства
Следующие свойства являются общими для всех ресурсов:
compile_time-
Тип в Ruby: true, false | Значение по умолчанию:
falseУправление фазой, в которой ресурс выполняется на узле. Установите в true, чтобы запустить во время сборки коллекции ресурсов (
compile phase). Установите в false, чтобы запустить во время конфигурации узла Chef Infra Client (converge phase). ignore_failure-
Тип в Ruby: true, false, :quiet | Значение по умолчанию:
falseПродолжить выполнение рецепта, если ресурс завершается неудачей по любой причине.
:quietне будет отображать полный стек вызовов, и рецепт будет продолжен, если ресурс завершится неудачей. retries-
Тип в Ruby: Целое число | Значение по умолчанию:
0Количество попыток перехватить исключения и повторить ресурс.
retry_delay-
Тип в Ruby: Целое число | Значение по умолчанию:
2Задержка в секундах между попытками повтора.
sensitive-
Тип в Ruby: true, false | Значение по умолчанию:
falseОбеспечить, чтобы конфиденциальные данные ресурса не регистрировались Chef Infra Client.
Уведомления
-
notifies -
Тип в Ruby: Символ, 'Chef::Resource[Строка]'
Ресурс может уведомлять другой ресурс о выполнении действия при изменении его состояния. Укажите
'resource[name]', действие, которое должен выполнить:action, и:timerдля этого действия. Ресурс может уведомлять несколько ресурсов; используйте инструкциюnotifiesдля каждого уведомляемого ресурса.Если указанный ресурс не существует, генерируется ошибка. В отличие от этого,
subscribesне завершится ошибкой, если исходный ресурс не найден.
Таймер указывает момент во время выполнения Chef Infra Client, в котором выполняется уведомление. Доступны следующие таймеры:
:before-
Указывает, что действие над уведомленным ресурсом должно быть выполнено до обработки блока ресурса, в котором расположено уведомление.
:delayed-
По умолчанию. Указывает, что уведомление должно быть помещено в очередь и выполнено в конце выполнения Chef Infra Client.
-
:immediate,:immediately -
Указывает, что уведомление должно быть выполнено немедленно, по каждому уведомленному ресурсу.
Синтаксис notifies:
notifies :action, 'resource[name]', :timer
-
subscribes -
Тип в Ruby: Символ, 'Chef::Resource[Строка]'
Ресурс может следить за другим ресурсом и выполнять действия, если состояние отслеживаемого ресурса изменяется. Укажите 'resource[name]', действие :action, и :timer для этого действия.
Обратите внимание, что subscribes не применяет указанное действие к ресурсу, за которым он следит. Например:
file '/etc/nginx/ssl/example.crt' do
mode '0600'
owner 'root'
end
service 'nginx' do
subscribes :reload, 'file[/etc/nginx/ssl/example.crt]', :immediately
end
В данном случае свойство subscribes перезагружает службу nginx всякий раз, когда файл сертификата, расположенный в /etc/nginx/ssl/example.crt, обновляется. subscribes не вносит никаких изменений в сам файл сертификата, а лишь следит за изменениями в файле и выполняет действие :reload для своего ресурса (в данном примере nginx) при обнаружении изменений.
Если другой ресурс не существует, подписка не генерирует ошибку. В отличие от более жёсткой семантики notifies, которая вызовет ошибку, если другой ресурс не существует.
Таймер указывает момент во время выполнения Chef Infra Client, в котором выполняется уведомление. Доступны следующие таймеры:
:before-
Указывает, что действие над уведомлённым ресурсом должно выполняться до обработки блока ресурса, в котором расположено уведомление.
:delayed-
По умолчанию. Указывает, что уведомление должно быть помещено в очередь и выполнено в конце выполнения Chef Infra Client.
-
:immediate,:immediately -
Указывает, что уведомление должно выполняться немедленно, для каждого уведомлённого ресурса.
Синтаксис для subscribes:
subscribes :action, 'resource[name]', :timer
Блокирующие условия
Свойство блокирующего условия может использоваться для оценки состояния узла во время фазы выполнения Chef Infra Client. Основываясь на результатах этой оценки, свойство блокирующего условия сообщает Chef Infra Client, следует ли продолжить выполнение ресурса. Свойство блокирующего условия принимает либо строковое значение, либо значение Ruby-блока:
- Строка выполняется как команда оболочки. Если команда возвращает
0, блокирующее условие применяется. Если команда возвращает любое другое значение, то свойство блокирующего условия не применяется. Строковые блокирующие условия в powershell_script выполняют команды Windows PowerShell и могут возвращатьtrueв дополнение к0. - Блок выполняется как код Ruby, который должен вернуть либо
trueлибоfalse. Если блок возвращаетtrue, свойство блокирующего условия применяется. Если блок возвращаетfalse, свойство блокирующего условия не применяется.
Свойство блокирующего условия полезно для обеспечения идемпотентности ресурса, позволяя этому ресурсу проверить желаемое состояние во время его выполнения, а затем, если желаемое состояние присутствует, Chef Infra Client ничего не делает.
СвойстваСледующие свойства могут использоваться для определения блокирующего условия, которое оценивается во время фазы выполнения Chef Infra Client:
not_if-
Предотвращает выполнение ресурса, когда условие возвращает
true. only_if-
Разрешает выполнение ресурса только в том случае, если условие возвращает
true.
Примеры
Следующие примеры демонстрируют различные подходы к использованию ресурса rhsm_register в рецептах:
*Регистрация узла в RHSM
rhsm_register 'my-host' do
activation_key 'ABCD1234'
organization 'my_org'
end
© 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/resources/rhsm_register/