netapp.ontap.na_ontap_broadcast_domain 模块 – 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_broadcast_domain

netapp.ontap 2.6.0 中的新增功能

概要

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

参数

参数

注释

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 的形式,每个元素都是一个整数。

use_rest 设置为 auto 时,这可能会强制根据版本和平台功能切换到 ZAPI。

使用 ZAPI 时忽略。

from_ipspace

字符串

在 netapp.ontap 2.15.0 中添加

如果与 from_name 一起使用,它将尝试在 from_ipspace 中查找广播域 from_name,拆分操作,要么重命名 broadcast_domain 和 ipspace,要么创建一个新的广播域。

如果没有 from_name,它将尝试在 from_ipspace 中查找 name 广播域,并使用 ipspace 修改 ipspace。

仅支持 REST。

from_name

字符串

在 netapp.ontap 2.8.0 中添加

指定要拆分为新广播域的广播域名。

hostname

字符串 / 必需

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

http_port

整数

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

https

布尔值

启用和禁用 https。

当使用 REST 时忽略,因为仅支持 https。

当使用 SSL 证书身份验证时忽略,因为它需要 SSL。

选择

  • false ←(默认)

  • true

ipspace

字符串

指定广播域所需的 ipspace。

使用 ZAPI,在创建域后无法修改域 ipspace。

使用 REST,可以修改域 ipspace。

在使用 REST 时,此选项是必需的。

key_filepath

字符串

在 netapp.ontap 20.6.0 中添加

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

mtu

整数

指定广播域所需的 mtu。

name

别名:broadcast_domain

字符串 / 必需

指定广播域名。

ontapi

整数

要使用的 ontap api 版本

password

别名:pass

字符串

指定用户的密码。

ports

列表 / 元素=字符串

指定与此广播域关联的端口。应以逗号分隔。

它表示任何时候端口列表的预期状态。

如果端口在预期状态中指定但不在当前状态中,则添加端口。

如果端口在当前状态中指定但不在预期状态中,则删除端口。

对于拆分操作,它表示要从当前广播域拆分并添加到新广播域的端口。

如果从广播域中移除或拆分所有端口,该广播域将自动删除。

使用 REST 时,如果在 from_name 中找到端口的精确匹配,则拆分操作将使用 name 重命名广播域。

使用 REST 时,如果 from_name 中端口的部分匹配,拆分操作将使用 name 创建新的广播域,并将部分匹配的端口从 from_name 移动到 name

使用 REST 时,如果 ports 不在 from_name 中,拆分操作将使用 name 创建一个新的广播域,并将 ports 添加到该域。

state(状态)

字符串

指定广播域是否应该存在。

选择

  • "present" ← (默认)

  • "absent"(不存在)

use_rest

字符串

是否使用 REST 或 ZAPI。

always(总是)– 如果模块支持 REST,将始终使用 REST API。如果模块不支持 REST,则会发出警告。如果 REST 中不支持某个模块选项,则会发出错误。

never(从不)– 如果模块支持 ZAPI,将始终使用 ZAPI。如果 ZAPI 中不支持某个 REST 选项,则可能会发出错误。

auto(自动)– 如果模块支持 REST 并且支持模块选项,则将尝试使用 REST API。否则,将恢复为 ZAPI。

默认值: "auto"

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 ← (默认)

注释

注意

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

  • 默认启用并推荐使用 https。要在集群上启用 http,您必须运行以下命令 'set -privilege advanced;' 'system services web modify -http-enabled true;'

示例

- name: create broadcast domain
  netapp.ontap.na_ontap_broadcast_domain:
    state: present
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    name: ansible_domain
    mtu: 1000
    ipspace: Default
    ports: ["khutton-vsim1:e0d-12", "khutton-vsim1:e0d-13"]
- name: modify broadcast domain
  netapp.ontap.na_ontap_broadcast_domain:
    state: present
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    name: ansible_domain
    mtu: 1100
    ipspace: Default
    ports: ["khutton-vsim1:e0d-12", "khutton-vsim1:e0d-13"]
- name: split broadcast domain
  netapp.ontap.na_ontap_broadcast_domain:
    state: present
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    from_name: ansible_domain
    name: new_ansible_domain
    mtu: 1200
    ipspace: Default
    ports: khutton-vsim1:e0d-12
- name: delete broadcast domain
  netapp.ontap.na_ontap_broadcast_domain:
    state: absent
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    name: ansible_domain
    ipspace: Default
- name: create broadcast domain REST
  netapp.ontap.na_ontap_broadcast_domain:
    state: present
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    name: ansible_domain
    mtu: 1200
    ipspace: Default
    ports: ["khutton-vsim1:e0d-12","khutton-vsim1:e0d-13","khutton-vsim1:e0d-14"]
- name: rename broadcast domain if exact match of ports REST
  netapp.ontap.na_ontap_broadcast_domain:
    state: present
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    from_name: ansible_domain
    name: new_ansible_domain
    mtu: 1200
    ipspace: Default
    ports: ["khutton-vsim1:e0d-12","khutton-vsim1:e0d-13","khutton-vsim1:e0d-14"]
- name: if partial match, remove e0d-12 from new_ansible_domain & create new domain ansible_domain with port e0d-12 REST
  netapp.ontap.na_ontap_broadcast_domain:
    state: present
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    from_name: new_ansible_domain
    name: ansible_domain
    mtu: 1200
    ipspace: Default
    ports: ["khutton-vsim1:e0d-12"]
- name: Modify both broadcast domain and ipspace REST.
  netapp.ontap.na_ontap_broadcast_domain:
    state: present
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    from_name: ansible_domain
    from_ipspace: Default
    name: ansible_domain_ip1
    ipspace: ipspace_1
    mtu: 1200
    ports: ["khutton-vsim1:e0d-12"]
- name: Modify ipspace only REST.
  netapp.ontap.na_ontap_broadcast_domain:
    state: present
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    from_ipspace: ipspace_1
    name: ansible_domain_ip1
    ipspace: Default
    mtu: 1200
    ports: ["khutton-vsim1:e0d-12"]
- name: delete broadcast domain new_ansible_domain.
  netapp.ontap.na_ontap_broadcast_domain:
    state: absent
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    name: new_ansible_domain
    mtu: 1200
    ipspace: Default
    ports: ["khutton-vsim1:e0d-13","khutton-vsim1:e0d-14"]

作者

  • NetApp Ansible 团队 (@carchi8py)