Spec-Zone.ru › Ansible 2.11

Как изменить виртуальную машину

  • Введение
  • Требования к сценарию
  • Как добавить привод CDROM в виртуальную машину

    • Добавить новый адаптер SATA
    • Результат
    • Добавить привод CDROM
    • Результат
  • Как подключить ВМ к сети

    • Подключить новый сетевой адаптер
    • Результат
    • Настроить конфигурацию сетевого адаптера
    • Результат
  • Увеличить объем памяти ВМ

    • Результат
  • Обновить версию оборудования ВМ

    • Результат
  • Настроить количество процессоров ВМ

    • Результат
  • Удалить контроллер SATA

    • Результат
  • Подключить дисковод гибких дисков

    • Результат
  • Подключить новый диск

    • Результат

Введение

Этот раздел показывает, как использовать Ansible для изменения существующей виртуальной машины.

Требования к сценарию

Вы уже выполнили Инструкцию по созданию виртуальной машины и создали ВМ.

Как добавить привод CDROM в виртуальную машину

В этом примере мы используем модули vcenter_vm_hardware_* для добавления нового привода CDROM в существующую ВМ.

Добавить новый адаптер SATA

Сначала мы создаем новый адаптер SATA. Мы указываем pci_slot_number. Таким образом, если мы выполним задачу снова, ничего не произойдет, если адаптер уже существует.

- name: Create a SATA adapter at PCI slot 34
  vmware.vmware_rest.vcenter_vm_hardware_adapter_sata:
    vm: '{{ test_vm1_info.id }}'
    pci_slot_number: 34
  register: _sata_adapter_result_1

Результат

{
    "value": {
        "bus": 0,
        "pci_slot_number": 34,
        "label": "SATA controller 0",
        "type": "AHCI"
    },
    "id": "15000",
    "changed": true
}

Добавить привод CDROM

Теперь мы можем создать привод CDROM:

- name: Attach an ISO image to a guest VM
  vmware.vmware_rest.vcenter_vm_hardware_cdrom:
    vm: '{{ test_vm1_info.id }}'
    type: SATA
    sata:
      bus: 0
      unit: 2
    start_connected: true
    backing:
      iso_file: '[ro_datastore] fedora.iso'
      type: ISO_FILE
  register: _result

Результат

{
    "value": {
        "start_connected": true,
        "backing": {
            "iso_file": "[ro_datastore] fedora.iso",
            "type": "ISO_FILE"
        },
        "allow_guest_control": false,
        "label": "CD/DVD drive 1",
        "state": "NOT_CONNECTED",
        "type": "SATA",
        "sata": {
            "bus": 0,
            "unit": 2
        }
    },
    "id": "16002",
    "changed": true
}

Как подключить ВМ к сети

Подключить новый сетевой адаптер

Здесь мы подключаем ВМ к сети (через портгруппу). Мы указываем pci_slot_number по той же причине.

Вторая задача настраивает конфигурацию сетевого адаптера.

- name: Attach a VM to a dvswitch
  vmware.vmware_rest.vcenter_vm_hardware_ethernet:
    vm: '{{ test_vm1_info.id }}'
    pci_slot_number: 4
    backing:
      type: DISTRIBUTED_PORTGROUP
      network: "{{ my_portgroup_info.dvs_portgroup_info.dvswitch1[0].key }}"
    start_connected: false
  register: vm_hardware_ethernet_1

Результат

{
    "value": {
        "start_connected": false,
        "pci_slot_number": 4,
        "backing": {
            "connection_cookie": 2145337177,
            "distributed_switch_uuid": "50 33 88 3a 8c 6e f9 02-7a fd c2 c0 2c cf f2 ac",
            "distributed_port": "2",
            "type": "DISTRIBUTED_PORTGROUP",
            "network": "dvportgroup-1649"
        },
        "mac_address": "00:50:56:b3:49:5c",
        "mac_type": "ASSIGNED",
        "allow_guest_control": false,
        "wake_on_lan_enabled": false,
        "label": "Network adapter 1",
        "state": "NOT_CONNECTED",
        "type": "VMXNET3",
        "upt_compatibility_enabled": false
    },
    "id": "4000",
    "changed": true
}

Настроить конфигурацию сетевого адаптера

- name: Turn the NIC's start_connected flag on
  vmware.vmware_rest.vcenter_vm_hardware_ethernet:
    nic: '{{ vm_hardware_ethernet_1.id }}'
    start_connected: true
    vm: '{{ test_vm1_info.id }}'

Результат

{
    "id": "4000",
    "changed": true
}

Увеличить объем памяти ВМ

Мы также можем настроить объем памяти, который мы выделяем для нашей ВМ.

- name: Increase the memory of a VM
  vmware.vmware_rest.vcenter_vm_hardware_memory:
    vm: '{{ test_vm1_info.id }}'
    size_MiB: 1080
  register: _result

Результат

{
    "id": null,
    "changed": true
}

Обновить версию оборудования ВМ

Здесь мы используем модуль vcenter_vm_hardware для обновления версии оборудования:

- name: Upgrade the VM hardware version
  vmware.vmware_rest.vcenter_vm_hardware:
    upgrade_policy: AFTER_CLEAN_SHUTDOWN
    upgrade_version: VMX_13
    vm: '{{ test_vm1_info.id }}'
  register: _result

Результат

{
    "id": null,
    "changed": true
}

Настроить количество процессоров ВМ

Для этого вы можете использовать vcenter_vm_hardware_cpu.

- name: Dedicate one core to the VM
  vmware.vmware_rest.vcenter_vm_hardware_cpu:
    vm: '{{ test_vm1_info.id }}'
    count: 1
  register: _result

Результат

{
    "value": {
        "hot_remove_enabled": false,
        "count": 1,
        "hot_add_enabled": false,
        "cores_per_socket": 1
    },
    "id": null,
    "changed": false
}

Удалить контроллер SATA

В этом примере мы удаляем контроллер SATA слота PCI 34.

{
    "changed": true
}

Результат

{
    "changed": true
}

Подключить дисковод гибких дисков

Здесь мы подключаем дисковод гибких дисков к ВМ.

- name: Add a floppy disk drive
  vmware.vmware_rest.vcenter_vm_hardware_floppy:
    vm: '{{ test_vm1_info.id }}'
    allow_guest_control: true
  register: my_floppy_drive

Результат

{
    "value": {
        "start_connected": false,
        "backing": {
            "auto_detect": true,
            "type": "HOST_DEVICE",
            "host_device": ""
        },
        "allow_guest_control": true,
        "label": "Floppy drive 1",
        "state": "NOT_CONNECTED"
    },
    "id": "8000",
    "changed": true
}

Подключить новый диск

Здесь мы подключаем небольшой диск к ВМ. capacity измеряется в байтах.

- name: Create a new disk
  vmware.vmware_rest.vcenter_vm_hardware_disk:
    vm: '{{ test_vm1_info.id }}'
    type: SATA
    new_vmdk:
      capacity: 320000
  register: my_new_disk

Результат

{
    "value": {
        "backing": {
            "vmdk_file": "[local] test_vm1_8/test_vm1_1.vmdk",
            "type": "VMDK_FILE"
        },
        "label": "Hard disk 2",
        "type": "SATA",
        "sata": {
            "bus": 0,
            "unit": 0
        },
        "capacity": 320000
    },
    "id": "16000",
    "changed": true
}

© 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/scenario_guides/vmware_rest_scenarios/vm_hardware_tuning.html

Spec-Zone.ru

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