4.6. Operator 条件の管理


dedicated-admin ロールを持つ管理者は、Operator Lifecycle Manager (OLM) を使用して Operator 条件を管理できます。

4.6.1. Operator 条件のオーバーライド

dedicated-admin ロールを持つ管理者は、Operator によって報告されるサポート対象の Operator 条件を無視することもできます。Spec.Overrides 配列に Operator 条件が存在する場合、この条件によって Spec.Conditions 配列の条件がオーバーライドされます。これを使用することで、dedicated-admin 管理者は、Operator が Operator Lifecycle Manager (OLM) に状態を誤って報告している状況に対処できます。

注記

デフォルトでは、Spec.Overrides 配列は、dedicated-admin ロールを持つ管理者が追加するまで、OperatorCondition オブジェクトに存在しません。Spec.Conditions 配列も、ユーザーが追加するか、カスタム Operator ロジックの結果として追加されるまで存在しません。

たとえば、アップグレードできないことを常に通信する Operator の既知のバージョンを考えてみましょう。この場合、Operator がアップグレードできないと通信していますが、Operator をアップグレードすることを推奨します。これは、条件の type および statusOperatorCondition オブジェクトの Spec.Overrides 配列に追加して Operator 条件をオーバーライドすることによって実行できます。

前提条件

  • dedicated-admin ロールを持つユーザーとしてクラスターにアクセスできる。
  • OperatorCondition オブジェクトを持つ Operator が OLM を使用してインストールされている。

手順

  1. Operator の OperatorCondition オブジェクトを編集します。

    $ oc edit operatorcondition <name>
  2. Spec.Overrides 配列をオブジェクトに追加します。

    Operator 条件のオーバーライドの例

    apiVersion: operators.coreos.com/v2
    kind: OperatorCondition
    metadata:
      name: my-operator
      namespace: operators
    spec:
      overrides:
      - type: Upgradeable 1
        status: "True"
        reason: "upgradeIsSafe"
        message: "This is a known issue with the Operator where it always reports that it cannot be upgraded."
      conditions:
      - type: Upgradeable
        status: "False"
        reason: "migration"
        message: "The operator is performing a migration."
        lastTransitionTime: "2020-08-24T23:15:55Z"

    1
    このように編集すると、dedicated-admin ユーザーはアップグレードの準備状況を True に変更できます。

4.6.2. Operator 条件を使用するための Operator の更新

Operator Lifecycle Manager (OLM) は、調整する ClusterServiceVersion リソースごとに OperatorCondition リソースを自動的に作成します。CSV のすべてのサービスアカウントには、Operator が所有する OperatorCondition と対話するための RBAC が付与されます。

Operator の作成者は、Operator が OLM によってデプロイされた後に、独自の条件を設定できるように Operator を開発し、operator-lib ライブラリーを使用することができます。Operator 作成者として Operator 条件を設定する方法の詳細は、Operator 条件の有効化 ページを参照してください。

4.6.2.1. デフォルトの設定

後方互換性を維持するために、OLM は OperatorCondition リソースがない状態を条件からのオプトアウトとして扱います。そのため、Operator 条件の使用にオプトインする Operator は、Pod の ready プローブが true に設定される前に、デフォルトの条件を設定する必要があります。これにより、Operator には、条件を正しい状態に更新するための猶予期間が与えられます。

4.6.3. 関連情報

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.