仮想ディスクのインポート

オンプレミス環境に、必要なソフトウェアと構成を備えた仮想ディスク(ゴールデン ディスクまたはゴールデン イメージとも呼ばれます)がある場合、この仮想ディスクを Compute Engine にインポートし、そのイメージを使用して新しい仮想マシンを作成することによって、時間を短縮できます。インポート ツールは、VMDK や VHD などのほとんどの仮想ディスク ファイル形式をサポートしています。

Compute Engine からディスクをエクスポートした場合、ディスクを再インポートする必要はありません。イメージをディスクから作成できます。

複数の仮想マシンを移行する自動システムが必要な場合は、Compute Engine への VM の移行の概要をご覧ください。

始める前に

サポートされているオペレーティング システム

Compute Engine で起動できるようにするには、仮想ディスクが次のいずれかのオペレーティング システムを実行している必要があります。

  • Linux オペレーティング システム:
    • CentOS 6、CentOS 7
    • Debian 8、Debian 9
    • Red Hat Enterprise Linux 6、Red Hat Enterprise Linux 7
    • Ubuntu 14.04 LTS、Ubuntu 16.04 LTS
  • Windows Server オペレーティング システム:
    • Windows Server 2008 R2、Windows Server 2012 R2、Windows Server 2012 R2 Core、Windows Server 2016、Windows Server 2016 Core

制限事項

この機能には次の制限があります。

  • Linux の仮想ディスクは、ブートローダーとして grub を使用する必要があります。
  • UEFI のブートローダーは、Windows および Linux ではサポートされていません。
  • Virtio-SCSI ストレージ コントローラ デバイスのサポートなど、Linux 仮想ディスクはカスタム OS イメージと同じ要件を満たす必要があります。
  • Windows の仮想ディスクにインストールする場合は、Carbon Black の Cb Protection などのアプリケーション ホワイトリスト登録ソフトウェアによってインポート プロセスが失敗する可能性があります。インポートする前に、このようなソフトウェアをアンインストールすることが必要になる場合があります。
  • RHEL を実行する仮想ディスクをインポートする場合は、インポートする前に仮想ディスクに python-boto パッケージがインストールされている場合にのみ、Bring Your Own License(BYOL)がサポートされます。
  • Windows Server オペレーティング システムを使用する仮想ディスクでは、Bring Your Own License 機能はサポートされていません。

仮想ディスクのインポート

互換性の確認

仮想マシンのディスクをインポートする前に、仮想マシン内で事前チェックツールをダウンロードして実行してください。事前チェックツールにより、互換性の問題がないことを確認します。

起動可能な仮想ディスクのインポート

gcloud compute images import コマンドを使用して、起動可能な Compute Engine イメージを作成します。Compute Engine ではほとんどのブートディスク イメージを起動できますが、import コマンドを使用すると、必要なドライバと最新のゲスト環境パッケージが必ずディスクに収められます。これらのパッケージは、インスタンスを起動し SSH や RDP を使用してインスタンスに接続する際に必要です。

仮想ディスク ファイルは、Cloud Storage バケットまたはローカル ワークステーションからインポートできます。ワークステーションから仮想ディスク ファイルをインポートする場合、インポート ツールによってファイルが Cloud Storage バケットに自動的にアップロードされます。インポート プロセスを開始する前に、仮想ディスク ファイルを手動で Cloud Storage にアップロードすることもできますが、インポート プロセスに使用される同じプロジェクトのストレージ バケットにファイルをアップロードする必要があります。

gcloud compute images import [IMAGE_NAME] \
    --source-file [SOURCE_FILE] \
    --os [OS]

ここで:

  • [IMAGE_NAME] は、対象イメージの名前です。
  • [SOURCE_FILE] は、仮想ディスク ファイルです。ローカル ファイルでも、Cloud Storage に保存されているファイルでもかまいません。仮想ディスクがローカル ファイルの場合は、絶対パスまたは相対パスを使用できます。仮想ディスク ファイルがすでに Cloud Storage に保存されている場合は、インポート プロセスに使用されるプロジェクトのストレージ バケットにそのファイルが存在することと、ファイルのフルパスを gs://[BUCKET_NAME]/[OBJECT_NAME] の形式で指定することが必要となります。
  • [OS] は、SOURCE_FILE のオペレーティング システムです。これは、centos-6centos-7debian-8debian-9rhel-6rhel-7rhel-6-byolrhel-7-byolubuntu-1404ubuntu-1604windows-2008r2windows-2012r2windows-2016 のいずれかになります。

