コンパートメントは、Oracle Cloud Infrastructureの差別化要因の1つです。個人的には、他のクラウドプロバイダーで同様のサービスを提供しているようには見えません。タグ付けやプロジェクトのような他の同様の概念がありますが、焦点が異なります。
コンパートメント 関連するリソースのコレクションであり、具体的には論理的 関連するリソース(VCN、ブロックボリューム、インスタンス、サブネットなど)のコレクション。このコレクションには、管理者から許可を与えられた特定のグループユーザーのみがアクセスできます。
ここでは、Oracle Cloud Infrastructureの作業を開始する前に役立つ、コンパートメントについて知っておくべき10のことを示します。
1.-Oracle Cloud Infrastructureにサインアップすると、Oracleはテナントを作成します。 、これはすべてのクラウドリソースを保持するルートコンパートメントです
ルートコンパートメントは、テナンシー自体にちなんで名付けられています(別のエントリのテナンシーについての詳細)。これが、テナンシー管理者(管理者グループの一部)がルートコンパートメント管理者でもある理由です。
注 管理者グループのメンバーの数をできるだけ少なくし、特定のコンパートメントを制御する管理者グループを作成することをお勧めします(実際には、これはルートコンパートメントのサブコンパートメントです)
注 :これはコンパートメントの分散を設計するためのオプションの1つにすぎませんが、クライアントに最適なアーキテクチャ次第です
現在、すべてのユーザーとグループはルートコンパートメント内に作成されており、これらのユーザーが他のコンパートメントのリソースにアクセスできるようにするポリシーを作成できます。
2.-OCIリソースは1つのコンパートメントにのみ属することができます
OCIリソースを2つのコンパートメントの一部にすることはできません。特定のコンパートメント内、またはルートコンパートメント内に作成する必要があります。
コンパートメントは論理コレクションであると述べたことを思い出してください。これは論理構造であるため、たとえば、同じVCNと同じサブネットに属する異なるコンパートメントに2つのインスタンスを持つことができます。
注 コンパートメントは、物理的なコンテナではなく、権限を定義する責任領域と考えると便利です。
3.-コンパートメントには、6レベルの深さでネストされた子コンパートメントまたはサブコンパートメントを含めることができます
このエントリの最初の公開日には、ネストされたコンパートメントは最大6つに制限されています。
たとえば、次のコンパートメントを持つことができます。
nosomoscavernicolas> prod> Compute_Services> app1> db_app1> no_sql_dbs1> free_users
コンパートメントツリー全体を親コンパートメント間で移動したり、リソースをコンパートメント間で移動したりできる場合でも、リソースの作成を開始する前にコンパートメント階層を設計することをお勧めします。
Yoは内部の更新された番号を確認できます:IDおよびアクセス管理に関するFAQ
4.-コンパートメントを削除できます
コンパートメントは削除できますが、次の要件を満たす必要があります:
- コンパートメントを削除するには、管理者アクセスまたは必要なポリシーが必要です。
- コンパートメントを削除するには、コンパートメントに添付されているポリシーを含め、その中にリソースがないようにする必要があります。
注 一部のリソースタイプは削除できないため、これらのリソースのコンパートメントも削除できません。この場合、コンパートメントの名前を変更して名前を再利用できます。
コンパートメントを削除すると、削除ジョブが開始されます。Oracleは、コンパートメントの名前をCompartmentA.qR5hP2BDなどに変更し、これらのコンパートメントのステータスは削除済みに設定されますが、削除されたコンパートメントは引き続き表示されます。 365日間のコンパートメントページ。
テナンシーエクスプローラーを使用して、コンパートメントのすべてのリソースが削除されているかどうかを確認できます
5.-テナントとコンパートメントはグローバルリソースです
つまり、コンパートメントはリージョンと可用性ドメインにまたがっており、異なるリージョンにあるリソースをグループ化できるため、コスト管理を実装するための優れた方法となります。
注 コンパートメントは、物理的な制限に制限されないリソースの論理的なグループであることに注意してください。
6.-コンパートメントベースでセキュリティポリシーを適用できます
コンパートメントを作成した後、ユーザーまたはグループが新しいコンパートメント内のリソースにアクセスできるように、少なくとも1つのポリシーを作成する必要があります。そうしないと、管理者のみがコンパートメントのリソースにアクセスできます。
注 コンパートメントの権限は継承できるため、たとえば、 db-operatorsというグループがある場合 コンパートメント-Aのすべてのリソースにアクセスできます 、次にコンパートメント-Bを作成します コンパートメント-Aの内部 、 db-operatorsのユーザー コンパートメントBのリソースにアクセスできます 特に指定しない限り、
たとえば、OS管理エージェントサービスが特定のコンパートメント上のインスタンスから情報を読み取れるようにする場合は、次のポリシーを作成する必要があります。
Allow dynamic-group OSManagementAgent to read instance-family in compartment PROD-A
コンパートメントへの管理者アクセスを提供するため
Allow group A-Admins to manage all-resources in compartment Project-A
別の例では、HR管理者がコンパートメントHR内のオブジェクトストレージ(OCIサービス)を管理できるようにアクセス許可を提供する必要があります
Allow group hr-admins to manage object-family in compartment PROD-A
注 個々のリソースタイプは、リソースを宣言するための最もきめ細かい方法です。これらは、vcn、インスタンスなどです。また、リソースタイプは、インスタンスファミリ、ボリュームファミリなど、ファミリにグループ化されます。
ポリシーの添付の詳細については、ポリシーの添付
をご覧ください。7.-コンパートメントに割り当てを設定できます
コンパートメントの割り当ては、サービス制限に似ています。
割り当ては、コンパートメント内に作成できるリソースの量を制限するように管理者によって設定されます。これにより、コストを管理し、不要なリソースの作成を回避できます。
このため、管理者はポリシーを設定できます。
割り当てには3つのタイプがあります:
- set-リソースの最大数を設定します
- unset-クォータをデフォルトのサービス制限にリセットします
- zero-コンパートメントのクラウドリソースへのアクセスを削除します。たとえば、コンパートメントにブロックボリュームが作成されないようにする場合は、そのサービスに対してこのゼロクォータを作成できます。
ポリシー内では、クォータステートメントが順番に評価され、同じリソースを対象とする前のステートメントよりも後のステートメントが優先されます。
注 リソースをあるコンパートメントから別のコンパートメントに移動するときは、宛先コンパートメントの割り当てを考慮する必要があります。そうしないと、割り当てを調整するまでリソースを作成できません。
その他のリソース:
コンパートメントの管理
コンパートメントクォータ
OCIの主要な概念と用語
OracleCloudインフラストラクチャコンパートメント