OpenStack インスタンスに対して実行時のサイズ変更を有効にするには、イメージ メタデータを構成します。実行時のサイズ変更が有効な場合は、インスタンスがパワーオン状態の間、インスタンスのディスク サイズ、メモリ、および vCPU 数を変更できます。

実行時のサイズ変更には、次の制限が適用されます。
  • SR-IOV が有効なポートを使用するインタンスの作成には、実行時のサイズ変更を使用しないでください。実行時のサイズ変更は、SR-IOV と互換性がありません。
  • テナント仮想データセンターでは、実行時のサイズ変更に対して有効なインスタンスを使用しないでください。実行時のサイズ変更は、テナント仮想データセンターと互換性がありません。
  • 3GB を超えるメモリを Linux 64 ビット、または Windows 7 32 ビットのオペレーティング システムに追加しないでください。詳細については、ナレッジベースの記事KB2008405を参照してください。
注: 実行時のサイズ変更では、インスタンスのディスク サイズ、メモリ、および vCPU の値のみを増やすことができます。

実行時のディスク サイズの変更には、次の条件も適用されます。

  • イメージのディスク フォーマットとして VMDK を使用する。
  • イメージに SCSI 仮想ディスク アダプタ タイプを使用する。IDE アダプタ タイプはサポートされません。
  • フル クローンとしてイメージから仮想マシンをデプロイする。リンク クローンは、実行時にサイズの変更はできません。

手順

  1. root ユーザーとして Integrated OpenStack Manager にログインし、ツールボックスを開きます。
    ssh root@mgmt-server-ip
    toolbox
  2. 実行時のサイズ変更が有効な新しいイメージを作成します。
    openstack image create image-name --disk-format {vmdk | iso} --container-format bare --file image-file {--public | --private} [--property vmware_adaptertype="vmdk-adapter-type"] [--property vmware_disktype="{sparse | preallocated | streamOptimized}"] --property vmware_ostype="operating-system" --property img_linked_clone="false" --property os_live_resize="{vcpu | memory | disk}"
    オプション 説明

    image-name

    ソース イメージの名前を入力します。

    --disk-format

    vmdk と入力します。

    --container-format

    bare と入力します。コンテナ フォーマットの引数は、現在 Glance によって使用されていません。

    --file

    アップロードするイメージ ファイルを指定します。

    {--public | --private}

    すべてのユーザーがイメージを利用できるようにするには --public を、現在のユーザーのみがイメージを利用できるようにするには --private を含めます。

    --property vmware_adaptertype

    VMDK ディスクのアダプタ タイプを指定します。実行時のディスク サイズ変更には、SCSI アダプタを指定する必要があります。

    このパラメータを含めない場合、アダプタ タイプはイントロスペクションによって決まります。

    --property vmware_disktype

    sparsepreallocated、または streamOptimized を指定します。

    このパラメータを含めない場合、ディスク タイプはイントロスペクションによって決まります。

    --property vmware_ostype

    イメージ上でオペレーティング システムを指定します。

    --property img_linked_clone

    false と入力します。

    --property os_live_resize

    vcpumemorydisk、またはカンマで区切られた任意の組み合わせ(たとえば、vcpu,memory,disk)を指定します。

    [テナント VDC の中または外にある、あるいはそれらにまたがるインスタンスのライブ サイズ変更]

    テナント VDC の中または外にある、あるいはそれらにまたがるインスタンスのライブ サイズ変更を行うには、次の手順を実行します。

    • 前の 2 つの手順の説明に従って、ライブ サイズ変更向けにイメージを構成します。
    • compute 1 で tenant-vdc1 を作成します。
      viocli create tenant-vdc --name tvdc-01 --project-id ecbf813ee5d54420864247a2edcd76dc --compute compute-c05c9c49-c55
    • フレーバーを作成し、フレーバーのプロパティを更新します。
      openstack flavor set --property vmware:tenant_vdc='746146ea-a8f2-4be2-8bef-1dabe1249de7' m1.tvdc-01
    • 作成したフレーバー プロパティを使用するインスタンスを作成し、次のように tvdc1 に配置します。
      openstack server create --flavor m1.small --network 39f32be5-7079-4110-8f38-8c3948d3079d --image "Photon 3.0" resize-01
    • compute 1 で tenant-vdc1 を作成します。
      viocli create tenant-vdc --name tvdc-02 --project-id ecbf813ee5d54420864247a2edcd76dc --compute compute-c05c9c49-c55
      • テナント VDC 外のインスタンスを tvdc-01 に移動します。
        openstack server resize resize-01 --flavor m1.tvdc-01
        openstack server resize confirm resize-01
      • インスタンスを tvdc-01 から tvdc-02 に移動します。
        openstack server resize resize-01 --flavor m1.tvdc-02
        openstack server resize confirm resize-01
      • インスタンスを tvdc-02 の外に移動します。
        openstack server resize resize-01 --flavor m1.small
        openstack server resize confirm resize-01

結果

この手順で定義したイメージを使用して仮想マシンを作成すると、パワーオフせずにそれらの仮想マシンのサイズを変更することができます。