Spec-Zone.ru › Ansible 2.7

vmware_vm_shell – Запуск команд в гостевой операционной системе VMware

Новая версия с 2.1.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Обзор

  • Модуль позволяет пользователю запускать общие команд для администрирования системы в гостевой операционной системе.

Требования

Ниже приведены требования к хосту, на котором выполняется этот модуль.

  • python >= 2.6
  • PyVmomi

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
cluster
-
Кластер, содержащий виртуальную машину.
Если задано, это ускорит поиск виртуальной машины.
datacenter
-
Центр обработки данных, содержащий виртуальную машину.
Если задано, это ускорит поиск виртуальной машины.
folder
-
добавлено в 2.4
Целевой папке, абсолютный или относительный путь к поиску существующей гостевой или созданию новой гостевой.
Папка должна включать в себя центр обработки данных. Центр обработки данных ESX называется ha-datacenter.
Примеры:
folder: /ha-datacenter/vm
folder: ha-datacenter/vm
folder: /datacenter1/vm
folder: datacenter1/vm
folder: /datacenter1/vm/folder1
folder: datacenter1/vm/folder1
folder: /folder1/datacenter1/vm
folder: folder1/datacenter1/vm
folder: /folder1/datacenter1/vm/folder2
hostname
строка
Имя хоста или IP-адрес сервера vCenter или ESXi vSphere.
Если значение не указано в задаче, вместо него используется значение переменной среды VMWARE_HOST.
Поддержка переменных среды добавлена в версии 2.6.
password
строка
Пароль сервера vCenter или ESXi vSphere.
Если значение не указано в задаче, вместо него используется значение переменной среды VMWARE_PASSWORD.
Поддержка переменных среды добавлена в версии 2.6.

Псевдонимы: pass, pwd
port
целое число
добавлено в 2.5
Значение по умолчанию:
443
Номер порта сервера vCenter или ESXi vSphere.
Если значение не указано в задаче, вместо него используется значение переменной среды VMWARE_PORT.
Поддержка переменных среды добавлена в версии 2.6.
timeout
-
добавлено в 2.7
Значение по умолчанию:
3600
Таймаут в секундах.
Если задано положительное целое число, то wait_for_process будет учитывать этот параметр и завершит работу через указанный таймаут.
username
строка
Имя пользователя сервера vCenter или ESXi vSphere.
Если значение не указано в задаче, вместо него используется значение переменной среды VMWARE_USER.
Поддержка переменных среды добавлена в версии 2.6.

Псевдонимы: admin, user
validate_certs
булево
    Варианты:
  • нет
  • да ←
Разрешает подключение, когда сертификаты SSL недействительны. Установите false когда сертификаты не доверяются.
Если значение не указано в задаче, вместо него используется значение переменной среды VMWARE_VALIDATE_CERTS.
Поддержка переменных среды добавлена в версии 2.6.
Если установлено yes, убедитесь, что на данном компьютере установлена Python >= 2.7.9.
vm_id
- / обязательно
Имя виртуальной машины, с которой нужно работать.
vm_id_type
-
    Варианты:
  • uuid
  • dns_name
  • inventory_path
  • имя_вм ←
Метод идентификации VMware, с помощью которого будет идентифицироваться виртуальная машина.
vm_password
- / обязательно
Пароль, используемый для входа в виртуальную машину.
vm_shell
- / обязательно
Абсолютный путь к программе для запуска.
В Linux оболочка запускается через bash.
vm_shell_args
-
Значение по умолчанию:
" "
Аргумент программы.
Символы, которые необходимо экранировать в оболочке, также необходимо экранировать в предоставленной командной строке.
vm_shell_cwd
-
Текущая рабочая директория приложения, из которой будет выполняться запуск.
vm_shell_env
-
Список переменных окружения, разделенных запятыми, в формате гостевой ОС.
vm_username
- / обязательно
Имя пользователя для входа в виртуальную машину.
wait_for_process
булево
добавлено в 2.7
    Варианты:
  • нет ←
  • да
Если установлено True, модуль будет ожидать завершения процесса в заданной виртуальной машине.

Примечания

Примечание

  • Проверено на vSphere 5.5, 6.0 и 6.5.
  • Используется только первое совпадение с vm_id, даже если есть несколько совпадений.

Примеры

- name: Run command inside a virtual machine
  vmware_vm_shell:
    hostname: "{{ vcenter_hostname }}"
    username: "{{ vcenter_username }}"
    password: "{{ vcenter_password }}"
    datacenter: "{{ datacenter }}"
    folder: /"{{datacenter}}"/vm
    vm_id: "{{ vm_name }}"
    vm_username: root
    vm_password: superSecret
    vm_shell: /bin/echo
    vm_shell_args: " $var >> myFile "
    vm_shell_env:
      - "PATH=/bin"
      - "VAR=test"
    vm_shell_cwd: "/tmp"
  delegate_to: localhost
  register: shell_command_output

- name: Run command inside a virtual machine with wait and timeout
  vmware_vm_shell:
    hostname: "{{ vcenter_hostname }}"
    username: "{{ vcenter_username }}"
    password: "{{ vcenter_password }}"
    datacenter: "{{ datacenter }}"
    folder: /"{{datacenter}}"/vm
    vm_id: NameOfVM
    vm_username: root
    vm_password: superSecret
    vm_shell: /bin/sleep
    vm_shell_args: 100
    wait_for_process: True
    timeout: 2000
  delegate_to: localhost
  register: shell_command_with_wait_timeout

- name: Change user password in the guest machine
  vmware_vm_shell:
    hostname: "{{ vcenter_hostname }}"
    username: "{{ vcenter_username }}"
    password: "{{ vcenter_password }}"
    datacenter: "{{ datacenter }}"
    folder: /"{{datacenter}}"/vm
    vm_id: "{{ vm_name }}"
    vm_username: sample
    vm_password: old_password
    vm_shell: "/bin/echo"
    vm_shell_args: "-e 'old_password\nnew_password\nnew_password' | passwd sample > /tmp/$$.txt 2>&1"
  delegate_to: localhost

- name: Change hostname of guest machine
  vmware_vm_shell:
    hostname: "{{ vcenter_hostname }}"
    username: "{{ vcenter_username }}"
    password: "{{ vcenter_password }}"
    validate_certs: no
    datacenter: "{{ datacenter }}"
    folder: /"{{datacenter}}"/vm
    vm_id: "{{ vm_name }}"
    vm_username: testUser
    vm_password: SuperSecretPassword
    vm_shell: "/usr/bin/hostnamectl"
    vm_shell_args: "set-hostname new_hostname > /tmp/$$.txt 2>&1"
  delegate_to: localhost

Возвращаемые значения

Общие возвращаемые значения описаны здесь, следующие являются полями, уникальными для данного модуля:

Ключ Возвращается Описание
results
словарь
при успехе
метаданные о новом процессе после завершения с wait_for_process

Пример:
{'cmd_line': '"/bin/sleep" 1', 'end_time': '2018-04-26T05:03:21+00:00', 'exit_code': 0, 'name': 'sleep', 'owner': 'dev1', 'start_time': '2018-04-26T05:03:19+00:00', 'uuid': '564db1e2-a3ff-3b0e-8b77-49c25570bb66'}


Статус

  • Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
  • Этот модуль поддерживается сообществом Ansible. [community]

Авторы

  • Ritesh Khadgaray (@ritzk)
  • Abhijeet Kasurde (@Akasurde)

Подсказка

Если вы заметили какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/vmware_vm_shell_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API