Модуль netapp.ontap.na_ontap_ssh_command — NetApp ONTAP: выполнение любых команд CLI через обычное SSH-подключение с помощью paramiko.
Примечание
Этот модуль входит в коллекцию netapp.ontap (версия 23.5.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install netapp.ontap. Для использования этого модуля требуются дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать модуль в playbook, укажите: netapp.ontap.na_ontap_ssh_command.
Новый в netapp.ontap 20.8.0
Краткое описание
- Выполнение команд CLI в ONTAP через SSH с помощью paramiko.
- Результат возвращается в
stdoutиstderr, а также в видеstdout_lines,stdout_lines_filtered,stderr_lines. - Обратите внимание: модуль может завершиться успешно, даже если команда завершилась с ошибкой. Необходимо проанализировать stdout и проверить результаты.
- Если ключ хоста SSH неизвестен и принят, обновляется
warnings. - Параметры, связанные с ZAPI или REST API, игнорируются.
Требования
На хосте, выполняющем этот модуль, должны быть установлены перечисленные ниже компоненты.
- Ansible 2.9 или более поздней версии — рекомендуется версия 2.12 или более поздняя.
- Python 3 — рекомендуется версия 3.9 или более поздняя.
- netapp-lib требуется только при использовании ZAPI (установка командой ‘pip install netapp-lib’). Обратите внимание: netapp-lib устарел и больше не поддерживается. Используйте его на свой страх и риск.
- Физическая или виртуальная кластерная система Data ONTAP; модули поддерживают Data ONTAP 9.1 и более поздние версии, для поддержки REST требуется ONTAP 9.6 или более поздняя версия.
Параметры
Параметр | Комментарии |
|---|---|
accept_unknown_host_keys логическое значение | Если значение равно false, соединение отклоняется, если ключ хоста отсутствует в файле known_hosts. Если значение равно true и ключ хоста неизвестен, он принимается, но выводится предупреждение. Обратите внимание: ключ не добавляется в файл. Его можно добавить вручную с помощью SSH. Варианты:
|
cert_filepath строка добавлено в netapp.ontap 20.6.0 | Путь к файлу сертификата клиента SSL (.pem). Не поддерживается в Python 2.6. |
command строка / обязательный | Строка с командой и аргументами. |
exclude_lines строка | Возвращать только строки, содержащие шаблон строки в По умолчанию: |
feature_flags словарь добавлено в netapp.ontap 20.5.0 | Включение или отключение новой функции. Параметр можно использовать для включения экспериментальной функции или отключения новой функции, нарушающей обратную совместимость. Поддерживаемые ключи и значения могут изменяться без уведомления. Неизвестные ключи игнорируются. |
force_ontap_version строка добавлено в netapp.ontap 21.23.0 | Переопределение версии ONTAP кластера при использовании REST. Поведение не определено, если версия не соответствует целевому кластеру. Параметр предназначен для обхода проблемы, возникающей, когда невозможно прочитать версию кластера из-за недостаточных разрешений. См. https://github.com/ansible-collections/netapp.ontap/wiki/Known-issues. Значение должно иметь вид 9.10 или 9.10.1, где каждый элемент является целым числом. Если для Игнорируется при использовании ZAPI. |
hostname строка / обязательный | Имя хоста или IP-адрес экземпляра ONTAP. |
http_port целое число | Переопределение порта по умолчанию (80 или 443) этим портом. |
https логическое значение | Включение и отключение HTTPS. Игнорируется при использовании REST, так как поддерживается только HTTPS. Игнорируется при использовании аутентификации с сертификатом SSL, поскольку для нее требуется SSL. Варианты:
|
include_lines строка | Возвращать только строки, содержащие шаблон строки в По умолчанию: |
key_filepath строка добавлено в netapp.ontap 20.6.0 | Путь к файлу ключа клиента SSL. |
ontapi целое число | Версия API ONTAP, которую следует использовать. |
password псевдонимы: pass строка | Пароль указанного пользователя. |
privilege строка | Уровень привилегий, с которым выполняется команда, например admin или advanced. Если задано значение, перед командой добавляется |
service_processor псевдонимы: sp логическое значение | Указывает, является ли целевая система ONTAP или сервисным процессором (SP). Имеет смысл только при заданном параметре privilege. Варианты:
|
use_lambda логическое значение добавлено в netapp.ontap 23.2.0 | Указывает, следует ли использовать прокси-функцию AWS Lambda для подключения к системе ONTAP. Поддерживается только при использовании REST. Варианты:
|
use_rest строка | Определяет, использовать REST или ZAPI. always — всегда использовать REST API, если модуль поддерживает REST. Если модуль не поддерживает REST, выводится предупреждение. Если параметр модуля не поддерживается в REST, возникает ошибка. never — всегда использовать ZAPI, если модуль поддерживает ZAPI. Если параметр REST не поддерживается в ZAPI, может возникнуть ошибка. auto — пытаться использовать REST API, если модуль поддерживает REST и параметры модуля поддерживаются. В противном случае использовать ZAPI. По умолчанию: |
username псевдонимы: user строка | Это может быть учетная запись уровня кластера или уровня SVM — в зависимости от того, требуется ли API уровня кластера или уровня SVM. Дополнительную информацию см. в документации: https://docs.netapp.com/us-en/ontap/authentication/create-svm-user-accounts-task.html. Поддерживаются два метода аутентификации:
Для использования сертификата его необходимо установить в кластере ONTAP, а аутентификация по сертификату должна быть включена. |
validate_certs логическое значение | Если задано значение Задавайте это значение только для Варианты:
|
Примечания
Примечание
- Модули с префиксом na_ontap предназначены для поддержки платформы хранения ONTAP.
- HTTPS включен по умолчанию и рекомендуется к использованию. Чтобы включить HTTP в кластере, выполните следующие команды: ‘set -privilege advanced;’ ‘system services web modify -http-enabled true;’
Примеры
- name: run ontap cli command using SSH
netapp.ontap.na_ontap_ssh_command:
hostname: "{{ netapp_hostname }}"
username: "{{ netapp_username }}"
password: "{{ netapp_password }}"
command: version
# Same as above, with parameters
- name: run ontap cli command
netapp.ontap.na_ontap_ssh_command:
hostname: "{{ netapp_hostname }}"
username: "{{ netapp_username }}"
password: "{{ netapp_password }}"
command: node show -fields node,health,uptime,model
privilege: admin
# Same as above, but with lines filtering
- name: run ontap cli command
netapp.ontap.na_ontap_ssh_command:
hostname: "{{ netapp_hostname }}"
username: "{{ netapp_username }}"
password: "{{ netapp_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
netapp.ontap.na_ontap_ssh_command:
# <<: *sp_login
command: sp switch-version
privilege: diag
sp: true
register: result
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
stdout_lines_filtered список / элементы=строка | Помимо stdout и stdout_lines возвращается список непустых строк без последней строки и сведений о неудачном входе в систему. Список можно дополнительно отфильтровать с помощью фильтров include_lines и exclude_lines. Возвращается: всегда |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/netapp/ontap/na_ontap_ssh_command_module.html