イメージのインポート/エクスポート

イメージのインポート/エクスポートを使用して、複数のテナンシおよびリージョン間でカスタム・イメージを共有できます。

重要

オブジェクト・ストレージ・バケットからカスタム・イメージをインポートまたはエクスポートするには、フェデレーテッド・ユーザー、および動的グループに関連付けられたインスタンス・プリンシパルを使用して認証するユーザーは、事前認証済リクエストを作成する必要があります。詳細は、既知の問題「カスタム・イメージをインポートまたはエクスポートする際の無効なbucketNameエラー」を参照してください。

プラットフォーム・イメージ、マーケットプレイス・イメージ、およびマーケットプレイス・イメージから作成されたカスタム・イメージはエクスポートできません。

Linuxベースのオペレーティング・システム

次のオペレーティング・システムでは、イメージのインポート/エクスポートがサポートされます:

  • Oracle Linux 6.x
  • Oracle Linux 7.x
  • Oracle Linux 8.x
  • Oracle Linux 9.x
  • Oracle Linux Cloud Developer 8.x
  • CentOS 7
  • CentOS Stream 8
  • Ubuntu 18.04
  • Ubuntu 20.04
  • Ubuntu 22.04

Windowsベースのオペレーティング・システム

次のWindowsバージョンでは、イメージのインポート/エクスポートがサポートされます:

  • Windows Server 2012 Standard、Datacenter
  • Windows Server 2012 R2 Standard、Datacenter
  • Windows Server 2016 Standard、Datacenter
  • Windows Server 2019 Standard、Datacenter
  • Windows Server 2022 Standard、Datacenter
重要

Windowsベースのイメージをエクスポートする場合、Microsoft Product Termsおよびすべての製品使用条件に準拠し、Microsoftとの契約を確認するのはユーザーの責任です。

Windowsイメージのライセンス要件の詳細は、Oracle Cloud InfrastructureでのMicrosoftライセンスを参照してください。

Windowsオペレーティング・システムの検証

カスタムWindowsイメージをインポートするときは、選択するバージョンがインポートしたWindowsイメージと一致することを確認します。正しいバージョンとSKU情報を提供できないと、Microsoftライセンス契約の違反になる可能性があります。

カスタムWindowsインスタンスでのWindowsシステム時間の問題

Windows VMインスタンスでタイムゾーンをデフォルト設定から変更すると、インスタンスの再起動時またはハードウェア・クロックとの同期時に、システム時間がデフォルト・タイムゾーンの時刻に戻ります。ただし、タイムゾーンの設定は新しいタイムゾーンに設定されたままであるため、システム・クロックが正しくなくなります。これを修正するには、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformationレジストリ・キーを1に設定します。

Windowsプラットフォーム・イメージには、デフォルトでRealTimeIsUniversalレジストリ・キーが設定されていますが、これはインポートするカスタムWindowsイメージに合せて設定する必要があります。

カスタムWindowsイメージのこの問題を修正するには:

  1. Windowsレジストリ・エディタを開き、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformationレジストリ・キーに移動します。
  2. RealTimeIsUniversalという名前の新しいDWORDキーを作成し、値を1に設定します。
  3. インスタンスを再起動します。
  4. 時刻とタイムゾーンを手動でリセットします。

独自のイメージを導入するシナリオ

また、独自のイメージの導入(BYOI)シナリオでは、テナンシおよびリージョンの間でカスタム・イメージを共有するためにイメージのインポート/エクスポートを使用することもでき、各リージョンでイメージを手動で再作成する必要がありません。リージョンの1つでイメージを手動で作成するために必要なステップを実行する必要がありますが、それが完了した後は、イメージをエクスポートして、追加のテナンシとリージョンにインポートできるようにします。.oci形式のイメージをエクスポートします。これは、QCOW2イメージ・ファイルとOracle Cloud Infrastructure固有のメタデータを含むファイル形式です。

リージョン間でイメージをレプリケートするためのベスト・プラクティス

