2.15. 例:Python を使用した仮想マシンのストレージディスクの作成
新しく作成された仮想マシンが永続ストレージにアクセスできるようにするには、ディスクを作成して割り当てる必要があります。
例2.14 Python を使用した仮想マシンのストレージディスクの作成
この Python の例では、8 GB の
これらのオプションは、仮想マシンのディスクコレクションの
virtio ディスクドライブを作成し、vm1 という名前の仮想マシンにアタッチします。この例のディスク:
data1という名前のストレージドメインに保存する必要があります。disk_storage_domain = params.StorageDomains(storage_domain=[api.storagedomains.get(name="data1")])- サイズは 8 GB である必要があります。
disk_size = 8*1024*1024 システムタイプのディスク(データではなく)である必要があります。disk_type = "system"virtioストレージデバイスである必要があります。disk_interface = "virtio"cow形式で保存する必要があります。disk_format = "cow"- 使用可能なブートデバイスとしてマークされている必要があります。
disk_bootable = True
add メソッドを使用してディスク自体を作成する前に、ディスク パラメーターオブジェクトに統合されます。
from ovirtsdk.api import API
from ovirtsdk.xml import params
try:
api = API (url="https://HOST",
username="USER@DOMAIN",
password="PASS",
ca_file="ca.crt")
vm = api.vms.get(name="vm1")
sd = params.StorageDomains(storage_domain=[api.storagedomains.get(name="data1")])
disk_size = 8*1024*1024
disk_type = "system"
disk_interface = "virtio"
disk_format = "cow"
disk_bootable = True
disk_params = params.Disk(storage_domains=sd,
size=disk_size,
type_=disk_type,
interface=disk_interface,
format=disk_format,
bootable=disk_bootable)
try:
d = vm.disks.add(disk_params)
print "Disk '%s' added to '%s'." % (d.get_name(), vm.get_name())
except Exception as ex:
print "Adding disk to '%s' failed: %s" % (vm.get_name(), ex)
api.disconnect()
except Exception as ex:
print "Unexpected error: %s" % ex
追加 要求に成功すると、スクリプトにより以下が出力されます。
Disk 'vm1_Disk1' added to 'vm1'.