community.vmware.vmware_guest_file_operation – Операции с файлами в гостевой операционной системе VMware без сети
Примечание
Этот плагин входит в коллекцию community.vmware (версия 1.7.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 строка | Папка назначения, абсолютный путь для поиска существующей гостевой или создания новой гостевой. Папка должна включать дата-центр. Дата-центр 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-адрес сервера vCenter или ESXi vSphere. Если значение не указано в задаче, используется значение переменной среды VMWARE_HOST. Поддержка переменных среды добавлена в Ansible 2.6. | ||
| password строка | Пароль сервера vCenter или ESXi vSphere. Если значение не указано в задаче, используется значение переменной среды VMWARE_PASSWORD. Поддержка переменных среды добавлена в Ansible 2.6. Псевдонимы: pass, pwd | ||
| port целое число | По умолчанию: 443 | Номер порта сервера vCenter или ESXi vSphere. Если значение не указано в задаче, используется значение переменной среды 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 или ESXi vSphere. Если значение не указано в задаче, используется значение переменной среды 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–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/vmware/vmware_guest_file_operation_module.html