vmware_guest_file_operation – Операции с файлами в гостевой операционной системе VMware без сети
Новое в версии 2.5.
Обзор
- Модуль для копирования файла на ВМ, извлечения файла из ВМ и создания или удаления каталога в гостевой ОС.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.6
- PyVmomi
- requests
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| cluster - | Кластер, на котором размещена виртуальная машина. Если задано, это поможет ускорить поиск виртуальной машины. | |
| copy - | Копирование файла на ВМ без необходимости сети. Допустимые атрибуты: src: абсолютный или относительный путь к исходному файлу dest: путь к месту назначения файла, путь должен существовать overwrite: False или True (необязательно, по умолчанию False) | |
| datacenter - | Центр обработки данных, на котором размещена виртуальная машина. Если задано, это поможет ускорить поиск виртуальной машины. | |
| directory - | Создание или удаление каталога. Можно использовать для создания временного каталога внутри гостевой системы с помощью операции mktemp. mktemp устанавливает переменную dir в результате с именем нового каталога.Опция операции mktemp добавлена в версии 2.8 Допустимые атрибуты: operation (str): Допустимые значения: create, delete, mktemp path (str): путь к каталогу (необходим для создания или удаления) prefix (str): префикс временного каталога (необходим для mktemp) suffix (str): суффикс временного каталога (необходим для mktemp) recurse (boolean): Необязательно, значение по умолчанию (false) | |
| fetch - добавлен в 2.5 | Получение файла из виртуальной машины без необходимости сети. Допустимые атрибуты: src: файл на удалённой системе для получения. Это должен быть файл, а не каталог dest: путь к месту назначения файла на локальном компьютере, путь должен существовать | |
| folder - | Папка назначения, абсолютный путь для поиска существующей гостевой системы или создания новой гостевой системы. Папка должна включать центр обработки данных. Центр обработки данных ESX — ha-datacenter Используется только если vm_id_type равно inventory_path. Примеры: 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 folder: vm/folder2 folder: folder2 | |
| hostname строка | Имя хоста или IP-адрес сервера vSphere vCenter или ESXi. Если значение не указано в задании, используется значение переменной среды VMWARE_HOST. Поддержка переменных окружения добавлена в Ansible 2.6. | |
| password строка | Пароль сервера vSphere vCenter или ESXi. Если значение не указано в задании, используется значение переменной среды VMWARE_PASSWORD. Поддержка переменных окружения добавлена в Ansible 2.6. псевдонимы: pass, pwd | |
| port целое число добавлен в 2.5 | По умолчанию: 443 | Номер порта сервера vSphere vCenter или ESXi. Если значение не указано в задании, используется значение переменной среды VMWARE_PORT. Поддержка переменных окружения добавлена в Ansible 2.6. |
| username строка | Имя пользователя сервера vSphere vCenter или ESXi. Если значение не указано в задании, используется значение переменной среды VMWARE_USER. Поддержка переменных окружения добавлена в Ansible 2.6. псевдонимы: admin, user | |
| validate_certs boolean |
| Разрешает подключение, когда сертификаты SSL недействительны. Устанавливается в false, когда сертификаты не доверяются.Если значение не указано в задании, используется значение переменной среды VMWARE_VALIDATE_CERTS. Поддержка переменных окружения добавлена в Ansible 2.6. Если установлено в yes, убедитесь, что Python >= 2.7.9 установлен на данном компьютере. |
| vm_id - / обязательно | Имя виртуальной машины для работы. | |
| vm_id_type - |
| Метод идентификации VMware, с помощью которого будет идентифицирована виртуальная машина. |
| vm_password - / обязательно | Пароль для входа в виртуальную машину. | |
| vm_username - / обязательно | Пользователь для входа в виртуальную машину. |
Примечания
Примечание
- Тестировано на vSphere 6
- Используется только первое совпадение с vm_id, даже если совпадений несколько
Примеры
- name: Create directory inside a vm
vmware_guest_file_operation:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
datacenter: "{{ datacenter_name }}"
validate_certs: no
vm_id: "{{ guest_name }}"
vm_username: "{{ guest_username }}"
vm_password: "{{ guest_userpassword }}"
directory:
path: "/test"
operation: create
recurse: no
delegate_to: localhost
- name: copy file to vm
vmware_guest_file_operation:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
datacenter: "{{ datacenter_name }}"
vm_id: "{{ guest_name }}"
vm_username: "{{ guest_username }}"
vm_password: "{{ guest_userpassword }}"
copy:
src: "files/test.zip"
dest: "/root/test.zip"
overwrite: False
delegate_to: localhost
- name: fetch file from vm
vmware_guest_file_operation:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
datacenter: "{{ datacenter_name }}"
vm_id: "{{ guest_name }}"
vm_username: "{{ guest_username }}"
vm_password: "{{ guest_userpassword }}"
fetch:
src: "/root/test.zip"
dest: "files/test.zip"
delegate_to: localhost
Статус
- Данный модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Stéphane Travassac (@stravassac)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/vmware_guest_file_operation_module.html