Spec-Zone.ru › Ansible 2.4

vsphere_guest — Создание/удаление/управление гостевой виртуальной машиной через VMware vSphere.

Новое в версии 1.6.

  • Обзор
  • Требования (к хосту, на котором выполняется модуль)
  • Параметры
  • Примеры
  • Примечания
    • Статус

Обзор

  • Создание/удаление/переконфигурация гостевой виртуальной машины через VMware vSphere. Этот модуль зависит от pysphere >= 1.7

Требования (к хосту, на котором выполняется модуль)

  • python >= 2.6
  • pysphere

Параметры

параметр обязательно значение по умолчанию возможные значения комментарии
cluster
нет None
Имя кластера для создания виртуальной машины. По умолчанию определяется по хосту, на котором необходимо создать гостевую машину.
esxi
нет
Словарь, содержащий центры обработки данных и имя хоста, на котором должна быть создана виртуальная машина. Для автономных хостов ESXi в качестве имени центра обработки данных необходимо использовать ha-datacenter.
force
нет no
  • да
  • нет
Логическое значение. Позволяет выполнять команды, которые могут изменить состояние работающей гостевой машины. Также используется для переконфигурации и удаления.
from_template
(добавлен в 1.9)
нет
  • да
  • нет
Указывает, должна ли виртуальная машина быть развернута из шаблона (исключает параметр 'state'). При развертывании из шаблона нельзя изменять настройки гостевой машины, такие как процессор, оперативная память, сетевые карты или диски.
guest
да
Имя виртуального сервера, которым нужно управлять.
password
да
Пароль пользователя для подключения к vCenter.
power_on_after_clone
нет True
  • да
  • нет
Указывает, должна ли виртуальная машина быть включена после клонирования.
resource_pool
нет None
Имя пула ресурсов для создания виртуальной машины.
snapshot_to_clone
(добавлен в 2.0)
нет none
Строка, которая при указании создаст связанную клонированную копию виртуальной машины. Снимок должен быть уже сделан в vCenter.
state
нет present
  • present
  • powered_off
  • absent
  • powered_on
  • restarted
  • reconfigured
Указывает желаемое состояние виртуальной машины. 'reconfigured' применяет изменения только к 'vm_cdrom', 'memory_mb' и 'num_cpus' в параметре vm_hardware. Изменения 'memory_mb' и 'num_cpus' применяются к включенным виртуальным машинам, когда включена возможность горячей замены для гостевой машины.
template_src
(добавлен в 1.9)
нет None
Имя шаблона исходной виртуальной машины для развертывания.
username
да
Имя пользователя для подключения к vCenter.
validate_certs
(добавлен в 2.1)
нет True
  • да
  • нет
Проверять сертификаты SSL. Обратите внимание, если работаете на python без поддержки SSLContext (обычно, python < 2.7.9), необходимо установить это значение в no, так как pysphere не поддерживает проверку сертификатов в более старых версиях python. До версии 2.1, этот модуль всегда проверял сертификаты на python >= 2.7.9 и никогда на python <= 2.7.8.
vcenter_hostname
да
Имя хоста vCenter-сервера, к которому модуль подключится для создания гостевой машины.
vm_disk
нет
Список пар «ключ-значение» дисков, их размеров и хранилища данных.
vm_extra_config
нет
Пара ключ-значение дополнительных параметров, которые нужно установить или изменить в файле vmx виртуальной машины. Полезно для установки расширенных опций виртуальной машины.
vm_hardware
нет
Список пар «ключ-значение» настроек виртуальной машины. Должен содержать ['memory_mb', 'num_cpus', 'osid', 'scsi'].
vm_hw_version
(добавлен в 1.7)
нет
Идентификатор желаемой версии аппаратного обеспечения (например, "vmx-08" для виртуальных машин, которые необходимо управлять с помощью vSphere Client). Обратите внимание, что изменение версии аппаратного обеспечения существующей виртуальной машины не поддерживается.
vm_nic
нет
Список пар «ключ-значение» сетевых интерфейсов, их типов и сети, к которой они должны быть подключены.
vmware_guest_facts
нет
Сбор фактов из vCenter о конкретной виртуальной машине.

Примеры

---
# Create a new VM on an ESX server
# Returns changed = False when the VM already exists
# Returns changed = True and a adds ansible_facts from the new VM
# State will set the power status of a guest upon creation. Use powered_on to create and boot.
# Options ['state', 'vm_extra_config', 'vm_disk', 'vm_nic', 'vm_hardware', 'esxi'] are required together
# Note: vm_floppy support added in 2.0

