dellemc.openmanage.ome_configuration_compliance_baseline 模块 – 在 OpenManage Enterprise 上创建、修改和删除配置合规性基准并修复不合规设备

注意

此模块是 dellemc.openmanage 集合(版本 9.9.0)的一部分。

如果您使用的是 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install dellemc.openmanage。您需要进一步的要求才能使用此模块,请参阅 要求 获取详细信息。

要在 playbook 中使用它,请指定:dellemc.openmanage.ome_configuration_compliance_baseline

dellemc.openmanage 3.2.0 中的新增功能

概要

  • 此模块允许在 OpenManage Enterprise 上创建、修改和删除配置合规性基准。此模块还允许通过更改设备的属性以匹配相关基准属性来修复与基准不合规的设备。

要求

执行此模块的主机需要满足以下要求。

  • python >= 3.9.6

参数

参数

注释

ca_path

路径

在 dellemc.openmanage 5.0.0 中添加

包含用于验证的 CA 证书的隐私增强邮件 (PEM) 文件。

command

字符串

create 从现有合规性模板创建配置基准。create 仅支持 namescheck_mode 或幂等性检查。

modify 修改现有基准。只能修改 namesdescriptiondevice_idsdevice_service_tagsdevice_group_names

警告 修改基准时,提供的 device_idsdevice_group_namesdevice_service_tags 将替换基准中先前存在的设备。

delete 基于基准名称删除配置合规性基准列表。无效的基准名称将被忽略。

remediate 通过更改设备的属性以匹配相关基准属性来修复与基准不合规的设备。

如果未提供 device_idsdevice_service_tags,则会对所有不合规的设备执行 remediate

选项

  • "create" ← (默认)

  • "modify"

  • "delete"

  • "remediate"

cron

字符串

提供基于 Quartz cron 格式的 cron 表达式。

时间格式为“%S %M %H %d %m ? %Y”。

run_latertrue 时适用。

description

字符串

合规性基准的描述。

commandcreatemodify 时适用。

device_group_names

列表 / 元素=字符串

目标设备组的名称。

commandcreatemodify 时适用,并且与 device_idsdevice_service_tag 互斥。

device_ids

列表 / 元素=整数

目标设备的 ID。

commandcreatemodifyremediate 时适用,并且与 device_service_tagdevice_group_names 互斥。

device_service_tags

列表 / 元素=字符串

目标设备的服务标签。

commandcreatemodifyremediate 时适用,并且与 device_idsdevice_group_names 互斥。

hostname

字符串 / 必需

OpenManage Enterprise IP 地址或主机名。

job_wait

布尔值

提供等待作业完成的选项。

commandcreatemodifyremediate 时适用。

选项

  • false

  • true ← (默认)

job_wait_timeout

整数

job_wait 的最长等待时间(以秒为单位)。作业仅在此持续时间内跟踪。

job_waittrue 时适用。

默认值: 10800

names

列表 / 元素=字符串 / 必需

配置合规性基准的名称。

commandcreatemodifydelete 时适用。

提供当commanddelete 时支持的配置合规基线名称列表。

new_name

字符串

要修改的合规基线的新名称。

此选项在commandmodify 时适用。

password

字符串

OpenManage Enterprise 密码。

如果未提供密码,则使用环境变量 OME_PASSWORD

示例: export OME_PASSWORD=password

port

整数

OpenManage Enterprise HTTPS 端口。

默认值: 443

run_later

布尔值

指示是立即修复还是在将来修复。

commandremediate 时适用。

如果run_latertrue,则忽略staged_at_reboot

如果run_latertrue,则job_wait不适用。

如果run_latertrue,则必须指定cron

选项

  • false

  • true

staged_at_reboot

布尔值

指示是否必须在下次重新启动时执行修复。

如果staged_at_reboottrue,则修复将在下次重新启动期间进行。

选项

  • false

  • true

template_id

整数

用于创建合规基线的部署模板的 ID。

此选项在commandcreate 时适用,并且与template_name互斥。

template_name

字符串

用于创建合规基线的合规模板的名称。

用于创建合规基线的部署模板的名称。

此选项在commandcreate 时适用,并且与template_id互斥。

timeout

整数

在 dellemc.openmanage 5.0.0 中添加

套接字级别的超时时间(以秒为单位)。

默认值: 30

username

字符串

OpenManage Enterprise 用户名。

如果未提供用户名,则使用环境变量 OME_USERNAME

示例: export OME_USERNAME=username

validate_certs

布尔值

在 dellemc.openmanage 5.0.0 中添加

如果为 false,则不会验证 SSL 证书。

仅在个人控制的、使用自签名证书的站点上配置 false

在集合版本 5.0.0 之前,validate_certs 默认为 false

选项

  • false

  • true ← (默认)

x_auth_token

字符串

在 dellemc.openmanage 9.3.0 中添加

身份验证令牌。

如果未提供 x_auth_token,则使用环境变量 OME_X_AUTH_TOKEN

示例: export OME_X_AUTH_TOKEN=x_auth_token

注释

注意

  • 此模块支持 check_mode

  • 确保设备具有执行基线合规性操作所需的许可证。

示例

