community.vmware.vmware_guest_file_operation – Операции с файлами в гостевой операционной системе VMware без сети
Примечание
Этот плагин входит в коллекцию community.vmware (версия 1.6.0).
Для его установки используйте: ansible-galaxy collection install community.vmware.
Для использования в книге задач укажите: community.vmware.vmware_guest_file_operation.
Обзор
- Модуль для копирования файла в ВМ, извлечения файла из ВМ и создания или удаления директории в гостевой ОС.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- PyVmomi
- requests
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| cluster строка | Кластер, на котором размещена виртуальная машина. Если задано, это ускорит поиск виртуальной машины. | ||
| copy словарь | Копирование файла в ВМ без использования сети. | ||
| dest строка / обязательно | Место назначения файла, путь должен существовать. | ||
| overwrite булево |
| Перезаписать или нет. | |
| src строка / обязательно | Абсолютный или относительный путь к исходному файлу. | ||
| datacenter строка | Центр обработки данных, в котором размещена виртуальная машина. Если задано, это ускорит поиск виртуальной машины. | ||
| directory словарь | Создание или удаление директории. Может использоваться для создания временной директории внутри гостевой системы с помощью операции mktemp. mktemp устанавливает переменную dir в результате с именем новой директории.Опция mktemp добавлена в версии 2.8. | ||
| operation строка / обязательно |
| Операция для выполнения. | |
| path строка | Путь к директории. Требуется для create или remove. | ||
| prefix строка | Префикс временной директории. Требуется для mktemp. | ||
| recurse булево |
| Не требуется. | |
| suffix строка | Суффикс временной директории. Требуется для mktemp. | ||
| fetch словарь | Получение файла из виртуальной машины без использования сети. | ||
| dest строка / обязательно | Место назначения файла на локальном компьютере, путь должен существовать. | ||
| src строка / обязательно | Файл на удаленном сервере для загрузки. Это должен быть файл, а не директория. | ||
| folder строка | Папка назначения, абсолютный путь для поиска существующей гостевой или создания новой гостевой. Папка должна включать центр обработки данных. Центр обработки данных ESXi - 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-адрес сервера vCenter vSphere или ESXi. Если значение не указано в задаче, используется значение переменной окружения VMWARE_HOST. Поддержка переменных окружения добавлена в Ansible 2.6. | ||
| password строка | Пароль сервера vCenter vSphere или ESXi. Если значение не указано в задаче, используется значение переменной окружения VMWARE_PASSWORD. Поддержка переменных окружения добавлена в Ansible 2.6. Псевдонимы: pass, pwd | ||
| port целое число | По умолчанию: 443 | Номер порта сервера vCenter vSphere или ESXi. Если значение не указано в задаче, используется значение переменной окружения VMWARE_PORT. Поддержка переменных окружения добавлена в Ansible 2.6. | |
| proxy_host строка | Адрес прокси-сервера, который будет получать все запросы HTTPS и перенаправлять их. Формат - имя хоста или IP-адрес. Если значение не указано в задаче, используется значение переменной окружения VMWARE_PROXY_HOST. Эта функция зависит от версии pyvmomi, большей чем v6.7.1.2018.12 | ||
| proxy_port целое число | Порт HTTP-прокси-сервера, который будет получать все запросы HTTPS и перенаправлять их. Если значение не указано в задаче, используется значение переменной окружения VMWARE_PROXY_PORT. | ||
| username строка | Имя пользователя сервера vCenter vSphere или ESXi. Если значение не указано в задаче, используется значение переменной окружения VMWARE_USER. Поддержка переменных окружения добавлена в Ansible 2.6. Псевдонимы: admin, user | ||
| validate_certs булево |
| Разрешает подключение, когда сертификаты SSL недействительны. Установите в false, когда сертификаты не доверяются.Если значение не указано в задаче, используется значение переменной окружения VMWARE_VALIDATE_CERTS. Поддержка переменных окружения добавлена в Ansible 2.6. Если установлено значение true, убедитесь, что на данном компьютере установлен Python >= 2.7.9. | |
| vm_id строка / обязательно | Имя виртуальной машины для работы. | ||
| vm_id_type строка |
| Метод идентификации VMware, с помощью которого будет идентифицироваться виртуальная машина. | |
| vm_password строка / обязательно | Пароль, используемый для входа в виртуальную машину. | ||
| vm_username строка / обязательно | Пользователь для входа в виртуальную машину. | ||
Примечания
Примечание
- Проверено на vSphere 6
- Используется только первое совпадение с vm_id, даже если есть несколько совпадений
Примеры
- name: Create directory inside a vm
community.vmware.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 }}"
directory:
path: "/test"
operation: create
recurse: no
delegate_to: localhost
- name: copy file to vm
community.vmware.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
community.vmware.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
Авторы
- 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.10/collections/community/vmware/vmware_guest_file_operation_module.html