community.vmware.vmware_host_datastore – Управление хранилищем данных на хосте ESXi
Примечание
Этот плагин входит в коллекцию community.vmware (версия 1.6.0).
Для его установки используйте: ansible-galaxy collection install community.vmware.
Для использования в книге задач укажите: community.vmware.vmware_host_datastore.
Обзор
- Этот модуль можно использовать для подключения/отключения хранилища данных на хосте ESXi.
- Этот модуль поддерживает только хранилища данных NFS (NFS v3 или NFS v4.1) и VMFS.
- Для хранилища данных VMFS необходимо, чтобы соответствующее устройство уже было подключено к хосту ESXi.
- Все параметры и имена объектов VMware чувствительны к регистру.
Требования
Ниже приведены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- PyVmomi
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| datastore_name строка / обязательный | Имя хранилища данных для добавления/удаления. | |
| datastore_type строка |
| Тип хранилища данных для настройки (nfs/nfs41/vmfs). |
| esxi_hostname строка | Имя хоста ESXi для управления хранилищем данных. Необходимо, когда используется vCenter | |
| hostname строка | Имя хоста или IP-адрес сервера vSphere vCenter или ESXi. Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_HOST. Поддержка переменных среды добавлена в Ansible 2.6. | |
| nfs_path строка | Путь к ресурсу на хосте NFS. Необходимо, если тип хранилища данных задан как nfs/nfs41 и состояние задано как present, в противном случае не используется. | |
| nfs_ro логическое значение |
| Подключение в режиме только для чтения или чтения и записи. Не используется, если тип хранилища данных не задан как nfs/nfs41 и состояние не задано как present. |
| nfs_server строка | Хост NFS, предоставляющий хранилище данных nfs. Необходимо, если тип хранилища данных задан как nfs/nfs41 и состояние задано как present, в противном случае не используется.Можно определить два или более серверов, если тип хранилища данных задан как nfs41 | |
| password строка | Пароль сервера vSphere vCenter или ESXi. Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_PASSWORD. Поддержка переменных среды добавлена в Ansible 2.6. псевдонимы: pass, pwd | |
| port целое число | По умолчанию: 443 | Порт сервера vSphere vCenter или 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. | |
| state строка |
| present: Подключить хранилище данных к хосту, если хранилище отсутствует, в противном случае ничего не делать. absent: Отключить хранилище данных, если хранилище существует, в противном случае ничего не делать. |
| username строка | Имя пользователя сервера vSphere vCenter или ESXi. Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_USER. Поддержка переменных среды добавлена в Ansible 2.6. псевдонимы: admin, user | |
| validate_certs логическое значение |
| Разрешает подключение, когда сертификаты SSL недействительны. Установите значение false, когда сертификаты ненадёжные.Если значение не указано в задаче, вместо него будет использовано значение переменной среды VMWARE_VALIDATE_CERTS. Поддержка переменных среды добавлена в Ansible 2.6. Если установлено значение true, убедитесь, что на данном компьютере установлен Python >= 2.7.9. |
| vmfs_device_name строка | Имя устройства, которое будет использоваться в качестве хранилища данных VMFS. Требуется для типа хранилища данных VMFS и состояния present, в противном случае не используется. | |
| vmfs_version целое число | Версия VMFS, используемая для создания хранилища данных. Не используется, если тип хранилища данных не задан как vmfs и состояние не задано как present. |
Примечания
Примечание
- Проверено на vSphere 6.0, 6.5 и ESXi 6.7
- NFS v4.1 протестирован на vSphere 6.5
- Аутентификация Kerberos с NFS v4.1 не реализована
Примеры
- name: Mount VMFS datastores to ESXi
community.vmware.vmware_host_datastore:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
datastore_name: '{{ item.name }}'
datastore_type: '{{ item.type }}'
vmfs_device_name: 'naa.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
vmfs_version: 6
esxi_hostname: '{{ inventory_hostname }}'
state: present
delegate_to: localhost
- name: Mount NFS datastores to ESXi
community.vmware.vmware_host_datastore:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
datastore_name: '{{ item.name }}'
datastore_type: '{{ item.type }}'
nfs_server: '{{ item.server }}'
nfs_path: '{{ item.path }}'
nfs_ro: no
esxi_hostname: '{{ inventory_hostname }}'
state: present
delegate_to: localhost
loop:
- { 'name': 'NasDS_vol01', 'server': 'nas01', 'path': '/mnt/vol01', 'type': 'nfs'}
- { 'name': 'NasDS_vol02', 'server': 'nas01', 'path': '/mnt/vol02', 'type': 'nfs'}
- name: Mount NFS v4.1 datastores to ESXi
community.vmware.vmware_host_datastore:
hostname: '{{ vcenter_hostname }}'
username: '{{ vcenter_username }}'
password: '{{ vcenter_password }}'
datastore_name: '{{ item.name }}'
datastore_type: '{{ item.type }}'
nfs_server: '{{ item.server }}'
nfs_path: '{{ item.path }}'
nfs_ro: no
esxi_hostname: '{{ inventory_hostname }}'
state: present
delegate_to: localhost
loop:
- { 'name': 'NasDS_vol03', 'server': 'nas01,nas02', 'path': '/mnt/vol01', 'type': 'nfs41'}
- { 'name': 'NasDS_vol04', 'server': 'nas01,nas02', 'path': '/mnt/vol02', 'type': 'nfs41'}
- name: Remove/Umount Datastores from a ESXi
community.vmware.vmware_host_datastore:
hostname: '{{ esxi_hostname }}'
username: '{{ esxi_username }}'
password: '{{ esxi_password }}'
datastore_name: NasDS_vol01
state: absent
delegate_to: localhost
Авторы
- Людовик Ривальэн (@lrivallain) <ludovic.rivallain@gmail.com>
- Кристиан Котте (@ckotte) <christian.kotte@gmx.de>
© 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_host_datastore_module.html