Как изменить виртуальную машину
Введение
Этот раздел показывает, как использовать 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