- vsphere_guest:
    vcenter_hostname: vcenter.mydomain.local
    username: myuser
    password: mypass
    guest: newvm001
    state: powered_on
    vm_extra_config:
      vcpu.hotadd: yes
      mem.hotadd:  yes
      notes: This is a test VM
      folder: MyFolder
    vm_disk:
      disk1:
        size_gb: 10
        type: thin
        datastore: storage001
        # VMs can be put into folders. The value given here is either the full path
        # to the folder (e.g. production/customerA/lamp) or just the last component
        # of the path (e.g. lamp):
        folder: production/customerA/lamp
    vm_nic:
      nic1:
        type: vmxnet3
        network: VM Network
        network_type: standard
      nic2:
        type: vmxnet3
        network: dvSwitch Network
        network_type: dvs
    vm_hardware:
      memory_mb: 2048
      num_cpus: 2
      osid: centos64Guest
      scsi: paravirtual
      vm_cdrom:
        type: "iso"
        iso_path: "DatastoreName/cd-image.iso"
      vm_floppy:
        type: "image"
        image_path: "DatastoreName/floppy-image.flp"
    esxi:
      datacenter: MyDatacenter
      hostname: esx001.mydomain.local

# Reconfigure the CPU and Memory on the newly created VM
# Will return the changes made

- vsphere_guest:
    vcenter_hostname: vcenter.mydomain.local
    username: myuser
    password: mypass
    guest: newvm001
    state: reconfigured
    vm_extra_config:
      vcpu.hotadd: yes
      mem.hotadd:  yes
      notes: This is a test VM
    vm_disk:
      disk1:
        size_gb: 10
        type: thin
        datastore: storage001
    vm_nic:
      nic1:
        type: vmxnet3
        network: VM Network
        network_type: standard
    vm_hardware:
      memory_mb: 4096
      num_cpus: 4
      osid: centos64Guest
      scsi: paravirtual
    esxi:
      datacenter: MyDatacenter
      hostname: esx001.mydomain.local

# Deploy a guest from a template
- vsphere_guest:
    vcenter_hostname: vcenter.mydomain.local
    username: myuser
    password: mypass
    guest: newvm001
    from_template: yes
    template_src: centosTemplate
    cluster: MainCluster
    resource_pool: "/Resources"
    vm_extra_config:
      folder: MyFolder

# Task to gather facts from a vSphere cluster only if the system is a VMware guest

- vsphere_guest:
    vcenter_hostname: vcenter.mydomain.local
    username: myuser
    password: mypass
    guest: newvm001
    vmware_guest_facts: yes

---
# Typical output of a vsphere_facts run on a guest
# If vmware tools is not installed, ipadresses with return None

- hw_eth0:
  - addresstype: "assigned"
    label: "Network adapter 1"
    macaddress: "00:22:33:33:44:55"
    macaddress_dash: "00-22-33-33-44-55"
    ipaddresses: ['192.0.2.100', '2001:DB8:56ff:feac:4d8a']
    summary: "VM Network"
  hw_guest_full_name: "newvm001"
  hw_guest_id: "rhel6_64Guest"
  hw_memtotal_mb: 2048
  hw_name: "centos64Guest"
  hw_power_status: "POWERED ON"
  hw_processor_count: 2
  hw_product_uuid: "ef50bac8-2845-40ff-81d9-675315501dac"

# hw_power_status will be one of the following values:
#   - POWERED ON
#   - POWERED OFF
#   - SUSPENDED
#   - POWERING ON
#   - POWERING OFF
#   - SUSPENDING
#   - RESETTING
#   - BLOCKED ON MSG
#   - REVERTING TO SNAPSHOT
#   - UNKNOWN
# as seen in the VMPowerState-Class of PySphere: http://git.io/vlwOq

---
# Remove a vm from vSphere
# The VM must be powered_off or you need to use force to force a shutdown
- vsphere_guest:
    vcenter_hostname: vcenter.mydomain.local
    username: myuser
    password: mypass
    guest: newvm001
    state: absent
    force: yes

Примечания

Примечание

  • Этот модуль должен выполняться с системы, имеющей прямой доступ к vSphere. Либо используя local_action, либо используя delegate_to.

Статус

Этот модуль помечен как превью, что означает, что его интерфейс не гарантирует обратную совместимость.

Для получения помощи в разработке модулей, если это вас интересует, пожалуйста, прочитайте Справочную информацию по сообществу и участие в разработке, Тестирование Ansible и Разработка модулей.

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

Spec-Zone.ru

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