動的グループの管理

ここでは、動的グループの管理方法と、動的グループのメンバーを決定するルールの定義方法を説明します。

動的グループについて

動的グループを使用すると、(ユーザー・グループと同様に) Oracle Cloud Infrastructureコンピュート・インスタンスを「プリンシパル」のアクターとしてグループ化できます。ポリシーを作成して、インスタンスがOracle Cloud Infrastructureサービスに対してAPIコールを実行できるようにします。動的グループを作成する場合、メンバーをグループに明示的に追加するのではなく、グループ・メンバーを定義する一致ルールのセットを定義します。たとえば、ルールで、特定のコンパートメントのすべてのインスタンスが動的グループのメンバーであることを指定できます。メンバーは、インスタンスが起動され、そのコンパートメントで終了すると、動的に変更できます。

リソースのタグ付け

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

動的グループの操作

動的グループを作成するときは、動的グループに一意で不変の名前を指定する必要があります。名前は、テナンシ内のすべてのグループで一意である必要があります。また、動的グループには説明を指定する必要があります(ただし、空の文字列にすることもできます)。これはグループの一意でない変更可能な説明です。また、Oracleでは、グループにOracle Cloud ID (OCID)と呼ばれる一意のIDを割り当てます。詳細は、リソース識別子を参照してください。

ノート

動的グループを削除した後、同じ名前で新しい動的グループを作成すると、OCIDが異なるため、異なるグループとみなされます。

動的グループは、動的グループ権限をテナンシまたはコンパートメントのいずれかに付与する少なくとも1つのポリシーを記述するまで権限がありません。ポリシーを記述するときに、一意の名前または動的グループのOCIDを使用して動的グループを指定できます。前述のノートごとに、ポリシーに動的グループ名を指定しても、IAMの内部ではOCIDを使用して動的グループが決定されます。ポリシーの書込みの詳細は、ポリシーの管理を参照してください。

動的グループを削除できますが、グループが空の場合のみ削除できます。

動的グループの更新

動的グループのメンバーを定義する一致ルールを更新できます。たとえば、特定のインスタンスを除外するためにコンパートメント内のすべてのインスタンスを含む一致ルールを変更する場合があります。あるいは、新しいタグ値を含むようにルールを更新する場合があります。

重要

一致ルールを変更する場合は、更新されたポリシーが有効になるのを約1時間に制限する必要があります。たとえば、インスタンスのタグを更新して、そのインスタンスを動的グループに含めるか除外する場合、そのポリシーがインスタンスを含めるか除外するかを待機する必要があります。

動的グループの制限

単一のコンピュート・インスタンスは、最大5つの動的グループに属することができます。

テナンシには、最大50個の動的グループを含めることができます。

コンソールの使用

動的グループを定義するための一致ルールの記述

一致ルールは、動的グループに属するリソースを定義します。コンソールで、指定されたテキスト・ボックスにルールを手動で入力するか、ルール・ビルダーを使用できます。ルール・ビルダーによって、ダイアログ内で選択とエントリを行い、エントリに基づいてルールを記述できます。

動的グループのメンバーは、次のものに基づいて定義できます。

  • コンパートメントID - コンパートメントOCIDに基づいて、そのコンパートメントにあるインスタンスを含める(または除外する)
  • インスタンスID - インスタンスOCIDに基づいてインスタンスを含める(または除外する)
  • タグ・ネームスペースおよびタグ・キー - 特定のタグ・ネームスペースおよびタグ・キーでタグ付けされたインスタンスを含める(または除外する)。すべてのタグ値が含まれています。たとえば、タグ・ネームスペースdepartmentおよびタグ・キーoperationsでタグ付けされたすべてのインスタンスを含めます。
  • タグ・ネームスペース、タグ・キーおよびタグ値 - タグ・ネームスペースおよびタグ・キーの特定の値でタグ付けされたインスタンスを含める(または除外する)。たとえば、タグ・ネームスペースdepartment、タグ・キーoperationsおよび値'45'でタグ付けされたすべてのインスタンスが含まれます。
  • resource.compartment.id - リソースが存在するコンパートメントのOCID
  • resource.id - リソースのOCID
  • resource.type - リソースのタイプ

一致ルールの構文は次のとおりです。

単一条件の場合:

variable =|!= 'value'

複数条件の場合:

any|all {<condition>,<condition>,...}

サポートされている変数は、次のとおりです。

  • instance.compartment.id -インスタンスが存在するコンパートメントのOCID
  • instance.id -インスタンスのOCID
  • tag.<tagnamespace>.<tagkey>.value -タグ・ネームスペースとタグ・キー。たとえば、tag.department.operations.valueです。
  • tag.<tagnamespace>.<tagkey>.value='<tagvalue>' -タグ・ネームスペース、タグ・キーおよびタグ値。例: tag.department.operations.value='45'

いくつかの例を示します。

ルール・ビルダーの使用

ルール・ビルダーは、一致ルールの記述に役立つ、コンソールから使用できるツールです。ルール・ビルダーには、入力してルールを記述するメニューとテキスト・ボックスが用意されています。ルール・ビルダーにはいくつかの制限があるため、すべてのケースに使用できません。

ルール・ビルダーの制限事項

ルール・ビルダーは次をサポートしていません:

  • 除外ルール - ルール・ビルダーにより、コンパートメントIDとインスタンスIDのみを選択できます。
  • タグに基づくルール - ルール・ビルダーでは、ルールに含めるタグを選択できません。タグ値に基づいてルールを追加するには、前述の構文を使用して、「ルール」テキスト・ボックスにルールを入力する必要があります。

ルール・ビルダーの起動

「動的グループの作成」を選択すると、「動的グループの作成」ダイアログにRule Builderが表示されます。

ルール・ビルダーを使用して一致ルールを作成するには

  1. 「一致ルール」セクションで、「Rule Builder」を選択します。
  2. 「一致するインスタンスを含める」メニューから、「次のすべて」または「次のいずれか」を選択します。

    「次のすべて」では、ルールのすべてのステートメントに一致するインスタンスのみが含まれます。

    「次のいずれか」では、ルールのいずれかのステートメントに一致するインスタンスが含まれます。

    ノート

    次のインスタンス変数およびコンパートメント変数を選択できます:
    • instance.compartment.idおよびinstance.idは、インスタンスの一致時に適用されます
    • resource.compartment.idresource.idおよびresource.typeは、リソースの一致時に適用されます
    • tag.*変数は、インスタンスとリソースの両方に適用されます
  3. 「次と一致するインスタンス」メニューからリソース・タイプを選択し、「値」フィールドにリソースのOCIDを入力します:

    「コンパートメントOCID」では、指定したコンパートメントのインスタンスが含まれます。

    「インスタンスOCID」では、指定したOCIDを持つインスタンスが含まれます。

  4. +Additional行を選択して、このルールにステートメントを追加します。

    1つのルールに複数のステートメントを追加する場合、「次のいずれか」では、ステートメントのいずれかに一致するインスタンスが含まれることに注意してください。「次のすべて」を選択する場合、インスタンスは、グループに含まれるにはステートメントの指定のすべてに一致する必要があります。

ルール・ビルダーの使用例