netapp.ontap.na_ontap_zapit – NetApp ONTAP Run any ZAPI on ONTAP
Примечание
Этот плагин входит в коллекцию netapp.ontap (версия 20.12.0).
Для его установки используйте: ansible-galaxy collection install netapp.ontap.
Чтобы использовать его в книге задач, укажите: netapp.ontap.na_ontap_zapit.
Новое в версии 20.4.0: of netapp.ontap
Обзор
- Вызов ZAPI на ONTAP.
- Кластерные ZAPI выполняются с использованием учетной записи администратора кластера.
- ZAPI виртуального сервера могут выполняться с использованием учетной записи vsadmin или с использованием туннелирования виртуального сервера (администратор кластера с опцией vserver).
- В случае успеха возвращается словарь JSON, как
response. - В случае ошибки ZAPI,
status,errno,reasonустанавливаются для помощи в диагностике проблемы, - и вызов сообщается как ошибка ('failed').
- Другие ошибки (например, проблемы с подключением) сообщаются как ошибка Ansible.
Требования
Ниже приведены требования, необходимые на хосте, на котором выполняется этот модуль.
- Физическая или виртуальная кластеризованная система Data ONTAP. Модули поддерживают Data ONTAP 9.1 и выше.
- Поддержка REST требует ONTAP 9.6 или более поздней версии.
- Ansible 2.6
- Ansible 2.9 или более поздней версии рекомендуется, так как она позволяет использовать новую систему доставки коллекций.
- Python2 netapp-lib (2017.10.30) или более поздняя версия. Установка с помощью 'pip install netapp-lib'
- Python3 netapp-lib (2018.11.13) или более поздняя версия. Установка с помощью 'pip install netapp-lib'
- netapp-lib 2020.3.12 настоятельно рекомендуется, так как он обеспечивает лучшую отчетность об ошибках при подключении.
- Для включения http в кластере необходимо выполнить следующие команды: «set -privilege advanced»; «system services web modify -http-enabled true»;
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| cert_filepath строка добавлен в 20.6.0 от netapp.ontap | путь к файлу сертификата SSL клиента (.pem). не поддерживается с python 2.6. | |
| feature_flags словарь добавлен в 20.5.0 от netapp.ontap | Включить или отключить новую функцию. Это может использоваться для включения экспериментальной функции или отключения новой функции, которая нарушает обратную совместимость. Поддерживаемые ключи и значения могут быть изменены без предварительного уведомления. Неизвестные ключи игнорируются. | |
| hostname строка / обязательно | Имя хоста или IP-адрес экземпляра ONTAP. | |
| http_port целое число | Переопределить стандартный порт (80 или 443) с помощью этого порта | |
| https логическое значение |
| Включить и отключить https. Игнорируется при использовании REST, так как поддерживается только https. Игнорируется при использовании аутентификации сертификатом SSL, так как она требует SSL. |
| key_filepath строка добавлен в 20.6.0 от netapp.ontap | путь к файлу ключа SSL клиента. | |
| ontapi целое число | Используемая версия api ontap | |
| password строка | Пароль для указанного пользователя. псевдонимы: pass | |
| use_rest строка | По умолчанию: "авто" | REST API, если поддерживается целевой системой для всех ресурсов и атрибутов, необходимых модулю. В противном случае вернется к ZAPI. всегда -- всегда использовать REST API никогда -- всегда использовать ZAPI авто -- попробовать использовать REST Api |
| username строка | Это может быть учетная запись уровня кластера или SVM, в зависимости от того, требуется ли API уровня кластера или SVM. Для получения дополнительной информации см. документацию по https://mysupport.netapp.com/NOW/download/software/nmsdk/9.4/. Поддерживаются два метода аутентификации 1. Базовая аутентификация, с использованием имени пользователя и пароля, 2. Аутентификация по сертификату SSL, с использованием файла ssl-сертификата клиента и, по желанию, файла закрытого ключа. Чтобы использовать сертификат, он должен быть установлен в кластере ONTAP, и аутентификация по сертификату должна быть включена. псевдонимы: user | |
| validate_certs логическое значение |
| Если установлено значение no, сертификаты SSL не будут проверяться.Это должно быть установлено только в случае использования на сайтах, контролируемых лично, с использованием самозаверенных сертификатов. |
| vserver строка | если указано, принудительно используется туннелирование виртуального сервера. имя пользователя идентифицирует учетную запись администратора кластера. | |
| zapi словарь / обязательно | Словарь для zapi и аргументов. Тег XML <tag>value</tag> представляет собой словарь с тегом в качестве ключа. Значение может быть другим словарем, списком словарей, строкой или пустым значением. Например, <tag/> представляется как tag:
Одновременно можно вызывать только один zapi. Ansible предупреждает, если обнаружены дублирующиеся ключи, и использует только последнюю запись. |
Примечания
Примечание
- Модули с префиксом na_ontap разработаны для поддержки платформы хранения ONTAP.
Примеры
-
name: Ontap ZAPI
hosts: localhost
gather_facts: False
collections:
- netapp.ontap
vars:
login: &login
hostname: "{{ admin_ip }}"
username: "{{ admin_username }}"
password: "{{ admin_password }}"
https: true
validate_certs: false
svm_login: &svm_login
hostname: "{{ svm_admin_ip }}"
username: "{{ svm_admin_username }}"
password: "{{ svm_admin_password }}"
https: true
validate_certs: false
tasks:
- name: run ontap ZAPI command as cluster admin
na_ontap_zapit:
<<: *login
zapi:
system-get-version:
register: output
- debug: var=output
- name: run ontap ZAPI command as cluster admin
na_ontap_zapit:
<<: *login
zapi:
vserver-get-iter:
register: output
- debug: var=output
- name: run ontap ZAPI command as cluster admin
na_ontap_zapit:
<<: *login
zapi:
vserver-get-iter:
desired-attributes:
vserver-info:
- aggr-list:
- aggr-name
- allowed-protocols:
- protocols
- vserver-aggr-info-list:
- vserser-aggr-info
- uuid
query:
vserver-info:
vserver-name: trident_svm
register: output
- debug: var=output
- name: run ontap ZAPI command as vsadmin
na_ontap_zapit:
<<: *svm_login
zapi:
vserver-get-iter:
desired-attributes:
vserver-info:
- uuid
register: output
- debug: var=output
- name: run ontap ZAPI command as vserver tunneling
na_ontap_zapit:
<<: *login
vserver: trident_svm
zapi:
vserver-get-iter:
desired-attributes:
vserver-info:
- uuid
register: output
- debug: var=output
- name: run ontap active-directory ZAPI command
na_ontap_zapit:
<<: *login
vserver: trident_svm
zapi:
active-directory-account-create:
account-name: testaccount
admin-username: testuser
admin-password: testpass
domain: testdomain
organizational-unit: testou
register: output
ignore_errors: True
- debug: var=output
Возвращаемые значения
Общие значения возвращаемых данных описаны в здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| errno строка | При ошибке | Если ZAPI был выполнен, но завершился неудачей, код ошибки, установленный ZAPI. Отсутствует, если операция выполнена успешно или вызов ZAPI не может быть выполнен. |
| reason строка | При ошибке | Если ZAPI был выполнен, но завершился неудачей, причина ошибки, установленная ZAPI. Отсутствует, если операция выполнена успешно или вызов ZAPI не может быть выполнен. |
| response словарь | При успехе | Если успешно, словарь JSON, представляющий данные, возвращенные ZAPI. Если ZAPI был выполнен, но завершился неудачей, пустой словарь. Отсутствует, если вызов ZAPI не может быть выполнен. |
| status строка | При ошибке | Если ZAPI был выполнен, но завершился неудачей, статус, установленный ZAPI. Отсутствует, если операция выполнена успешно или вызов ZAPI не может быть выполнен. |
Авторы
- Команда Ansible NetApp (@carchi8py) <ng-ansibleteam@netapp.com>
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/netapp/ontap/na_ontap_zapit_module.html