Ресурс windows_update_settings
Эта страница сгенерирована из исходного кода клиента Chef Infra. Чтобы предложить изменение, отредактируйте файл windows_update_settings.rb и отправьте запрос на вытягивание в репозиторий Chef Infra Client.
Используйте ресурс windows_update_settings для управления различными параметрами обновления Windows.
Новое в Chef Infra Client 17.3.
Синтаксис
Полный синтаксис всех доступных свойств для ресурса windows_update_settings:
windows_update_settings 'name' do
automatic_update_option Integer, Symbol # default value: :download_and_schedule
automatically_install_minor_updates true, false # default value: false
block_windows_update_website true, false # default value: false
custom_detection_frequency Integer # default value: 22
disable_automatic_updates true, false # default value: false
disable_os_upgrades true, false # default value: false
elevate_non_admins true, false # default value: true
enable_detection_frequency true, false # default value: false
no_reboot_with_users_logged_on true, false # default value: true
scheduled_install_day String # default value: "Everyday"
scheduled_install_hour Integer
target_wsus_group_name String
update_other_ms_products true, false # default value: true
wsus_server_url String
action Symbol # defaults to :set if not specified
endгде:
-
windows_update_settings— это ресурс. -
name— это имя, заданное для блока ресурса. -
actionопределяет, какие шаги клиент Chef Infra предпримет для приведения узла к желаемому состоянию. -
automatic_update_option,automatically_install_minor_updates,block_windows_update_website,custom_detection_frequency,disable_automatic_updates,disable_os_upgrades,elevate_non_admins,enable_detection_frequency,no_reboot_with_users_logged_on,scheduled_install_day,scheduled_install_hour,target_wsus_group_name,update_other_ms_products, иwsus_server_url— это доступные свойства для этого ресурса.
Действия
Ресурс windows_update_settings имеет следующие действия:
:nothing- Этот блок ресурса не выполняет действий, пока не получит уведомление от другого ресурса о необходимости выполнения действия. После уведомления этот блок ресурса либо выполняется немедленно, либо помещается в очередь для выполнения в конце выполнения Chef Infra Client.
:set- Установить параметры Windows Update. (по умолчанию)
Свойства
Ресурс windows_update_settings имеет следующие свойства:
-
automatic_update_option - Тип Ruby: Целое число, Символ | Значение по умолчанию:
:download_and_scheduleРазрешенные значения::download_and_notify, :download_and_schedule, :local_admin_decides, :notifyУправление действиями при обнаружении обновлений. Это позволяет вам уведомлять, автоматически загружать и уведомлять об установке, автоматически загружать и планировать установку или позволить локальному администратору решить, какие действия предпринять.
-
automatically_install_minor_updates - Тип Ruby: true, false | Значение по умолчанию:
falseАвтоматическая установка незначительных обновлений.
-
block_windows_update_website - Тип Ruby: true, false | Значение по умолчанию:
falseБлокировать доступ к веб-сайту Windows Update.
-
custom_detection_frequency - Тип Ruby: Целое число | Значение по умолчанию:
22Если вы решили переопределить частоту обнаружения по умолчанию ОС, укажите свой выбор здесь. Допустимые значения: 0 - 22
-
disable_automatic_updates - Тип Ruby: true, false | Значение по умолчанию:
falseОтключить Windows Update.
-
disable_os_upgrades - Тип Ruby: true, false | Значение по умолчанию:
falseОтключить обновления ОС.
-
elevate_non_admins - Тип Ruby: true, false | Значение по умолчанию:
trueРазрешить обычным пользовательским учетным записям временно получать повышенные права для установки исправлений.
-
enable_detection_frequency - Тип Ruby: true, false | Значение по умолчанию:
falseИспользуется для переопределения значения по умолчанию ОС о частоте проверки обновлений
-
no_reboot_with_users_logged_on - Тип Ruby: true, false | Значение по умолчанию:
trueПредотвращает перезагрузку ОС, когда пользователь залогинен.
-
scheduled_install_day - Тип Ruby: Строка | Значение по умолчанию:
EverydayРазрешенные значения:"Everyday", "Friday", "Monday", "Saturday", "Sunday", "Thursday", "Tuesday", "Wednesday"День недели для установки обновлений в Windows.
-
scheduled_install_hour - Тип Ruby: Целое число
Если вы выбрали запланированный день установки, выберите час в этот день для установки.
-
target_wsus_group_name - Тип Ruby: Строка
Добавить узел в целевую группу WSUS.
-
update_other_ms_products - Тип Ruby: true, false | Значение по умолчанию:
trueРазрешает другим продуктам Microsoft получать обновления тоже.
-
wsus_server_url - Тип Ruby: Строка
URL вашего сервера WSUS, если вы его используете.
Общие функциональные возможности ресурсов
Ресурсы 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.
Уведомления
-
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.
Примеры
В следующих примерах показаны различные подходы к использованию ресурса windows_update_settings в рецептах:
Установить настройки Windows Update:
windows_update_settings 'Settings to Configure Windows Nodes to automatically receive updates' do
disable_os_upgrades true
elevate_non_admins true
block_windows_update_website true
automatically_install_minor_updates true
scheduled_install_day 'Friday'
scheduled_install_hour 18
update_other_ms_products true
action :enable
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/windows_update_settings/