netapp.ontap.na_ontap_ssh_command – NetApp ONTAP Выполнение любых команд CLI через простой SSH с использованием paramiko.
Примечание
Этот плагин является частью коллекции netapp.ontap (версия 21.1.1).
Для его установки используйте: ansible-galaxy collection install netapp.ontap.
Для использования в книге задач укажите: netapp.ontap.na_ontap_ssh_command.
Добавлена в версии 20.8.0: коллекции netapp.ontap
Обзор
- Выполнение команд CLI на ONTAP через SSH с использованием paramiko.
- Вывод возвращается в
stdoutиstderr, а также какstdout_lines,stdout_lines_filtered,stderr_lines. - Обратите внимание, что модуль может завершиться успешно, даже если команда завершилась неудачно. Вам необходимо проанализировать stdout и проверить результаты.
- Если открытый ключ хоста SSH неизвестен и принят,
warningsобновляется. - Параметры, связанные с ZAPI или REST API, игнорируются.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- Ansible 2.9
- Python3 netapp-lib (2018.11.13) или более поздняя версия. Установите с помощью ‘pip install netapp-lib’
- netapp-lib 2020.3.12 настоятельно рекомендуется, так как он обеспечивает более подробные сообщения об ошибках для проблем подключения.
- Физическая или виртуальная кластерная система Data ONTAP. Модули поддерживают Data ONTAP 9.1 и более поздние версии.
- Поддержка REST требует ONTAP 9.6 или более поздней версии.
- Чтобы включить http в кластере, необходимо выполнить следующие команды ‘set -privilege advanced;’ ‘system services web modify -http-enabled true;’
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| accept_unknown_host_keys boolean |
| При значении false, соединение отклоняется, если открытый ключ хоста отсутствует в файле known_hosts. При значении true, если открытый ключ хоста неизвестен, он принимается, но отображается предупреждение. Обратите внимание, что ключ не добавляется в файл. Вы можете добавить ключ вручную, используя SSH. |
| cert_filepath строка добавлено в 20.6.0 коллекции netapp.ontap | путь к файлу сертификата клиента SSL (.pem). не поддерживается с python 2.6. | |
| command строка / обязательно | строка, содержащая команду и аргументы. | |
| exclude_lines строка | Значение по умолчанию: "" | возвращаются только строки, содержащие шаблон строки в stdout_lines_filtered.
|
| feature_flags словарь добавлено в 20.5.0 коллекции netapp.ontap | Включает или выключает новую функцию. Это можно использовать для включения экспериментальной функции или выключения новой функции, нарушающей обратную совместимость. Поддерживаемые ключи и значения могут быть изменены без предварительного уведомления. Неизвестные ключи игнорируются. | |
| hostname строка / обязательно | Имя хоста или IP-адрес экземпляра ONTAP. | |
| http_port целое число | Переопределяет порт по умолчанию (80 или 443) на указанный порт. | |
| https boolean |
| Включает и выключает https. Игнорируется при использовании REST, так как поддерживается только https. Игнорируется при использовании аутентификации с сертификатом SSL, так как она требует SSL. |
| include_lines строка | Значение по умолчанию: "" | возвращаются только строки, содержащие шаблон строки в stdout_lines_filtered.
|
| key_filepath строка добавлено в 20.6.0 коллекции netapp.ontap | путь к файлу ключа клиента SSL. | |
| ontapi целое число | Версия API ontap для использования. | |
| password строка | Пароль для указанного пользователя. псевдонимы: pass | |
| privilege строка | уровень привилегий для выполнения команды, например admin, advanced. если задано, команда префиксруется с set -privilege <privilege>;. | |
| service_processor boolean |
| указывает, является ли целевая система ONTAP или процессором сервиса (SP). имеет смысл только при заданном privilege. псевдонимы: sp |
| use_rest строка | Значение по умолчанию: "auto" | 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 boolean |
| Если установлено значение no, сертификаты SSL не будут проверены.Это значение должно быть установлено только в False для использования на сайтах, контролируемых пользователем, с использованием самозаверяющих сертификатов. |
Примечания
Примечание
- Модули, начинающиеся с na\_ontap, разработаны для поддержки платформы хранения ONTAP.
Примеры
- name: run ontap cli command using SSH
na_ontap_ssh_command:
hostname: "{{ hostname }}"
username: "{{ admin_username }}"
password: "{{ admin_password }}"
command: version
# Same as above, with parameters
- name: run ontap cli command
na_ontap_ssh_command:
hostname: "{{ hostname }}"
username: "{{ admin_username }}"
password: "{{ admin_password }}"
command: node show -fields node,health,uptime,model
privilege: admin
# Same as above, but with lines filtering
- name: run ontap cli command
na_ontap_ssh_command:
hostname: "{{ hostname }}"
username: "{{ admin_username }}"
password: "{{ admin_password }}"
command: node show -fields node,health,uptime,model
exclude_lines: 'ode ' # Exclude lines with 'Node ' or 'node'
# use with caution!
accept_unknown_host_keys: true
privilege: admin
- name: run ontap SSH command on SP
na_ontap_ssh_command:
# <<: *sp_login
command: sp switch-version
privilege: diag
sp: true
register: result
- debug: var=result
Значения возврата
Общие значения возврата описаны в разделе здесь, следующие являются полями, уникальными для данного модуля:
| Ключ | Возвращённое значение | Описание |
|---|---|---|
| stdout_lines_filtered список / элементы=строка | всегда | В дополнение к stdout и stdout_lines, список непустых строк, исключая последнюю строку и информацию о неудачном входе в систему. Список можно далее уточнить с помощью фильтров include_lines и exclude_lines. |
Авторы
- Команда NetApp Ansible (@carchi8py) <ng-ansibleteam@netapp.com>
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/netapp/ontap/na_ontap_ssh_command_module.html