2.7. マルチテナントクラスター内の Operators
Operator Lifecycle Manager (OLM) のデフォルトの動作は、Operator のインストール時に簡素化することを目的としています。ただし、この動作は、特にマルチテナントクラスターでは柔軟性に欠ける場合があります。OpenShift Container Platform クラスター上の複数のテナントが Operator を使用するには、OLM のデフォルトの動作では、管理者が Operator を All namespaces モードでインストールする必要がありますが、これは最小特権の原則に違反すると考えられます。
以下のシナリオを考慮して、環境と要件に最適な Operator インストールワークフローを決定してください。
2.7.1. デフォルトの Operator インストールモードと動作 リンクのコピーリンクがクリップボードにコピーされました!
管理者として Web コンソールを使用して Operators をインストールする場合、通常、Operators の機能に応じて、インストールモードに 2 つの選択肢があります。
- 単一の namespace
- 選択した単一の namespace に Operator をインストールし、Operator が要求するすべての権限をその namespace で使用できるようにします。
- すべての namespace
-
デフォルトの
openshift-operatorsnamespace で Operator をインストールし、クラスターのすべての namespace を監視し、Operator をこれらの namespace に対して利用可能にします。Operator が要求するすべてのアクセス許可をすべての namespace で使用できるようにします。場合によっては、Operator の作成者はメタデータを定義して、その Operator が提案する namespace の 2 番目のオプションをユーザーに提供できます。
この選択は、影響を受ける namespace のユーザーが、namespace でのロールに応じて、所有するカスタムリソース (CR) を活用できる Operators API にアクセスできることも意味します。
-
namespace-adminおよびnamespace-editロールは、Operator API の読み取り/書き込みが可能です。つまり、Operator API を使用できます。 -
namespace-viewロールは、その Operator の CR オブジェクトを読み取ることができます。
Single namespace モードの場合、Operator 自体が選択した namespace にインストールされるため、その Pod とサービスアカウントもそこに配置されます。All namespaces モードの場合、Operator の権限はすべて自動的にクラスターロールに昇格されます。つまり、Operator はすべての namespace でこれらの権限を持ちます。