コンパートメント【compartment】
コンパートメントとは?

OCIでは、すべてのリソースは必ずいずれかのコンパートメントに属する。テナンシー(契約単位)の直下にはルートコンパートメントが存在し、その配下に子コンパートメントをツリー状に作成できる。階層は最大6レベルまで対応しており、組織の部門構成やプロジェクト体制に合わせた構成が可能である。
リソースは作成時に所属するコンパートメントを指定する。後から別のコンパートメントへ移動できるリソースもあるが、種類によっては制約が存在する。このため、運用開始前に組織構造や権限管理の方針を考慮し、コンパートメントの構成を設計することが重要となる。
アクセス制御はIAMポリシーによって行われ、「どのグループが、どのコンパートメント内の、どのリソースに対して、何を行えるか」を定義する。例えば、開発部門の担当者には開発環境のコンパートメントへのアクセスを認め、本番環境のコンパートメントへのアクセスは制限するといった運用が可能である。
ポリシーは上位コンパートメントに設定することで下位にも継承される。なお、コンパートメントはあくまで論理的な管理境界であり、物理的な配置やネットワーク通信を直接制御するものではない。異なるコンパートメントに属するリソース同士であっても、ネットワーク設定が適切であれば通信できる。
コンパートメントによる区分はコスト管理や監査においても活用される。OCIの請求やコスト分析ツールはコンパートメント単位での集計に対応しており、部門やプロジェクトごとの費用を把握しやすい。タグと組み合わせることで、より細かい粒度での費用追跡も可能になる。他の主要なクラウドサービスにおける「リソースグループ」や「フォルダ」といった管理単位に近い概念である。