コンソールまたはAPIを使用して、リージョン間でイメージをレプリケートできます。概要は次のとおりです:

  1. イメージと同じリージョンにあるオブジェクト・ストレージ・バケットにイメージをエクスポートします。
  2. レプリケート先リージョンのオブジェクト・ストレージ・バケットにイメージをコピーします。
  3. イメージ・オブジェクトへのURLパスを取得します。
  4. レプリケート先リージョンで、イメージをインポートします。URLパスをオブジェクト・ストレージURLとして使用します。

テナンシ間でイメージを共有するためのベスト・プラクティス

コンソールまたはAPIを使用して、テナンシ間でイメージをレプリケートできます。概要は次のとおりです:

  1. イメージと同じリージョンにあるオブジェクト・ストレージ・バケットにイメージをエクスポートします。
  2. 事前認証済リクエストの使用: 宛先リージョン内のイメージに対する読取り専用アクセス権。

  3. レプリケート先テナンシで、イメージをインポートします。事前認証済リクエストのURLをオブジェクト・ストレージURLとして使用します。

オブジェクト・ストレージ・サービスURL

コンソールを使用してカスタム・イメージをインポートまたはエクスポートする際に、場合によっては、イメージのインポート元またはエクスポート先の場所を指すオブジェクト・ストレージURLを指定する必要があります。オブジェクト・ストレージURLの構成は次のとおりです:

https://<host_name>/n/<namespace_name>/b/<bucket_name>/o/<object_name>

例:

https://objectstorage.us-phoenix-1.oraclecloud.com/n/MyNamespace/b/MyBucket/o/MyCustomImage.qcow2

事前認証済リクエスト

テナンシ間でインポート/エクスポートを使用する場合、オブジェクト・ストレージの事前認証済リクエストを使用する必要があります。事前認証済リクエストを作成するステップは、事前認証済リクエストの使用を参照してください。これらのステップを実行した後で、「事前認証済リクエストの作成」をクリックすると「事前認証済リクエストの詳細」ダイアログ・ボックスが開きます。ここに表示される事前認証済リクエストのURLのコピーを作成する必要があります。このURLはここにしか表示されません。これが、インポート/エクスポートで指定するオブジェクト・ストレージURLです。

ノート

バケットの事前認証済リクエスト

イメージのエクスポートでは、バケットの事前認証済リクエストを作成する場合は、生成されるURLにオブジェクト名を付加する必要があります。例:

/o/MyCustomImage.qcow2

イメージのエクスポート

コンソールまたはAPIを使用してイメージをエクスポートできます。エクスポートしたイメージはOracle Cloud Infrastructure Object Storageサービスに格納されます。イメージのエクスポートを実行するには、イメージに対するオブジェクト・ストレージ・バケットへの書込みアクセス権が必要です。詳細は、オブジェクト・ストレージの概要およびユーザーにオブジェクトをオブジェクト・ストレージ・バケットに書き込ませるを参照してください。

コンソールを使用してイメージをエクスポートするには

  1. ナビゲーション・メニューを開き、「コンピュート」をクリックします。「コンピュート」で、「カスタム・イメージ」をクリックします。
  2. 関心のあるカスタム・イメージをクリックします。
  3. 「エクスポート」をクリックします。
  4. イメージのエクスポート先となるオブジェクト・ストレージの場所を指定します:

    • オブジェクト・ストレージ・バケットにエクスポート: バケットを選択します。次に、エクスポートされたイメージの名前を入力します。機密情報の入力は避けてください。
    • オブジェクト・ストレージURLにエクスポート: オブジェクト・ストレージURLを入力します。
  5. 「イメージの形式」リストで、イメージのエクスポート先の形式を選択します。次の形式を使用できます:

    • QCOW2イメージとOCIメタデータ(.oci)を含むOracle Cloud Infrastructureファイル。この形式を使用して、他のテナンシまたはリージョンにインポートするカスタム・イメージをエクスポートします。
    • QEMUコピー・オン・ライト(.qcow2)
    • Oracle VM VirtualBoxの仮想ディスク・イメージ(.vdi)
    • Hyper-Vの仮想ハード・ディスク(.vhd)
    • 仮想マシン・ディスク(.vmdk)
  6. 「イメージのエクスポート」をクリックします。

