6.33. Operator Lifecycle Manager Operator


目的

Operator Lifecycle Manager (OLM) を使用することにより、ユーザーは Kubernetes ネイティブアプリケーション (Operator) および OpenShift Container Platform クラスター全体で実行される関連サービスにインストール、更新、およびそのライフサイクルの管理を実行できます。これは、Operator を効果的かつ自動化された拡張可能な方法で管理するために設計されたオープンソースツールキットの Operator Framework の一部です。

図6.1 Operator Lifecycle Manager ワークフロー

olm workflow

OLM は OpenShift Container Platform 4.13 でデフォルトで実行されます。これは、クラスター管理者がクラスターで実行されている Operator をインストールし、アップグレードし、アクセスをこれに付与するのに役立ちます。OpenShift Container Platform Web コンソールでは、クラスター管理者が Operator をインストールし、特定のプロジェクトアクセスを付与して、クラスターで利用可能な Operator のカタログを使用するための管理画面を利用できます。

開発者の場合は、セルフサービスを使用することで、専門的な知識がなくてもデータベースのインスタンスのプロビジョニングや設定、またモニタリング、ビッグデータサービスなどを実行できます。Operator にそれらに関するナレッジが織り込まれているためです。

CRD

Operator Lifecycle Manager (OLM) は、OLM Operator および Catalog Operator の 2 つの Operator で構成されています。

これらの Operator はそれぞれ OLM フレームワークのベースとなるカスタムリソース定義 (CRD) を管理します。

表6.1 OLM およびカタログ Operator で管理される CRD
リソース短縮名所有する Operator説明

ClusterServiceVersion (CSV)

csv

OLM

アプリケーションのメタデータ: 名前、バージョン、アイコン、必須リソース、インストールなど。

InstallPlan

ip

カタログ

CSV を自動的にインストールするか、アップグレードするために作成されるリソースの計算された一覧。

CatalogSource

catsrc

カタログ

CSV、CRD、およびアプリケーションを定義するパッケージのリポジトリー。

Subscription

sub

カタログ

パッケージのチャネルを追跡して CSV を最新の状態に保つために使用されます。

OperatorGroup

og

OLM

OperatorGroup オブジェクトと同じ namespace にデプロイされたすべての Operator を、namespace のリストまたはクラスター全体でカスタムリソース (CR) を監視できるように設定します。

これらの Operator のそれぞれは以下のリソースの作成も行います。

表6.2 OLM およびカタログ Operator によって作成されるリソース
リソース所有する Operator

Deployments

OLM

ServiceAccounts

(Cluster)Role

(Cluster)RoleBinding

CustomResourceDefinitions (CRDs)

カタログ

ClusterServiceVersions

OLM Operator

OLM Operator は、CSV で指定された必須リソースがクラスター内にあることが確認された後に CSV リソースで定義されるアプリケーションをデプロイします。

OLM Operator は必須リソースの作成には関与せず、ユーザーが CLI またはカタログ Operator を使用してこれらのリソースを手動で作成することを選択できます。このタスクの分離により、アプリケーションに OLM フレームワークをどの程度活用するかに関連してユーザーによる追加機能の購入を可能にします。

OLM Operator は以下のワークフローを使用します。

  1. namespace でクラスターサービスバージョン (CSV) の有無を確認し、要件を満たしていることを確認します。
  2. 要件が満たされている場合、CSV のインストールストラテジーを実行します。

    注記

    CSV は、インストールストラテジーの実行を可能にするために Operator グループのアクティブなメンバーである必要があります。

Catalog Operator

Catalog Operator はクラスターサービスバージョン (CSV) およびそれらが指定する必須リソースを解決し、インストールします。また、カタログソースでチャネル内のパッケージへの更新の有無を確認し、必要な場合はそれらを利用可能な最新バージョンに自動的にアップグレードします。

チャネル内のパッケージを追跡するために、必要なパッケージ、チャネル、および更新のプルに使用する CatalogSource オブジェクトを設定して Subscription オブジェクトを作成できます。更新が見つかると、ユーザーに代わって適切な InstallPlan オブジェクトの namespace への書き込みが行われます。

Catalog Operator は以下のワークフローを使用します。

  1. クラスターの各カタログソースに接続します。
  2. ユーザーによって作成された未解決のインストール計画の有無を確認し、これがあった場合は以下を実行します。

    1. 要求される名前に一致する CSV を検索し、これを解決済みリソースとして追加します。
    2. マネージドまたは必須の CRD のそれぞれについて、これを解決済みリソースとして追加します。
    3. 必須 CRD のそれぞれについて、これを管理する CSV を検索します。
  3. 解決済みのインストール計画の有無を確認し、それに関する検出されたすべてのリソースを作成します (ユーザーによって、または自動的に承認される場合)。
  4. カタログソースおよびサブスクリプションの有無を確認し、それらに基づいてインストール計画を作成します。

カタログレジストリー

カタログレジストリーは、クラスター内での作成用に CSV および CRD を保存し、パッケージおよびチャネルに関するメタデータを保存します。

パッケージマニフェスト は、パッケージアイデンティティーを CSV のセットに関連付けるカタログレジストリー内のエントリーです。パッケージ内で、チャネルは特定の CSV を参照します。CSV は置き換え対象の CSV を明示的に参照するため、パッケージマニフェストは Catalog Operator に対し、CSV をチャネル内の最新バージョンに更新するために必要なすべての情報を提供します (各中間バージョンをステップスルー)。

関連情報

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.