6.3. OpenShift Container Platform の Operator
Operator は OpenShift Container Platform の最も重要なコンポーネントです。Operator はコントロールプレーンでサービスをパッケージ化し、デプロイし、管理するための優先される方法です。Operator の使用は、ユーザーが実行するアプリケーションにも各種の利点があります。
Operator は kubectl
や oc
コマンドなどの Kubernetes API および CLI ツールと統合します。Operator はアプリケーションの監視、ヘルスチェックの実行、OTA (over-the-air) 更新の管理を実行し、アプリケーションが指定した状態にあることを確認するための手段となります。
また、Operator はより粒度の高いエクスペリエンスも提供します。各コンポーネントは、グローバル設定ファイルではなく、Operator が公開する API を変更して設定できます。
CRI-O と Kubelet はすべてのノード上で実行されるため、Operator を使用することにより、ほぼすべての他のクラスター機能をコントロールプレーンで管理できます。Operator を使用してコントロールプレーンに追加されるコンポーネントには、重要なネットワークおよび認証情報サービスが含まれます。
どちらも同様の Operator の概念と目標に従いますが、OpenShift Container Platform の Operator は、目的に応じて 2 つの異なるシステムによって管理されます。
- Cluster Version Operator (CVO) によって管理される Cluster Operator は、クラスター機能を実行するためにデフォルトでインストールされます。
- Operator Lifecycle Manager (OLM) によって管理されるオプションのアドオン Operator は、ユーザーがアプリケーションで実行できるようにアクセスできるようにすることができます。
6.3.1. クラスター Operator
OpenShift Container Platform では、すべてのクラスター機能が一連のデフォルトの クラスター Operator に分割されます。クラスター Operator は、クラスター全体でのアプリケーションロギング、Kubernetes コントロールプレーンの管理、またはマシンプロビジョニングシステムなどの、クラスター機能の特定の分野を管理します。
クラスター Operator は ClusterOperator
オブジェクトで表現されます。これは、クラスター管理者が OpenShift Container Platform Web コンソールの Administration
6.3.2. アドオン Operator
Operator Lifecycle Manager (OLM) と OperatorHub は、OpenShift Container Platform のデフォルトのコンポーネントであり、Kubernetes ネイティブアプリケーションを Operator として管理するのに役立ちます。これらは一緒になって、クラスターで使用可能なオプションのアドオン Operator を検出、インストール、および管理するためのシステムを提供します。
OpenShift Container Platform Web コンソールで OperatorHub を使用すると、クラスター管理者および許可されたユーザーは、Operator のカタログからインストールするオペレーターを選択できます。OperatorHub から Operator をインストールすると、ユーザーアプリケーションで実行できるように、グローバルまたは特定の namespace で使用できるようになります。
Red Hat Operator、認定 Operator、コミュニティー Operator を含むデフォルトのカタログソースが利用可能です。クラスター管理者は、独自のカスタムカタログソースを追加することもできます。このカタログソースには、カスタムの Operator セットを含めることができます。
開発者は Operator SDK を使用して、OLM 機能を利用するカスタム Operator の作成を支援することもできます。次に、それらの Operator をバンドルしてカスタムカタログソースに追加し、クラスターに追加してユーザーが利用できるようにすることができます。
OLM は、OpenShift Container Platform アーキテクチャーを構成するクラスター Operator を管理しません。
関連情報
- OpenShift Container Platform でのアドオン Operator の実行の詳細については、Operator Lifecycle Manager (OLM) および OperatorHub の Operators ガイドセクションを参照してください。
- Operator SDK の詳細については、Operators の開発 を参照してください。
6.3.3. Platform Operator (テクノロジープレビュー)
Platform Operator タイプはテクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品サポートのサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではない場合があります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
Operator Lifecycle Manager (OLM) は、プラットフォーム Operator と呼ばれる新しいタイプの Operator を導入します。Platform Operator は OLM ベースの Operator であり、OpenShift Container Platform クラスターの Day 0 操作中または操作後にインストールでき、クラスターのライフサイクルに参加します。クラスター管理者は、Platform Operator を使用して OpenShift Container Platform インストールをさらにカスタマイズし、要件とユースケースを満たすことができます。
クラスター管理者は、OpenShift Container Platform の既存のクラスター機能機能を使用して、クラスターのインストール前に、初期ペイロードに必須ではないと見なされる Cluster Version Operator ベース (CVO) コンポーネントのサブセットを無効にすることができます。Platform Operator は、追加のカスタマイズオプションを提供することで、このモデルを反復します。RukPak コンポーネントからのリソースに依存する Platform Operator メカニズムを通じて、OLM ベースの Operator をクラスターのインストール時にインストールできるようになり、Operator が正常にインストールに失敗した場合はクラスターのロールアウトをブロックできます。
OpenShift Container Platform 4.12 では、このテクノロジープレビューリリースは基本的な Platform Operator メカニズムに焦点を当て、今後のリリースで概念を拡張するための基盤を構築します。クラスター全体の PlatformOperator
API を使用して、TechPreviewNoUpgrade
機能セットが有効になっているクラスターでクラスターを作成する前または後に Operator を設定できます。