4.3. イメージのインポートにメタデータを注入してインスタンスの起動場所を制御する
クラウドユーザーは、Image サービス (glance) にイメージをアップロードし、そのイメージを使用してインスタンスを起動できます。クラウドユーザーは、特定のコンピュートノードセット上でこれらのイメージを起動する必要があります。イメージメタデータプロパティーを使用して、コンピュートノードへのインスタンスの割り当てを制御できます。
イメージプロパティー注入プラグインにより、メタデータ属性がインポート時にイメージに注入されます。プロパティーは、glance-image-import.conf ファイルの [image_import_opts] セクションと [inject_metadata_properties] セクションを編集することで指定できます。glance-image-import.conf ファイルは、Image サービスのソースコードツリーの etc/ サブディレクトリーにあります。使用している Red Hat OpenStack Platform (RHOSP) リリースに応じた適切なブランチを使用してください。
イメージプロパティー注入プラグインを有効にするには、[image_import_opts] セクションに以下の行を追加します。
[image_import_opts] image_import_plugins = [inject_image_metadata]
[image_import_opts]
image_import_plugins = [inject_image_metadata]
メタデータの注入を特定ユーザーが提供したイメージに制限するには、ignore_user_roles パラメーターを設定します。たとえば、以下の設定では、property1 に関する 1 つの値および property2 に関する 2 つの値が、任意の非管理者ユーザーによってダウンロードされたイメージに注入されます。
パラメーター ignore_user_roles は、プラグインが無視する Identity サービス (keystone) ロールのコンマ区切りリストです。つまり、イメージインポートの呼び出しを行うユーザーにこれらのロールが設定されている場合、プラグインはイメージに属性を注入しません。
パラメーター inject は、インポートされたイメージのイメージレコードに注入される属性と値のコンマ区切りリストです。それぞれの属性と値は、コロン (‘:') で区切る必要があります。