3.14. 仮想 NIC の作成

新しく作成された仮想マシンがネットワークにアクセスできるようにするには、仮想 NIC を作成してアタッチする必要があります。

例3.12 仮想 NIC の作成

この例では、NIC (nic1) を作成し、それを仮想マシン (vm1) にアタッチします。この例の NIC は、virtio ネットワークデバイスであり、ovirtmgmt 管理ネットワークにアタッチされています。

V4

import ovirtsdk4 as sdk
import ovirtsdk4.types as types

connection = sdk.Connection(
    url='https://engine.example.com/ovirt-engine/api',
    username='admin@internal',
    password='password',
    ca_file='ca.pem',
)

# Locate the virtual machines service and use it to find the virtual
# machine:
vms_service = connection.system_service().vms_service()
vm = vms_service.list(search='name=vm1')[0]

# Locate the service that manages the network interface cards of the
# virtual machine:
nics_service = vms_service.vm_service(vm.id).nics_service()

# Locate the vnic profiles service and use it to find the ovirmgmt
# network's profile id:
profiles_service = connection.system_service().vnic_profiles_service()
profile_id = None
for profile in profiles_service.list():
    if profile.name == 'ovirtmgmt':
        profile_id = profile.id
        break

# Use the "add" method of the network interface cards service to add the
# new network interface card:

nic = nics_service.add(
    types.Nic(
        name='nic1',
        interface=types.NicInterface.VIRTIO,
        vnic_profile=types.VnicProfile(id=profile_id),
    ),
)

print("Network interface '%s' added to '%s'." % (nic.name, vm.name))

connection.close()

add リクエストが成功すると、例は次のテキストを出力します。

Network interface 'nic1' added to 'vm1'.