「イメージのエクスポート」をクリックすると、イメージの状態が「エクスポート中」に変わります。イメージは、イメージが作成されたときのVMまたはBMインスタンスのブート・ボリュームおよびメタデータのコピーで、インスタンスの現在の状態を取得します。カスタム・イメージをエクスポートすると、指定したオブジェクト・ストレージの場所にデータがコピーされます。イメージのエクスポート中もインスタンスを起動できますが、エクスポートが完了するまでイメージを削除することはできません。操作の進行状況を追跡し、インスタンスの作成中に発生したエラーをトラブルシューティングするには、関連付けられている作業リクエストを使用します。

エクスポートが完了すると、イメージの状態は「使用可能」に変わります。イメージの状態が「使用可能」に変わっても、指定したオブジェクト・ストレージの場所にエクスポートされたイメージが表示されない場合、エクスポートは失敗しています。イメージをエクスポートするステップを再度実行する必要があります。

イメージのインポート

コンソールまたはAPIを使用して、エクスポートしたイメージをオブジェクト・ストレージからインポートできます。イメージをインポートするには、そのイメージを含むオブジェクト・ストレージ・オブジェクトに対する読取りアクセス権が必要です。詳細は、ユーザーにオブジェクトをオブジェクト・ストレージ・バケットからダウンロードさせるを参照してください。

コンソールを使用してイメージをインポートするには

  1. ナビゲーション・メニューを開き、「コンピュート」をクリックします。「コンピュート」で、「カスタム・イメージ」をクリックします。
  2. 「イメージのインポート」をクリックします。
  3. 「コンパートメントに作成」リストで、イメージのインポート先のコンパートメントを選択します。
  4. イメージの名前を入力します。機密情報の入力は避けてください。
  5. 「オペレーティング・システム」を選択します:

    • Linuxイメージの場合は、「Linux」を選択します。
    • Windowsイメージの場合は、「Windows」を選択します。「オペレーティング・システムのバージョン」を選択し、選択したオペレーティング・システムがMicrosoftライセンス契約に準拠していることを証明します。
  6. イメージのインポート元となるオブジェクト・ストレージの場所を指定します:

    • オブジェクト・ストレージ・バケットからインポート: イメージが含まれるバケットを選択します。「オブジェクト名」リストで、イメージ・ファイルを選択します。
    • オブジェクト・ストレージURLからインポート: イメージのオブジェクト・ストレージURLを入力します。テナンシをまたいでインポートする場合は、事前認証済リクエストURLを指定する必要があります。
  7. 「イメージ・タイプ」セクションで、イメージの形式を選択します。次の形式を使用できます:

    • VMDK: 仮想マシン・ディスク(.vmdk)
    • QCOW2: QEMUコピー・オン・ライト(.qcow2)
    • OCI: QCOW2イメージとOCIメタデータ(.oci)を含むOracle Cloud Infrastructureファイル。この形式は、別のテナンシまたはリージョンからエクスポートされたカスタム・イメージをインポートする場合に使用します。
  8. 「起動モード」を選択します:

    • イメージ・タイプが.ociのカスタム・イメージの場合、起動モードは無効になります。Oracle Cloud Infrastructureでは、ソース・イメージの起動モードに基づいて適切な起動モードが選択されます。

    • Oracle Cloud Infrastructureからエクスポートされたカスタム・イメージで、イメージ・タイプがQCOW2の場合は、「ネイティブ・モード」を選択します。

    • その他のカスタム・イメージをインポートするには、「準仮想化モード」または「エミュレーション・モード」を選択します。詳細は、「イメージ持込み」を参照してください。

  9. タグ付けオプションの表示: リソースの作成権限がある場合、そのリソースにフリーフォーム・タグを適用する権限もあります。定義済のタグを適用するには、タグ・ネームスペースを使用する権限が必要です。タグ付けの詳細は、リソース・タグを参照してください。タグを適用するかどうかがわからない場合は、このオプションをスキップするか、管理者に連絡してください。タグは後で適用できます。
  10. 「イメージのインポート」をクリックします。

