netapp.ontap.na_ontap_rest_info 模块 – 使用 REST API 收集 NetApp ONTAP 信息
注意
此模块是 netapp.ontap 集合 (版本 22.13.0) 的一部分。
如果您使用的是 ansible
包,则可能已安装此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install netapp.ontap
。您需要其他要求才能使用此模块,请参阅 要求 获取详细信息。
要在 playbook 中使用它,请指定:netapp.ontap.na_ontap_rest_info
。
netapp.ontap 20.5.0 中的新增功能
概要
此模块允许您使用 REST API 收集有关 ONTAP 配置的各种信息
要求
执行此模块的主机需要以下要求。
Ansible 2.9 或更高版本 - 建议使用 2.12 或更高版本。
Python3 - 建议使用 3.9 或更高版本。
使用 ZAPI 时,需要 netapp-lib 2018.11.13 或更高版本(使用“pip install netapp-lib”安装),强烈建议使用 netapp-lib 2020.3.12,因为它可以为连接问题提供更好的错误报告。
物理或虚拟集群式 Data ONTAP 系统,模块支持 Data ONTAP 9.1 及更高版本,REST 支持需要 ONTAP 9.6 或更高版本。
参数
参数 |
注释 |
---|---|
SSL 客户端证书文件(.pem)的路径。 python 2.6 不支持。 |
|
启用或禁用新功能。 这可用于启用实验性功能或禁用破坏向后兼容性的新功能。 支持的键和值可能会随时更改,恕不另行通知。未知键将被忽略。 |
|
从子集中请求特定字段。 推荐 - ‘<字段列表>’ 以返回指定的字段,只允许一个子集。 不推荐 - ‘*’ 以返回所有字段,允许一个或多个子集。此选项可用于发现,但在生产环境中不推荐使用。 强烈不推荐 - ‘**’ 以返回所有字段,允许一个或多个子集。此选项可能会给系统带来额外的负载,不应在生产环境中使用。 有限制 - ‘’ 以返回默认字段,通常是唯一标识记录的属性(键)。默认情况下不返回其他数据,需要使用字段名称或 * 明确调用。 如果不存在此选项,则返回该 API 的默认字段(参见上面的 ‘’)。 |
|
使用 REST 时覆盖集群 ONTAP 版本。 如果版本与目标集群不匹配,则行为未定义。 这是在由于权限问题无法读取集群版本时提供的解决方法。请参见 https://github.com/ansible-collections/netapp.ontap/wiki/Known-issues。 这应采用 9.10 或 9.10.1 的形式,每个元素都是整数。 |
|
提供此参数时,它会将收集的信息限制在给定的子集。 可以提供 REST API 或 ZAPI 信息名称。此参数的可能值包括 application/applications 或 application_info application/consistency-groups application/templates 或 application_template_info cloud/targets 或 cloud_targets_info cluster cluster/chassis 或 cluster_chassis_info cluster/counter/tables cluster/firmware/history cluster/jobs 或 cluster_jobs_info cluster/licensing/capacity-pools cluster/licensing/license-managers cluster/licensing/licenses 或 license_info cluster/mediators cluster/metrics 或 cluster_metrics_info cluster/metrocluster 或 metrocluster_info cluster/metrocluster/diagnostics 或 cluster_metrocluster_diagnostics 或 metrocluster_check_info cluster/metrocluster/dr-groups cluster/metrocluster/interconnects cluster/metrocluster/nodes 或 metrocluster-node-get-iter cluster/metrocluster/operations cluster/metrocluster/svms cluster/nodes 或 cluster_node_info 或 sysconfig_info cluster/ntp/keys cluster/ntp/servers 或 ntp_server_info cluster/peers 或 cluster_peer_info cluster/schedules 或 cluster_schedules 或 job_schedule_cron_info cluster/sensors cluster/software 或 ontap_system_version 或 cluster_image_info cluster/software/download 或 cluster_software_download cluster/software/history 或 cluster_software_history cluster/software/packages 或 cluster_software_packages cluster/web name-services/cache/group-membership/settings name-services/cache/host/settings name-services/cache/netgroup/settings name-services/cache/setting name-services/cache/unix-group/settings name-services/dns 或 svm_dns_config_info 或 net_dns_info name-services/ldap 或 svm_ldap_config_info 或 ldap_client 或 ldap_config name-services/ldap-schemas name-services/local-hosts name-services/name-mappings 或 svm_name_mapping_config_info name-services/nis 或 svm_nis_config_info name-services/unix-groups name-services/unix-users network/ethernet/broadcast-domains 或 broadcast_domains_info 或 net_port_broadcast_domain_info network/ethernet/ports 或 network_ports_info 或 net_port_info network/ethernet/switch/ports network/ethernet/switches 或 cluster_switch_info network/fc/fabrics network/fc/interfaces network/fc/logins 或 san_fc_logins_info network/fc/ports network/fc/wwpn-aliases 或 san_fc_wppn-aliases 或 fcp_alias_info network/http-proxy network/ip/bgp/peer-groups network/ip/interfaces 或 ip_interfaces_info 或 net_interface_info network/ip/routes 或 ip_routes_info 或 net_routes_info network/ip/service-policies 或 ip_service_policies 或 net_interface_service_policy_info network/ip/subnets network/ipspaces 或 network_ipspaces_info 或 net_ipspaces_info private/support/alerts 或 sys_cluster_alerts private/cli/vserver/security/file-directory 或 file_directory_security protocols/active-directory protocols/audit protocols/cifs/connections protocols/cifs/domains protocols/cifs/group-policies protocols/cifs/home-directory/search-paths 或 cifs_home_directory_info protocols/cifs/local-groups protocols/cifs/local-users protocols/cifs/netbios protocols/cifs/services 或 cifs_services_info 或 cifs_options_info protocols/cifs/session/files protocols/cifs/sessions protocols/cifs/shadow-copies protocols/cifs/shadowcopy-sets protocols/cifs/shares 或 cifs_share_info protocols/cifs/users-and-groups/privileges protocols/cifs/unix-symlink-mapping protocols/fpolicy protocols/locks protocols/ndmp protocols/ndmp/nodes 协议/NDMP/会话 协议/NDMP/SVM 协议/NFS/已连接客户端 协议/NFS/已连接客户端映射 协议/NFS/已连接客户端设置 协议/NFS/导出策略或export_policy_info 协议/NFS/导出策略/规则 **需要设置owning_resource** 协议/NFS/Kerberos/接口 协议/NFS/Kerberos/领域或kerberos_realm_info 协议/NFS/服务或vserver_nfs_info或nfs_info 协议/NVMe/接口或nvme_interface_info 协议/NVMe/服务或nvme_info 协议/NVMe/子系统或nvme_subsystem_info 协议/NVMe/子系统控制器 协议/NVMe/子系统映射 协议/S3/存储桶 协议/S3/服务 协议/SAN/FCP/服务或san_fcp_services或fcp_service_info 协议/SAN/i组或nitiator_groups_info或igroup_info 协议/SAN/iSCSI/凭据或san_iscsi_credentials 协议/SAN/iSCSI/服务或san_iscsi_services或iscsi_service_info 协议/SAN/iSCSI/会话 协议/SAN/LUN映射或san_lun_maps或lun_map_info 协议/SAN/端口集 协议/SAN/VVOL绑定 协议/Vscan或vscan_status_info或vscan_info 协议/Vscan/访问控制策略 **需要设置owning_resource** 协议/Vscan/按需策略 **需要设置owning_resource** 协议/Vscan/扫描程序池 **需要设置owning_resource** 协议/Vscan/服务器状态或vscan_connection_status_all_info 安全 安全/账户或security_login_info或security_login_account_info 安全/反勒索软件/可疑对象 安全/审计 安全/审计/目标或cluster_log_forwarding_info 安全/审计/消息 安全/身份验证/集群/AD代理 安全/身份验证/集群/LDAP 安全/身份验证/集群/NIS 安全/身份验证/集群/SAML-SP 安全/身份验证/公钥 安全/AWS KMS 安全/Azure密钥保管库 安全/证书 安全/GCP KMS 安全/IPsec 安全/IPsec/CA证书 安全/IPsec/策略 安全/IPsec/安全关联 安全/密钥管理器配置 安全/密钥管理器 安全/密钥存储 安全/登录/消息 安全/多管理员验证 安全/多管理员验证/审批组 安全/多管理员验证/请求 安全/多管理员验证/规则 安全/角色或security_login_rest_role_info 安全/SSH 安全/SSH/SVM SnapMirror/策略或snapmirror_policy_info SnapMirror/关系或snapmirror_info 存储/聚合或aggregate_info 存储/桥接或storage_bridge_info 存储/集群 存储/磁盘或disk_info 存储/文件/克隆/拆分负载 存储/文件/克隆/拆分状态 存储/文件/克隆/令牌 存储/文件/移动 存储/FlexCache/FlexCache或storage_flexcaches_info 存储/FlexCache/源或storage_flexcaches_origin_info 存储/LUN或storage_luns_info或lun_info(如果存在serial_number,则计算serial_hex和naa_id) 存储/命名空间或storage_NVMe_namespaces或nvme_namespace_info 存储/池 存储/端口或storage_ports_info 存储/QoS/策略或storage_qos_policies或qos_policy_info或qos_adaptive_policy_info 存储/QoS/工作负载 存储/qtree或storage_qtrees_config或qtree_info 存储/配额/报告或storage_quota_reports或quota_report_info 存储/配额/规则或storage_quota_policy_rules 存储/机架或storage_shelves_config或shelf_info 存储/SnapLock/审计日志 存储/SnapLock/合规时钟 存储/SnapLock/事件保留/操作 存储/SnapLock/事件保留/策略 存储/SnapLock/文件指纹 存储/SnapLock/诉讼 存储/快照策略或storage_snapshot_policies或snapshot_policy_info 存储/交换机 存储/磁带设备 存储/卷或volume_info 存储/卷/快照 **需要设置owning_resource** 存储/卷效率策略或sis_policy_info 支持/AutoSupport或autosupport_config_info 支持/AutoSupport/检查或autosupport_check_info 支持/AutoSupport/消息或autosupport_messages_history 支持/自动更新 支持/自动更新/配置 支持/自动更新/更新 支持/配置备份 支持/配置备份/备份 支持/coredump/coredumps 支持/EMS或support_ems_config 支持/EMS/目标或event_notification_info或event_notification_destination_info 支持/EMS/事件或support_ems_events 支持/EMS/过滤器或support_ems_filters 支持/EMS/消息 支持/SNMP 支持/SNMP/陷阱主机 支持/SNMP/用户 SVM/迁移 SVM/对等机或svm_peers_info或vserver_peer_info SVM/对等权限或svm_peer-permissions_info SVM/SVM或vserver_info 以下内容没有直接的REST API等效项 aggr_efficiency_info cifs_vserver_security_info clock_info cluster_identity_info net_vlan_info sis_info snapmirror_destination_info system_node_info volume_space_info 可以指定一个值列表以包含更大的子集。 REST API 自 ONTAP 9.6 版起受支持。 默认值: |
|
如果为false,则在REST调用中禁用HAL编码的链接。 选项
|
|
ONTAP实例的主机名或IP地址。 |
|
使用此端口覆盖默认端口(80或443) |
|
启用和禁用HTTPS。 使用REST时忽略,因为仅支持HTTPS。 使用SSL证书身份验证时忽略,因为它需要SSL。 选项
|
|
子字符串列表。 如果在获取子集时错误消息中包含子字符串,则模块不会失败,并且错误会报告在子集中。 |
|
SSL客户端密钥文件的路径。 |
|
单个调用中返回的记录最大数量。 默认值: |
|
某些资源无法直接访问。您需要根据所有者或父项选择它们。例如,快照的卷。 以下子集需要拥有资源,以及uuid不存在时的以下子选项。 <storage/volumes/snapshots> **volume_name** 是卷名,**svm_name** 是卷的拥有vserver名称。 <protocols/nfs/export-policies/rules> **policy_name** 是策略的名称,**svm_name** 是策略的拥有vserver名称,**rule_index** 是规则索引。 <protocols/vscan/on-access-policies> **svm_name** 是vscan的拥有vserver名称 <protocols/vscan/on-demand-policies> **svm_name** 是vscan的拥有vserver名称 <protocols/vscan/scanner-pools> **svm_name** 是vscan的拥有vserver名称 |
|
允许传入任何REST选项 |
|
指定用户的密码。 |
|
自21.1.0版起已弃用。 此选项被忽略,并将继续被忽略。 |
|
如果为true,则返回字典键中的/将转换为_。 这使得在处理输出时可以使用.表示法成为可能。 例如,可以访问ontap_info[“svm/svms”]作为ontap_info.svm_svms。 选项
|
|
此模块仅支持REST。 always – 将始终使用REST API。如果模块不支持REST,则会发出警告。 默认值: |
|
这可以是集群范围的帐户或SVM范围的帐户,具体取决于是否需要集群级或SVM级API。 有关更多信息,请阅读文档 https://mysupport.netapp.com/NOW/download/software/nmsdk/9.4/。 支持两种身份验证方法
要使用证书,必须已在ONTAP集群中安装证书,并且必须已启用证书身份验证。 |
|
如果设置为 这应仅设置为 选项
|
备注
注意
security_login_role_config_info 没有REST等效项。
security_login_role_info 没有REST等效项。
security_key_manager_key_info 没有REST等效项。
vserver_motd_info 没有REST等效项。
vserver_login_banner_info 没有REST等效项。
vscan_connection_extended_stats_info 没有REST等效项。
env_sensors_info 没有REST等效项。
fcp_adapter_info 没有REST等效项。
net_dev_discovery_info 没有REST等效项。
net_failover_group_info 没有REST等效项。
net_firewall_info 没有REST等效项。
ntfs_dacl_info 没有REST等效项。
ntfs_sd_info 没有REST等效项。
role_info 没有REST等效项。
subsys_health_info 没有REST等效项。
volume_move_target_aggr_info 没有REST等效项。
以na_ontap为前缀的模块旨在支持ONTAP存储平台。
默认情况下启用HTTPS,建议使用。要在集群上启用HTTP,您必须运行以下命令“set -privilege advanced;”“system services web modify -http-enabled true;”。
示例
- name: run ONTAP gather facts for vserver info
netapp.ontap.na_ontap_rest_info:
hostname: "1.2.3.4"
username: "testuser"
password: "test-password"
https: true
validate_certs: false
use_rest: Always
gather_subset:
- svm/svms
- name: run ONTAP gather facts for aggregate info and volume info
netapp.ontap.na_ontap_rest_info:
hostname: "1.2.3.4"
username: "testuser"
password: "test-password"
https: true
validate_certs: false
use_rest: Always
gather_subset:
- storage/aggregates
- storage/volumes
- name: run ONTAP gather facts for aggregate info and volume info with fields section
netapp.ontap.na_ontap_rest_info:
hostname: "1.2.3.4"
username: "testuser"
password: "test-password"
https: true
fields:
- '*'
validate_certs: false
use_rest: Always
gather_subset:
- storage/aggregates
- storage/volumes
- name: run ONTAP gather facts for aggregate info with specified fields
netapp.ontap.na_ontap_rest_info:
hostname: "1.2.3.4"
username: "testuser"
password: "test-password"
https: true
fields:
- 'uuid'
- 'name'
- 'node'
validate_certs: false
use_rest: Always
gather_subset:
- storage/aggregates
parameters:
recommend:
true
- name: Get Snapshot info (owning_resource example)
netapp.ontap.na_ontap_rest_info:
hostname: "1.2.3.4"
username: "testuser"
password: "test-password"
https: true
fields:
- '*'
validate_certs: false
use_rest: Always
gather_subset:
- storage/volumes/snapshots
owning_resource:
volume_name: volume_name
svm_name: svm_name
- name: run ONTAP gather facts for volume info with query on name and state
netapp.ontap.na_ontap_rest_info:
hostname: "1.2.3.4"
username: "testuser"
password: "test-password"
https: true
validate_certs: false
gather_subset:
- storage/volumes
parameters:
name: ansible*
state: online
- name: run ONTAP gather fact to get DACLs
netapp.ontap.na_ontap_rest_info:
hostname: "1.2.3.4"
username: "testuser"
password: "test-password"
https: true
validate_certs: false
gather_subset:
- file_directory_security
parameters:
vserver: svm1
path: /vol1/qtree1
use_python_keys: true
- name: get ip network interface info.
netapp.ontap.na_ontap_rest_info:
hostname: "1.2.3.4"
username: "testuser"
password: "test-password"
https: true
validate_certs: false
gather_subset:
- ip_interfaces_info
parameters:
location.failover: home_node_only
location.node.name: ontap_cluster
service_policy.name: default-data-files
- name: get aggregate info
netapp.ontap.na_ontap_rest_info:
hostname: "1.2.3.4"
username: "testuser"
password: "test-password"
https: true
validate_certs: false
gather_subset:
- aggregate_info
parameters:
node.name: ontap_cluster
block_storage.primary.raid_type: raid_dp
# assuming module_defaults is used to set hostname, username, ...
- name: run demo subset using custom vsadmin role
netapp.ontap.na_ontap_rest_info:
gather_subset:
- demo
force_ontap_version: 9.8
ignore_api_errors:
- 'not authorized for that command'
# reports: {"cluster/nodes": {"error": {"code": "6", "message": "not authorized for that command"}}