Модуль netapp.ontap.na_ontap_snapmirror – Управление SnapMirror в NetApp ONTAP или ElementSW
Примечание
Этот модуль входит в коллекцию netapp.ontap (версия 22.12.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить её установку, выполните ansible-galaxy collection list.
Для её установки используйте: ansible-galaxy collection install netapp.ontap. Для использования этого модуля требуются дополнительные условия. Подробнее см. Требования.
Для использования в плейбуке укажите: netapp.ontap.na_ontap_snapmirror.
Новое в netapp.ontap 2.7.0
Описание
- Создание/удаление/обновление/инициализация/прерывание/пересинхронизация/восстановление отношений томов/серверов SnapMirror для ONTAP/ONTAP
- Включает репликацию SVM, то есть резервное копирование сервера
- Создание/удаление/обновление отношений томов SnapMirror между ElementSW и ONTAP
- Изменение расписания для отношений SnapMirror для ONTAP/ONTAP и ElementSW/ONTAP
- Предварительное условие для отношений ElementSW-ONTAP или ONTAP-ElementSW — установленный конечный пункт SnapMirror для кластера ONTAP с интерфейсом ElementSW
- Предварительное условие для отношений ElementSW-ONTAP или ONTAP-ElementSW — включение SnapMirror в томе ElementSW
- Для создания отношения SnapMirror ElementSW/ONTAP должно существовать существующее отношение ONTAP/ElementSW
- Выполняет пересинхронизацию, если
relationship_state=activeи текущее состояние зеркалирования отношения snapmirror — прервано - Выполняет возобновление, если
relationship_state=active, текущий статус отношения snapmirror — приостановлен, а состояние зеркала — snapmirrored - Выполняет восстановление, если
relationship_type=restore, и все остальные операции не будут выполнены во время этой задачи
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- 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. |
clean_up_failure логическое добавлен в netapp.ontap 21.20.0 | Дополнительный параметр для восстановления после прерванной или неудачной операции восстановления. Любые временные отношения RST удаляются с целевого сервера Vserver. Поддерживается только с ZAPI. Выборы:
|
connection_type строка добавлен в netapp.ontap 2.9.0 | Тип отношения SnapMirror. Предварительное условие для either elementsw_ontap или ontap_elementsw том ElementSW должен иметь параметр enableSnapmirror, установленный в значение true. Для использования ontap_elementsw, должно существовать relationship snapmirror elementsw_ontap. Выборы:
|
create_destination словарь добавлен в netapp.ontap 21.1.0 | Требуется ONTAP 9.7 или более поздней версии. Создает целевой том, если включено и destination_volume присутствует или destination_path включает имя тома. Создает и подключает целевой сервер vserver для SVM DR. |
|
enabled логическое |
Создание целевого тома или сервера vserver. Это автоматически включается, если присутствует любой другой подпараметр. Выборы:
|
|
storage_service словарь |
услуга хранения, связанная с целевым конечным пунктом. |
|
enabled логическое |
Создание целевого конечного пункта с использованием службы хранения. Выборы:
|
|
enforce_performance логическое |
Принудительное применение производительности службы хранения к целевому конечному пункту. Выборы:
|
|
name строка |
уровень обслуживания производительности (PSL) для этого конечного пункта тома. Выборы:
|
|
tiering словарь |
Политика тиеринга облака. |
|
policy строка |
Политика тиеринга облака. Выборы:
|
|
supported логическое |
Включить предоставление целевых томов конечных пунктов на агрегатах FabricPool. Поддерживается только для томов FlexVol, томов FlexGroup и конечных пунктов группы согласованности. Выборы:
|
destination_cluster строка добавлен в netapp.ontap 21.1.0 | Требуется ONTAP 9.7 или более поздней версии. Необходимо для создания целевого сервера vserver для SVM DR или целевого тома. Устарело начиная с версии 21.2.0, используйте destination_endpoint и cluster. |
destination_endpoint словарь добавлен в netapp.ontap 21.2.0 | Целевой конечный пункт отношения SnapMirror. |
|
cluster строка |
Требуется ONTAP 9.7 или более поздней версии. Необходимо для создания целевого сервера vserver для SVM DR или целевого тома. |
|
consistency_group_volumes список / элементы=строка |
Требуется ONTAP 9.8 или более поздней версии. Обязательное свойство для конечного пункта группы согласованности. Указывает список томов FlexVol для группы согласованности. |
|
ipspace строка |
Требуется ONTAP 9.8 или более поздней версии. Необязательное свойство для указания IPSpace SVM. |
|
path строка / требуется |
Целевой конечный пункт для отношения. формат <vserver:volume>, <vserver:>, <vserver:/cg/cg_name> |
|
svm string |
Имя SVM. Не уверен, когда это нужно. |
destination_path string | Указывает конечную точку назначения для отношения SnapMirror. Устарело начиная с версии 21.2.0, используйте destination_endpoint и path. |
destination_volume string | Указывает имя целевого тома для SnapMirror. Устарело начиная с версии 21.2.0, используйте source_endpoint и path. |
destination_vserver string | Имя целевого vserver для SnapMirror. Устарело начиная с версии 21.2.0, используйте destination_endpoint и path, или svm. |
feature_flags dictionary добавлен в netapp.ontap 20.5.0 | Включить или выключить новую функцию. Это может использоваться для включения экспериментальной функции или отключения новой функции, нарушающей обратную совместимость. Поддерживаемые ключи и значения могут быть изменены без предварительного уведомления. Неизвестные ключи игнорируются. |
force_ontap_version string добавлен в netapp.ontap 21.23.0 | Переопределить версию кластера ONTAP при использовании REST. Поведение неопределено, если версия не соответствует целевому кластеру. Это предлагается в качестве обходного решения, когда версия кластера не может быть прочитана из-за проблем с разрешениями. См. https://github.com/ansible-collections/netapp.ontap/wiki/Known-issues. Это должно быть в формате 9.10 или 9.10.1, где каждый элемент — целое число. Когда Игнорируется при использовании ZAPI. |
hostname string / обязательно | Имя хоста или IP-адрес экземпляра ONTAP. |
http_port integer | Переопределите порт по умолчанию (80 или 443) с помощью этого порта |
https boolean | Включить и выключить https. Игнорируется при использовании REST, так как поддерживается только https. Игнорируется при использовании аутентификации по сертификату SSL, так как она требует SSL. Варианты:
|
identity_preservation string добавлен в netapp.ontap 22.4.0 | Указывает, какая конфигурация исходного SVM реплицируется на целевой SVM. Это свойство применимо только для защиты данных SVM с типом политики «async». Поддерживается только с REST и требует ONTAP 9.11.1 или более поздней версии. Варианты:
|
identity_preserve boolean добавлен в netapp.ontap 2.9.0 | Указывает, реплицируется ли идентификатор исходного Vserver на целевой Vserver. Если этот параметр установлен в значение true, конфигурация исходного Vserver также будет реплицирована на целевой. Если параметр установлен в значение false, тогда будут реплицированы только тома и конфигурация RBAC исходного Vserver на целевой. Варианты:
|
initialize boolean добавлен в netapp.ontap 19.11.0 | Указывает, нужно ли инициализировать отношение SnapMirror. По умолчанию значение True, его можно явно установить в False, чтобы избежать инициализации отношения SnapMirror. Варианты:
|
key_filepath string добавлен в netapp.ontap 20.6.0 | путь к файлу ключа SSL клиента. |
max_transfer_rate integer добавлен в netapp.ontap 2.9.0 | Указывает верхнюю границу, в килобайтах в секунду, скорости передачи данных. По умолчанию без ограничений, его можно явно установить в 0 для безлимитного значения. |
ontapi integer | Используемая версия API ontap. |
password алиасы: pass string | Пароль для указанного пользователя. |
peer_options dictionary добавлен в netapp.ontap 21.8.0 | IP-адрес и параметры подключения для peer-системы. Если какой-либо из этих параметров не указан, используется соответствующий параметр источника. |
|
cert_filepath string |
Путь к файлу сертификата SSL клиента (.pem). |
|
force_ontap_version string added in netapp.ontap 21.23.0 |
Переопределить версию кластера ONTAP при использовании REST. Поведение не определено, если версия не соответствует целевому кластеру. Это предлагается в качестве обходного решения, когда версия кластера не может быть прочитана из-за проблем с разрешениями. См. https://github.com/ansible-collections/netapp.ontap/wiki/Known-issues. Это должно быть в формате 9.10 или 9.10.1, где каждый элемент — целое число. Когда Игнорируется с ZAPI. |
|
hostname string / обязательно |
Имя хоста или IP-адрес экземпляра ONTAP. |
|
http_port целое число |
Переопределить стандартный порт (80 или 443) на указанный порт |
|
https логическое значение |
Включить и выключить https. Варианты:
|
|
key_filepath строка |
путь к файлу ключа SSL-клиента. |
|
ontapi целое число |
Версия ontap api для использования |
|
password псевдонимы: pass строка |
Пароль для указанного пользователя. |
|
use_rest строка |
REST API, если поддерживается целевой системой для всех ресурсов и атрибутов, необходимых модулю. В противном случае будет использоваться ZAPI. always — всегда будет использовать REST API never — всегда будет использовать ZAPI auto — будет пытаться использовать REST Api |
|
username псевдонимы: user строка |
Имя пользователя при использовании базовой аутентификации. |
|
validate_certs логическое значение |
Если установлено в Это следует установить только в Варианты:
|
policy строка added in netapp.ontap 2.8.0 | Укажите имя политики SnapMirror, которая применяется к этому отношению. |
relationship_info_only логическое значение added in netapp.ontap 20.4.0 | Если relationship-info-only установлено в true, то удаляется только информация об отношении. Варианты:
|
relationship_state строка added in netapp.ontap 20.2.0 | Указывает, нужно ли прервать отношение SnapMirror или установить отношение SnapMirror. state должен быть присутствовать, чтобы использовать этот параметр. Варианты:
|
relationship_type строка | Укажите тип отношения SnapMirror. для ‘restore’, если не указан ‘source_snapshot’, восстанавливается последняя копия снимка на целевом томе. SnapMirror для восстановления не идемпотентен. В REST поддерживаются только ‘extended_data_protection’ и ‘restore’. Варианты:
|
schedule псевдонимы: transfer_schedule строка added in netapp.ontap 22.2.0 | Укажите имя текущего расписания, которое используется для обновления отношения SnapMirror. Необязательно для создания, изменяемо. В REST этот параметр требует ONTAP 9.11.1 или более поздней версии. |
source_cluster строка added in netapp.ontap 21.1.0 | Требуется ONTAP 9.7 или более поздняя версия. Необходимо для создания взаимоотношения между источником и целевыми SVM. Устарело начиная с 21.2.0, используйте source_endpoint и cluster. |
source_endpoint словарь added in netapp.ontap 21.2.0 | конечная точка источника отношения SnapMirror. |
|
cluster строка |
Требуется ONTAP 9.7 или более поздняя версия. Необходимо для создания взаимоотношения между источником и целевыми SVM. |
|
consistency_group_volumes список / элементы=строка |
Требуется ONTAP 9.8 или выше. Обязательное свойство для конечной точки группы согласованности. Указывает список томов FlexVol для группы согласованности. |
|
ipspace строка |
Требуется ONTAP 9.8 или выше. Необязательное свойство для указания IPSpace SVM. |
|
path строка / обязательно |
Конечная точка источника для связи. Если источник — том ONTAP (FlexVol или FlexGroup), формат должен быть <vserver:volume> Для DR SVM, формат должен быть <vserver:> Для группы согласованности, формат должен быть <vserver:/cg/cg_name> Если источник — том ElementSW, формат должен быть <Element_SVIP:/lun/Element_VOLUME_ID> Если источник — том ElementSW, он должен иметь включенную SnapMirror. |
|
svm строка |
Имя SVM. Не уверен, когда это нужно. |
source_hostname строка | УСТЕРЕЖДЕН - пожалуйста, используйте Имя хоста источника или управляющий IP-адрес кластера ONTAP или ElementSW. Если присутствует, когда состояние отсутствует, связь высвобождается в источнике перед удалением в пункте назначения. Рекомендуется всегда высвобождать перед удалением, поэтому убедитесь, что этот параметр присутствует, если имя хоста источника известно. |
source_password строка | УСТЕРЕЖДЕН - пожалуйста, используйте Пароль источника для кластера ONTAP или ElementSW. Необязательно, если он такой же, как и пароль назначения. |
source_path строка | Указывает конечную точку источника связи SnapMirror. Если источник — том ONTAP, формат должен быть <[vserver:][volume]> или <[[cluster:]//vserver/]volume> Если источник — том ElementSW, формат должен быть <[Element_SVIP]:/lun/[Element_VOLUME_ID]> Если источник — том ElementSW, он должен иметь включенную SnapMirror. Устарело начиная с 21.2.0, используйте source_endpoint и path. |
source_snapshot строка добавлено в netapp.ontap 20.6.0 | Указывает снимок со источника, который нужно восстановить. |
source_username строка | УСТЕРЕЖДЕН - пожалуйста, используйте Имя пользователя источника для кластера ONTAP или ElementSW. Необязательно, если оно такое же, как и имя пользователя назначения. |
source_volume строка | Указывает имя тома источника для SnapMirror. Устарело начиная с 21.2.0, используйте source_endpoint и path. |
source_vserver строка | Имя vserver источника для SnapMirror. Устарело начиная с 21.2.0, используйте source_endpoint и path или svm. |
state строка | Указывает, должна ли заданная связь существовать или нет. Варианты:
|
transferring_time_out целое число добавлено в netapp.ontap 21.20.0 | Сколько времени ждать, когда происходит передача (например, после инициализации). Единица измерения — секунды. По умолчанию: |
update логический тип добавлено в netapp.ontap 20.2.0 | Указывает, нужно ли обновлять конечную точку назначения связи SnapMirror только в том случае, если связь уже присутствует и активна. По умолчанию значение True. Варианты:
|
use_rest строка | Использовать REST или ZAPI. always — всегда будет использовать REST API, если модуль его поддерживает. Выводится предупреждение, если модуль не поддерживает REST. Выводится ошибка, если опция модуля не поддерживается в REST. never — всегда будет использовать ZAPI, если модуль его поддерживает. Возможна ошибка, если опция REST не поддерживается в ZAPI. auto — попытается использовать REST API, если модуль его поддерживает и опции модуля поддерживаются. Иначе переходит на ZAPI. По умолчанию: |
username псевдонимы: user строка | Это может быть учётная запись на уровне кластера или SVM, в зависимости от того, требуется ли API на уровне кластера или SVM. Для получения дополнительной информации, пожалуйста, ознакомьтесь с документацией https://mysupport.netapp.com/NOW/download/software/nmsdk/9.4/. Поддерживаются два метода аутентификации:
Для использования сертификата, он должен быть установлен в кластере ONTAP, и должна быть включена аутентификация по сертификату. |
validate_certs логический тип | Если установлено значение Это значение должно быть установлено только в Варианты:
|
validate_source_path boolean added in netapp.ontap 21.21.0 | Связь находится на основе назначения, так как она уникальна. По умолчанию проверяется информация об источнике, и если обнаруживается несоответствие, выдается ошибка. Это означает, что назначение уже используется другой связью. Проверка учитывает имя локального vserver, которое может отличаться от имени удаленного vserver. Это можно отключить, если проверка слишком строгая, например, для безусловного удаления связи. Выбор:
|
Примечания
Примечание
- поддерживает REST и ZAPI.
- поддерживает режим проверки.
- восстановление не идемпотентно.
- snapmirror работает на назначении для большинства операций, peer_options определяют кластер источника.
- ONTAP поддерживает либо имя пользователя/пароль, либо сертификат SSL для аутентификации.
- ElementSW поддерживает только имя пользователя/пароль для аутентификации.
- Модули с префиксом na_ontap созданы для поддержки платформы хранения ONTAP.
- https включен по умолчанию и рекомендуется. Чтобы включить http в кластере, необходимо выполнить следующие команды: ‘set -privilege advanced;’ ‘system services web modify -http-enabled true;’
Примеры
# creates and initializes the snapmirror
- name: Create ONTAP/ONTAP SnapMirror
netapp.ontap.na_ontap_snapmirror:
state: present
source_volume: test_src
destination_volume: test_dest
source_vserver: ansible_src
destination_vserver: ansible_dest
schedule: hourly
policy: MirrorAllSnapshots
max_transfer_rate: 1000
initialize: False
hostname: "{{ destination_cluster_hostname }}"
username: "{{ destination_cluster_username }}"
password: "{{ destination_cluster_password }}"
# creates and initializes the snapmirror between vservers
- name: Create ONTAP/ONTAP vserver SnapMirror
netapp.ontap.na_ontap_snapmirror:
state: present
source_vserver: ansible_src
destination_vserver: ansible_dest
identity_preserve: true
hostname: "{{ destination_cluster_hostname }}"
username: "{{ destination_cluster_username }}"
password: "{{ destination_cluster_password }}"
# existing snapmirror relation with status 'snapmirrored' will be initialized
- name: Inititalize ONTAP/ONTAP SnapMirror
netapp.ontap.na_ontap_snapmirror:
state: present
source_path: 'ansible:test'
destination_path: 'ansible:dest'
relationship_state: active
hostname: "{{ destination_cluster_hostname }}"
username: "{{ destination_cluster_username }}"
password: "{{ destination_cluster_password }}"
- name: Delete SnapMirror
netapp.ontap.na_ontap_snapmirror:
state: absent
destination_path: <path>
relationship_info_only: True
source_hostname: "{{ source_hostname }}"
hostname: "{{ destination_cluster_hostname }}"
username: "{{ destination_cluster_username }}"
password: "{{ destination_cluster_password }}"
- name: Break SnapMirror
netapp.ontap.na_ontap_snapmirror:
state: present
relationship_state: broken
destination_path: <path>
source_hostname: "{{ source_hostname }}"
hostname: "{{ destination_cluster_hostname }}"
username: "{{ destination_cluster_username }}"
password: "{{ destination_cluster_password }}"
- name: Restore SnapMirror volume using location (Idempotency)
netapp.ontap.na_ontap_snapmirror:
state: present
source_path: <path>
destination_path: <path>
relationship_type: restore
source_snapshot: "{{ snapshot }}"
hostname: "{{ destination_cluster_hostname }}"
username: "{{ destination_cluster_username }}"
password: "{{ destination_cluster_password }}"
- name: Set schedule to NULL
netapp.ontap.na_ontap_snapmirror:
state: present
destination_path: <path>
schedule: ""
hostname: "{{ destination_cluster_hostname }}"
username: "{{ destination_cluster_username }}"
password: "{{ destination_cluster_password }}"
- name: Create SnapMirror from ElementSW to ONTAP
netapp.ontap.na_ontap_snapmirror:
state: present
connection_type: elementsw_ontap
source_path: '10.10.10.10:/lun/300'
destination_path: 'ansible_test:ansible_dest_vol'
schedule: hourly
policy: MirrorLatest
hostname: "{{ netapp_hostname }}"
username: "{{ netapp_username }}"
password: "{{ netapp_password }}"
source_hostname: " {{ Element_cluster_mvip }}"
source_username: "{{ Element_cluster_username }}"
source_password: "{{ Element_cluster_password }}"
- name: Create SnapMirror from ONTAP to ElementSW
netapp.ontap.na_ontap_snapmirror:
state: present
connection_type: ontap_elementsw
destination_path: '10.10.10.10:/lun/300'
source_path: 'ansible_test:ansible_dest_vol'
policy: MirrorLatest
hostname: "{{ Element_cluster_mvip }}"
username: "{{ Element_cluster_username }}"
password: "{{ Element_cluster_password }}"
source_hostname: " {{ netapp_hostname }}"
source_username: "{{ netapp_username }}"
source_password: "{{ netapp_password }}"
- name: Create SnapMirror relationship (create destination volume)
tags: create
netapp.ontap.na_ontap_snapmirror:
state: present
source_endpoint:
cluster: "{{ _source_cluster }}"
path: "{{ source_vserver + ':' + source_volume }}"
destination_endpoint:
cluster: "{{ _destination_cluster }}"
path: "{{ destination_vserver_VOLDP + ':' + destination_volume }}"
create_destination:
enabled: true
hostname: "{{ destination_hostname }}"
username: "{{ username }}"
password: "{{ password }}"
https: true
validate_certs: false
- name: Create SnapMirror relationship - SVM DR (creating and peering destination svm)
tags: create_svmdr
netapp.ontap.na_ontap_snapmirror:
state: present
source_endpoint:
cluster: "{{ _source_cluster }}"
path: "{{ source_vserver + ':' }}"
destination_endpoint:
cluster: "{{ _destination_cluster }}"
path: "{{ destination_vserver_SVMDR + ':' }}"
create_destination:
enabled: true
hostname: "{{ destination_hostname }}"
username: "{{ username }}"
password: "{{ password }}"
https: true
validate_certs: false
Ссылки на коллекции
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/netapp/ontap/na_ontap_snapmirror_module.html