netapp.ontap.na_ontap_service_policy 模块 – 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_service_policy

netapp.ontap 21.7.0 中新增

概要

  • 添加、修改或删除服务策略。

  • 此模块需要 ONTAP 9.8 或更高版本,并且只支持 REST。

需求

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

  • 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 或更高版本。

参数

参数

注释

additional_services

列表 / 元素=字符串

netapp.ontap 22.0.0 中新增

作为更新 known_services 的替代方法,可以在这里指定新服务。

cert_filepath

字符串

netapp.ontap 20.6.0 中新增

SSL 客户端证书文件(.pem)的路径。

python 2.6 不支持。

feature_flags

字典

netapp.ontap 20.5.0 中新增

启用或禁用新功能。

这可以用来启用实验性功能或禁用破坏向后兼容性的新功能。

支持的键和值可能会在未经通知的情况下更改。未知键将被忽略。

force_ontap_version

字符串

netapp.ontap 21.23.0 中新增

使用 REST 时覆盖集群 ONTAP 版本。

如果版本与目标集群不匹配,则行为未定义。

这是在由于权限问题无法读取集群版本时提供的解决方法。参见 https://github.com/ansible-collections/netapp.ontap/wiki/Known-issues

这应采用 9.10 或 9.10.1 的形式,每个元素都是整数。

hostname

字符串 / 必需

ONTAP 实例的主机名或 IP 地址。

http_port

整数

使用此端口覆盖默认端口 (80 或 443)

https

布尔值

启用和禁用 https。

使用 REST 时被忽略,因为只支持 https。

使用 SSL 证书认证时被忽略,因为它需要 SSL。

选项

  • false ← (默认)

  • true

ipspace

字符串

ipspace 的名称。

对于集群范围的服务策略,这是必需的。

对于 SVM 范围的服务策略,这是可选的。

key_filepath

字符串

netapp.ontap 20.6.0 中新增

SSL 客户端密钥文件的路径。

known_services

列表 / 元素=字符串

netapp.ontap 22.0.0 中新增

9.12.1 中已知服务的列表

如果 services 中的任何服务不在此列表或 new_services 中,则会引发错误。

如有需要,可以修改此列表以限制您想要支持的服务。

默认值: ["cluster_core", "intercluster_core", "management_core", "management_autosupport", "management_bgp", "management_ems", "management_https", "management_http", "management_ssh", "management_portmap", "data_core", "data_nfs", "data_cifs", "data_flexcache", "data_iscsi", "data_s3_server", "data_dns_server", "data_fpolicy_client", "management_ntp_client", "management_dns_client", "management_ad_client", "management_ldap_client", "management_nis_client", "management_snmp_server", "management_rsh_server", "management_telnet_server", "management_ntp_server", "data_nvme_tcp", "backup_ndmp_control", "management_log_forwarding"]

name

字符串 / 必需

服务策略的名称。

password

别名:pass

字符串

指定用户的密码。

scope

字符串

对于由 SVM 拥有的接口,设置为“svm”。否则,设置为“cluster”。

如果设置了 vserver,则假定为 svm。

如果未设置 vserver,则假定为 cluster。

选项

  • "cluster"

  • "svm"

services

列表 / 元素=字符串

要与此服务策略关联的服务列表。

要移除所有服务,请使用“no_service”。如果存在“no_service”,则不允许使用其他值。

注意 -并非所有版本的 ONTAP 都支持所有值,并且可能会添加新的值。

请参阅known_servicesadditional_services以解决未知服务错误。

状态 (state)

字符串

指定的服务策略是否存在。

选项

  • "present" ← (默认)

  • "absent"

use_rest

字符串

此模块仅支持 REST。

always – 将始终使用 REST API。如果模块不支持 REST,则会发出警告。

默认值: "always"

用户名 (username)

别名:user

字符串

这可以是集群范围或 SVM 范围的帐户,具体取决于是否需要集群级或 SVM 级 API。

更多信息,请阅读文档 https://mysupport.netapp.com/NOW/download/software/nmsdk/9.4/

支持两种身份验证方法

  1. 基本身份验证,使用用户名和密码;

  2. SSL 证书身份验证,使用 SSL 客户端证书文件,以及可选的私钥文件。

要使用证书,必须已在 ONTAP 集群中安装该证书,并且必须已启用证书身份验证。

validate_certs

布尔值

如果设置为no,则不会验证 SSL 证书。

仅当在使用自签名证书的个人控制站点上使用时,才应将其设置为False

选项

  • false

  • true ← (默认)

vserver

字符串

要使用的 vserver 的名称。

对于集群范围的用户帐户,请省略此选项。

注释

注意

  • 此模块支持 check_mode。

  • 此模块不支持“allowed-addresses”,因为 REST 不支持它。它默认为 0.0.0.0/0。

  • 以 na_ontap 为前缀的模块旨在支持 ONTAP 存储平台。

  • 默认情况下启用 https,建议使用。要在集群上启用 http,必须运行以下命令:‘set -privilege advanced;’ ‘system services web modify -http-enabled true;’

示例

- name: Create service policy
  netapp.ontap.na_ontap_service_policy:
    state: present
    name: "{{ service_policy_name }}"
    services:
      - data_core
      - data_nfs
    vserver: ansibleVServer
    hostname: "{{ netapp_hostname }}"
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"

- name: Delete single service policy
  netapp.ontap.na_ontap_service_policy:
    state: absent
    name: "{{ service_policy_name }}"
    vserver: ansibleVServer
    hostname: "{{ netapp_hostname }}"
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"

- name: Modify single service policy
  netapp.ontap.na_ontap_service_policy:
    state: present
    name: "{{ service_policy_name }}"
    services:
      - data_core
      - data_nfs
      - data_cifs
    vserver: ansibleVServer
    hostname: "{{ netapp_hostname }}"
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"

- name: Modify service policy, remove services
  netapp.ontap.na_ontap_service_policy:
    state: present
    name: "{{ service_policy_name }}"
    services:
      - no_service
    vserver: "{{ vserver }}"

- name: Modify service policy at cluster level
  netapp.ontap.na_ontap_service_policy:
    state: present
    name: "{{ service_policy_name }}"
    ipspace: ansibleIpspace
    scope: cluster
    services:
      - management_core
      - management_autosupport
      - management_ems

返回值

常见返回值已在此处记录,以下是此模块特有的字段

键 (Key)

描述

cd_action

字符串

是否创建或删除公钥。

返回:success

modify

字典

如果密钥已存在,则修改的属性。

返回:success

作者

  • NetApp Ansible 团队 (@carchi8py)