netapp.ontap.na_ontap_snapshot_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_snapshot_policy

netapp.ontap 2.8.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。

comment

字符串

附加到快照的人类可读注释。注释的大小最多为 255 个字符。

count

列表 / 元素=整数

计划创建的快照的保留计数。

enabled

布尔值

快照策略的状态,指示该策略是启用还是禁用。

选项

  • false

  • true

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 设置为自动时,这可能会根据版本和平台功能强制切换到 ZAPI。

使用 ZAPI 时忽略。

hostname

字符串 / 必需

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

http_port

整数

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

https

布尔值

启用和禁用 https。

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

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

选项

  • false ← (默认)

  • true

key_filepath

字符串

在 netapp.ontap 20.6.0 中添加

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

name

字符串 / 必需

要管理的快照策略的名称。最大字符串长度为 256 个字符。

ontapi

整数

要使用的 ontap api 版本

password

别名:pass

字符串

指定用户的密码。

prefix

列表 / 元素=字符串

在 netapp.ontap 19.11.0 中添加

计划的快照名称前缀。

前缀名称在策略中应是唯一的。

不能为已分配给快照策略的计划设置不同的前缀。

添加计划后,无法修改前缀。

retention_period

列表 / 元素=字符串

在 netapp.ontap 22.12.0 中添加

计划的快照副本的保留期。

有效值为 “infinite” 或以 ISO 8601 格式指定的持续时间。

以 ISO 8061 格式指定的保留期值必须以秒 (PT0S - PT65535S)、分钟 (PT0M - PT60M)、小时 (PT0H - PT24H)、天 (P0D - P36500D)、月 (P0M - P1200M)、年 (P0Y - P100Y) 为单位。

仅支持 REST,需要 ONTAP 9.12 或更高版本。

schedule

列表 / 元素=字符串

要添加到策略内的计划。

snapmirror_label

列表 / 元素=字符串

在 netapp.ontap 2.9.0 中添加

分配给策略内每个计划的 SnapMirror 标签。对于没有标签,请使用空字符串 ('')。

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

vserver

字符串

在 netapp.ontap 2.9.0 中添加

要使用的 vserver 的名称。在多租户环境中,将快照策略分配给 vserver 将限制其在该 vserver 中的使用。

备注

注意

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

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

示例

- name: Create Snapshot policy
  na_ontap_snapshot_policy:
    state: present
    name: ansible2
    schedule: hourly
    prefix: hourly
    count: 150
    enabled: True
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    https: False

- name: Create Snapshot policy with multiple schedules
  na_ontap_snapshot_policy:
    state: present
    name: ansible2
    schedule: ['hourly', 'daily', 'weekly', 'monthly', '5min']
    prefix: ['hourly', 'daily', 'weekly', 'monthly', '5min']
    count: [1, 2, 3, 4, 5]
    enabled: True
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    https: False

- name: Create Snapshot policy owned by a vserver
  na_ontap_snapshot_policy:
    state: present
    name: ansible3
    vserver: ansible
    schedule: ['hourly', 'daily', 'weekly', 'monthly', '5min']
    prefix: ['hourly', 'daily', 'weekly', 'monthly', '5min']
    count: [1, 2, 3, 4, 5]
    snapmirror_label: ['hourly', 'daily', 'weekly', 'monthly', '']
    enabled: True
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    https: False

- name: Modify Snapshot policy with multiple schedules
  na_ontap_snapshot_policy:
    state: present
    name: ansible2
    schedule: ['daily', 'weekly']
    count: [20, 30]
    snapmirror_label: ['daily', 'weekly']
    enabled: True
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    https: False

- name: Delete Snapshot policy
  na_ontap_snapshot_policy:
    state: absent
    name: ansible2
    username: "{{ netapp_username }}"
    password: "{{ netapp_password }}"
    hostname: "{{ netapp_hostname }}"
    https: False

作者

  • NetApp Ansible 团队 (@carchi8py)