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 名称服务/缓存/设置 名称服务/缓存/unix组/设置 名称服务/dns 或 svm_dns_config_info 或 net_dns_info 名称服务/ldap 或 svm_ldap_config_info 或 ldap_client 或 ldap_config 名称服务/ldap-schemas 名称服务/本地主机 名称服务/名称映射 或 svm_name_mapping_config_info 名称服务/nis 或 svm_nis_config_info 名称服务/unix组 名称服务/unix用户 网络/以太网/广播域 或 broadcast_domains_info 或 net_port_broadcast_domain_info 网络/以太网/端口 或 network_ports_info 或 net_port_info 网络/以太网/交换机/端口 网络/以太网/交换机 或 cluster_switch_info 网络/fc/光纤通道 网络/fc/接口 网络/fc/登录 或 san_fc_logins_info 网络/fc/端口 网络/fc/wwpn别名 或 san_fc_wppn-aliases 或 fcp_alias_info 网络/http代理 网络/ip/bgp/对等组 网络/ip/接口 或 ip_interfaces_info 或 net_interface_info 网络/ip/路由 或 ip_routes_info 或 net_routes_info 网络/ip/服务策略 或 ip_service_policies 或 net_interface_service_policy_info 网络/ip/子网 网络/ip空间 或 network_ipspaces_info 或 net_ipspaces_info 私有/支持/警报 或 sys_cluster_alerts 私有/cli/vserver/安全/文件目录 或 file_directory_security 协议/活动目录 协议/审计 协议/cifs/连接 协议/cifs/域 协议/cifs/组策略 协议/cifs/主目录/搜索路径 或 cifs_home_directory_info 协议/cifs/本地组 协议/cifs/本地用户 协议/cifs/netbios 协议/cifs/服务 或 cifs_services_info 或 cifs_options_info 协议/cifs/会话/文件 协议/cifs/会话 协议/cifs/卷影副本 协议/cifs/卷影副本集 协议/cifs/共享 或 cifs_share_info 协议/cifs/用户和组/权限 协议/cifs/unix符号链接映射 协议/fpolicy 协议/锁 协议/ndmp 协议/ndmp/节点 协议/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/igroups 或 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/coredump 支持/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 可以指定一个值列表以包含更大的子集。 ONTAP 9.6 及更高版本支持 REST API。 默认值: |
|
如果为 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"}}