2.2. 複数ストアへのイメージのインポート
相互運用可能なイメージのインポートワークフローを使用して、イメージデータを複数の Ceph Storage クラスターにインポートします。ローカルファイルシステムで、または Web サーバーから利用可能なイメージを、Image サービスにインポートすることができます。
Web サーバーからイメージをインポートする場合、イメージを複数のストアに一度にインポートすることができます。イメージが Web サーバーで利用できない場合は、イメージをローカルファイルシステムから中央のストアにインポートし、それをさらに別のストアにコピーすることができます。詳しくは、複数ストアへの既存イメージのコピー を参照してください。
中央サイトにイメージを使用するインスタンスがない場合でも、必ず中央サイトにイメージのコピーを保存してください。Image サービスへのイメージのインポートについての詳しい情報は、Distributed compute node and storage deployment を参照してください。
2.2.1. イメージのインポート失敗時の対応
--allow-failure
パラメーターを使用して、イメージインポート操作の失敗に対応することができます。
-
--allow-failure
パラメーターの値をtrue
に設定した場合、最初のストアにデータが正常にインポートされると、イメージのステータスはactive
になります。これがデフォルトの設定です。os_glance_failed_import
イメージ属性を使用して、イメージデータのインポートに失敗したストアのリストを表示することができます。 -
--allow-failure
パラメーターの値をfalse
に設定すると、指定したすべてのストアにデータが正常にインポートされた場合に限り、イメージのステータスがactive
になります。いずれかのストアでイメージデータのインポートが失敗した場合、イメージのステータスはfailed
になります。イメージは指定されたどのストアにもインポートされません。
2.2.2. 複数ストアへのイメージデータのインポート
--allow-failure
パラメーターのデフォルト設定は true
なので、一部のストアがイメージデータのインポートに失敗するのを許容するのであれば、コマンドにパラメーターを追加する必要はありません。
この手順では、すべてのストアがイメージデータを正常にインポートすることは求められせん。
手順
指定した複数のストアにイメージデータをインポートします。
$ glance image-create-via-import \ --container-format bare \ --name IMAGE-NAME \ --import-method web-download \ --uri URI \ --stores STORE1,STORE2,STORE3
- IMAGE-NAME をインポートするイメージの名前に置き換えます。
- URI をイメージの URI に置き換えます。
- STORE1、STORE2、および STORE3 を、イメージデータをインポートするストアの名前に置き換えます。
-
あるいは、
--stores
を--all-stores true
に置き換え、すべてのストアにイメージをアップロードします。
QCOW2 イメージを自動的に RAW 形式に変換する glance image-create-via-import
コマンドは、web-download
メソッドでのみ機能します。glance-direct
メソッドを使用することはできますが、共有ファイルシステムが設定されたデプロイメントでのみ機能します。
2.2.3. 複数ストアへのイメージデータのインポート (失敗を許容しない)
この手順では、すべてのストアがイメージデータを正常にインポートすることが求められます。
手順
指定した複数のストアにイメージデータをインポートします。
$ glance image-create-via-import \ --container-format bare \ --name IMAGE-NAME \ --import-method web-download \ --uri URI \ --stores STORE1,STORE2
- IMAGE-NAME をインポートするイメージの名前に置き換えます。
- URI をイメージの URI に置き換えます。
- STORE1、STORE2、および STORE3 を、イメージデータをコピーするストアの名前に置き換えます。
あるいは、
--stores
を--all-stores true
に置き換え、すべてのストアにイメージをアップロードします。注記--allow-failure
パラメーターをfalse
に設定すると、Image サービスはイメージデータのインポートに失敗したストアを無視しません。イメージ属性os_glance_failed_import
を使用して、失敗したストアのリストを表示することができます。詳細は、イメージインポート操作の進捗の確認 を参照してください。
イメージデータが特定のストアに追加されたことを確認します。
$ glance image-show IMAGE-ID | grep stores
IMAGE-ID を元の既存イメージの ID に置き換えます。
出力には、ストアのコンマ区切りリストが表示されます。
2.2.4. 1 つのストアへのイメージデータのインポート
イメージデータを 1 つのストアにインポートすることができます。
手順
イメージデータを 1 つのストアにインポートします。
$ glance image-create-via-import \ --container-format bare \ --name IMAGE-NAME \ --import-method web-download \ --uri URI \ --store STORE
- IMAGE-NAME をインポートするイメージの名前に置き換えます。
- URI をイメージの URI に置き換えます。
STORE をイメージデータをコピーするストアの名前に置き換えます。
注記コマンドに
--stores
、--all-stores
、または--store
オプションを指定しないと、Image サービスは中央ストアにイメージを作成します。
イメージデータが特定のストアに追加されたことを確認します。
$ glance image-show IMAGE-ID | grep stores
IMAGE-ID を元の既存イメージの ID に置き換えます。
出力には、ストアのコンマ区切りリストが表示されます。
2.2.5. イメージインポート操作の進捗の確認
相互運用可能なイメージのインポートワークフローでは、イメージデータが順次ストアにインポートされます。イメージのサイズ、ストア数、および中央サイトとエッジサイト間のネットワーク速度が、イメージのインポート操作が完了するのにかかる時間に影響を及ぼします。
イメージのインポート操作中に送付される通知に表示される 2 つのイメージ属性を見て、イメージインポートの進捗を把握することができます。
-
os_glance_importing_to_stores
属性: イメージデータをインポートしていないストアがリスト表示されます。インポートの開始時点では、要求されたすべてのストアがリストに表示されます。ストアがイメージデータを正常にインポートするたびに、Image サービスはストアをリストから削除します。 -
os_glance_failed_import
属性: イメージデータのインポートに失敗したストアがリスト表示されます。イメージインポート操作の開始時点では、このリストには何も表示されません。
以下の手順の環境には、central
ストアおよび 2 つのエッジストア (dcn0
および dcn1
) という 3 つの Ceph Storage クラスターがあります。
手順
イメージデータが特定のストアに追加されたことを確認します。
$ glance image-show IMAGE-ID
IMAGE-ID を元の既存イメージの ID に置き換えます。
出力には、以下のスニペット例のようなストアのコンマ区切りリストが表示されます。
| os_glance_failed_import | | os_glance_importing_to_stores | central,dcn0,dcn1 | status | importing
イメージインポート操作のステータスを監視します。このコマンドを
watch
コマンドの引数にすると、コマンドの出力は 2 秒ごとに更新されます。$ watch glance image-show IMAGE-ID
IMAGE-ID を元の既存イメージの ID に置き換えます。
イメージのインポート操作が進むと、操作のステータスが変わります。
| os_glance_failed_import | | os_glance_importing_to_stores | dcn0,dcn1 | status | importing
イメージのインポートに失敗したことを示す出力は、以下の例のようになります。
| os_glance_failed_import | dcn0 | os_glance_importing_to_stores | dcn1 | status | importing
操作が完了すると、ステータスが active に変わります。
| os_glance_failed_import | dcn0 | os_glance_importing_to_stores | | status | active