---
- name: Create a configuration compliance baseline using device IDs
  dellemc.openmanage.ome_configuration_compliance_baseline:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    names: "baseline1"
    template_name: "template1"
    description: "description of baseline"
    device_ids:
      - 1111
      - 2222

- name: Create a configuration compliance baseline using device service tags
  dellemc.openmanage.ome_configuration_compliance_baseline:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    names: "baseline1"
    template_id: 1234
    description: "description of baseline"
    device_service_tags:
      - "SVCTAG1"
      - "SVCTAG2"

- name: Create a configuration compliance baseline using group names
  dellemc.openmanage.ome_configuration_compliance_baseline:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    names: "baseline2"
    template_id: 2
    job_wait_timeout: 1000
    description: "description of baseline"
    device_group_names:
      - "Group1"
      - "Group2"

- name: Delete the configuration compliance baselines
  dellemc.openmanage.ome_configuration_compliance_baseline:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: delete
    names:
      - baseline1
      - baseline2

- name: Modify a configuration compliance baseline using group names
  dellemc.openmanage.ome_configuration_compliance_baseline:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: modify
    names: "baseline1"
    new_name: "baseline_update"
    template_name: "template2"
    description: "new description of baseline"
    job_wait_timeout: 1000
    device_group_names:
      - Group1

- name: Remediate specific non-compliant devices to a configuration compliance baseline using device IDs
  dellemc.openmanage.ome_configuration_compliance_baseline:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "remediate"
    names: "baseline1"
    device_ids:
      - 1111

- name: Remediate specific non-compliant devices to a configuration compliance baseline using device service tags
  dellemc.openmanage.ome_configuration_compliance_baseline:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "remediate"
    names: "baseline1"
    device_service_tags:
      - "SVCTAG1"
      - "SVCTAG2"

- name: Remediate all the non-compliant devices to a configuration compliance baseline
  dellemc.openmanage.ome_configuration_compliance_baseline:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "remediate"
    names: "baseline1"

- name: Remediate specific non-compliant devices to a configuration compliance baseline using device IDs at scheduled time
  dellemc.openmanage.ome_configuration_compliance_baseline:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "remediate"
    names: "baseline1"
    device_ids:
      - 1111
    run_later: true
    cron: "0 10 11 14 02 ? 2032"  # Feb 14,2032 11:10:00

- name: Remediate specific non-compliant devices to a configuration compliance baseline using device service tags on next reboot
  dellemc.openmanage.ome_configuration_compliance_baseline:
    hostname: "192.168.0.1"
    username: "username"
    password: "password"
    ca_path: "/path/to/ca_cert.pem"
    command: "remediate"
    names: "baseline1"
    device_service_tags:
      - "SVCTAG1"
      - "SVCTAG2"
    staged_at_reboot: true

返回值

通用返回值在此处记录 此处,以下是此模块独有的字段

描述

compliance_status

字典

合规基线操作的状态。

返回:commandcreatemodify

示例: {"BaselineTargets": [{"Id": 1111, "Type": {"Id": 1000, "Name": "DEVICE"}}], "ConfigComplianceSummary": {"ComplianceStatus": "OK", "NumberOfCritical": 0, "NumberOfIncomplete": 0, "NumberOfNormal": 0, "NumberOfWarning": 0}, "Description": null, "Id": 13, "LastRun": "2021-02-27 13:15:13.751", "Name": "baseline1", "PercentageComplete": "100", "TaskId": 26584, "TaskStatus": 2070, "TemplateId": 102, "TemplateName": "one", "TemplateType": 2}

error_info

字典

HTTP 错误的详细信息。

返回: 在 HTTP 错误时

示例: {"error": {"@Message.ExtendedInfo": [{"Message": "无法处理请求,因为发生错误。", "MessageArgs": [], "MessageId": "GEN1234", "RelatedProperties": [], "Resolution": "重试操作。如果问题仍然存在,请联系系统管理员。", "Severity": "严重"}], "code": "Base.1.0.GeneralError", "message": "发生了一般错误。有关详细信息,请参见 ExtendedInfo。"}}

incompatible_devices

列表 / 元素=字符串

无法用于执行基线合规性操作的设备的详细信息

返回:device_service_tagsdevice_ids 包含用于 createmodify 的不兼容设备时

示例: [1234, 5678]

job_details

列表 / 元素=字符串

失败作业的详细信息。

返回: 作业失败时

示例: [{"ElapsedTime": "00:22:17", "EndTime": "2024-06-19 13:42:41.285", "ExecutionHistoryId": 797320, "Id": 14123, "IdBaseEntity": 19559, "JobStatus": {"Id": 2070, "Name": "Failed"}, "Key": "SVCTAG1", "Progress": "100", "StartTime": "2024-06-19 13:20:23.495", "Value": "正在启动预检查...LC 状态为: 正在使用,等待 30 秒后重试...(1)"}]

job_id

整数

commandremediate 时创建的任务 ID。

返回:commandremediate

示例: 14123

msg

字符串

配置合规基线操作的总体状态。

返回: 始终

示例: "成功创建配置合规基线。"

作者

  • Sajna Shetty(@Sajna-Shetty)

  • Abhishek Sinha(@Abhishek-Dell)

  • Shivam Sharma(@ShivamSh3)