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