「イメージのインポート」をクリックすると、インポートされたイメージがコンパートメントの「カスタム・イメージ」リストに「インポート中」という状態で表示されます。操作の進行状況を追跡し、インスタンスの作成中に発生したエラーをトラブルシューティングするには、関連付けられている作業リクエストを使用します。

インポートが正常に完了すると、状態が「使用可能」に変わります。状態が変わらない場合、または「カスタム・イメージ」リストにエントリが表示されない場合、インポートは失敗しています。インポートが失敗した場合は、オブジェクト・ストレージ・オブジェクトへの読取りアクセス権があることと、サポートされるイメージがオブジェクトに含まれていることを確認します。

イメージのタグの管理

リソースにタグを適用すると、ビジネス・ニーズに応じてそれらを整理しやすくなります。リソースの作成時にタグを適用するか、後でリソースを必要なタグで更新します。タグ適用についての一般情報は、リソース・タグを参照してください。

イメージのタグを管理するには
  1. ナビゲーション・メニューを開き、「コンピュート」をクリックします。「コンピュート」で、「カスタム・イメージ」をクリックします。
  2. 関心のあるイメージをクリックします。

  3. 既存のタグを表示または編集するには、「タグ」タブをクリックします。または、「他のアクション」をクリックし、「タグの追加」をクリックして新しいタグを追加します。

APIの使用

APIの使用およびリクエストの署名の詳細は、REST APIのドキュメントおよびセキュリティ資格証明を参照してください。SDKの詳細は、SDKおよびCLIを参照してください。

カスタム・イメージのインポート/エクスポートには、次のAPI操作を使用します:

イメージのインポート/エクスポートでのX5とX7の互換性

Oracle X5、X6およびX7の各サーバーはホスト・ハードウェアが異なります。そのため、X7ベア・メタルまたは仮想マシン(VM)インスタンスでX5またはX6イメージを使用するときは、変更を加えないと機能しない場合があります。X7ホストには、X7のプラットフォーム・イメージを使用することをお薦めします。どのイメージでX7がサポートされるかについては、イメージのリリース・ノートを参照してください。これらのイメージは、確実にX7ハードウェアに対して作成およびテストされています。

X7ハードウェア上で既存のX5イメージを使用する場合は、次の点に注意してください:

  • Windowsバージョンには相互互換性がありません。
  • Oracle Autonomous Linux 7およびOracle Linux 8には相互互換性があります。
  • Oracle Linux 6、Oracle Linux 7、Oracle Linux 8、Oracle Linux 9、Ubuntu 18.04、Ubuntu 20.04、Ubuntu 22.04、CentOS 7およびCentOS Stream 8には相互互換性があります。ただし、最新のデバイス・ドライバをインストールするには、カーネルを最新バージョンに更新する必要がある場合があります。カーネルを更新するには、端末セッションから次のいずれかのコマンドを実行します:
    • Oracle Linux
      yum update
    • CentOS 7CentOS Stream 8
      yum update
    • Ubuntu 18.04Ubuntu 20.04Ubuntu 22.04
      apt-get update
      apt-get dist-upgrade

X6以外のハードウェア上でX6イメージを使用する場合は、次の点に注意してください:

  • Oracle Linux 6、すべてのCentOSバージョンおよびすべてのWindowsバージョンには相互互換性がありません。
  • Oracle Autonomous Linux 7およびOracle Linux 8には相互互換性があります。
  • Oracle Linux 7、Ubuntu 22.04、Ubuntu 20.04およびUbuntu 18.04には相互互換性があります。X6用のプラットフォーム・イメージを使用します。

X5、X6およびX7のホストで異なるプライマリ・デバイス・ドライバを次に示します:

  • ネットワーク・デバイス・ドライバ
  • NVMeドライブ・デバイス・ドライバ
  • GPUデバイス・ドライバ

イメージのカスタマイズ方法によっては、追加の更新が必要な場合があります。