ローカル ファイルを指定すると、仮想ディスクのサイズやネットワーク接続の速度によって、アップロード オペレーションに長時間かかることがあります。インポート オペレーションは、ディスクのサイズによって数十分かかることがあります。

次の例では、gs://your_gcs_bucket に保存されている your_server.vmdk という名前の debian-9 仮想ディスクをインポートします。

gcloud compute images import my-imported-image \
    --source-file gs://your_gcs_bucket/your_server.vmdk \
    --os debian-9

起動できない仮想ディスクのインポート

仮想ディスクに起動可能なオペレーティング システムがインストールされていない場合でも、--os フラグの代わりに --data-disk フラグを使用すると仮想ディスクをインポートできます。これにより、Compute Engine でイメージを起動できるようにするためにドライバとゲスト環境パッケージをインストールする手順がスキップされます。

gcloud compute images import [IMAGE_NAME] \
        --source-file [SOURCE_FILE] \
        --data-disk

ここで:

  • [IMAGE_NAME] は、対象イメージの名前です。
  • [SOURCE_FILE] は、仮想ディスク ファイルです。ローカル ファイルでも、Cloud Storage に保存されているファイルでもかまいません。仮想ディスクがローカル ファイルの場合は、絶対パスまたは相対パスを使用できます。仮想ディスク ファイルがすでに Cloud Storage に保存されている場合は、インポート プロセスに使用されるプロジェクトのストレージ バケットにそのファイルが存在することと、ファイルのフルパスを gs://[BUCKET_NAME]/[OBJECT_NAME] の形式で指定することが必要となります。

イメージを起動可能にする

起動可能なオペレーティング システムを搭載していながら必要な Compute Engine ドライバやゲスト環境パッケージがない Compute Engine カスタム イメージがある場合、イメージ インポート ツールを使用すると、そのイメージを Compute Engine で起動可能にできます。

インポート対象の新しいディスクを --source-file フラグで指定する代わりに、起動可能にするカスタム イメージを --source-image フラグで指定します。

gcloud compute images import [IMAGE_NAME] \
        --source-image [SOURCE_IMAGE] \
        --os [OS]

ここで

  • [IMAGE_NAME] は、対象イメージの名前です。
  • [SOURCE_IMAGE] は、ソースイメージの名前です。
  • [OS] は、SOURCE_IMAGE のオペレーティング システムです。これは、centos-6centos-7debian-8debian-9rhel-6rhel-7rhel-6-byolrhel-7-byolubuntu-1404ubuntu-1604windows-2008r2windows-2012r2windows-2016 のいずれかになります。

次の例は、my-image という名前の Compute Engine イメージを my-bootable-image という名前の起動可能なイメージに変換します。この例では、イメージにインストールされているオペレーティング システムは Ubuntu 16.04 です。

gcloud compute images import my-bootable-image --source-image=my-image --os=ubuntu-1604

Bring Your Own License(BYOL)のサポート

デフォルトでは、Windows Server および Red Hat Enterprise Linux(RHEL)オペレーティング システムを使用する仮想ディスクは、追加料金が発生するプレミアム OS イメージとしてインポートおよび構成されます。

RHEL の独自のソフトウェア サブスクリプションを使用したい場合は、[OS] フィールドに次のいずれかの BYOL 値を指定して、BYOL ライセンス イメージとしてディスクをインポートできます。

  • rhel-6-byol
  • rhel-7-byol

現在、Windows Server の仮想ディスクでは BYOL はサポートされていません。

リソースのクリーンアップ

Cloud Storage に保存されているファイルと Compute Engine のイメージには料金が発生します。インポート ツールにより、仮想ディスク ファイルが Cloud Storage にインポートされ、Compute Engine のカスタム イメージが 1 つ作成されます。

イメージが正常にインポートされ、Compute Engine インスタンスとして正常に起動することを確認したら、Cloud Storage から仮想ディスク ファイルを削除できます。このツールにより、ファイルが Cloud Storage にアップロードされると、そのファイルの URI が出力されます。この URI の形式は、gs://<bucket name>/tmpimage/<image name> です。

--data-disk フラグでイメージをインポートした後、再び import ツールを実行して --source-image フラグでイメージを起動可能にしても、最初のイメージはまだ残っています。このイメージが不要な場合は削除してください。[IMAGE_NAME][SOURCE_IMAGE] の両方のパラメータに同じイメージ名を指定するとそのイメージは自動的に上書きされるため、それ以上のクリーンアップは不要です。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Compute Engine ドキュメント