2.5. Argo CD カスタムリソースワークロードのモニタリング


Red Hat OpenShift GitOps を使用すると、特定の Argo CD インスタンスの Argo CD カスタムリソースワークロードの可用性をモニタリングできます。Argo CD カスタムリソースワークロードをモニタリングすると、Argo CD インスタンスのアラートを有効にして、その状態に関する最新情報を入手できます。対応する Argo CD インスタンスのアプリケーションコントローラー、リポジトリーサーバー、またはサーバーなどのコンポーネントワークロード Pod が特定の理由で起動できず、準備ができているレプリカの数と必要なレプリカの数の間にずれがある場合、一定期間、Operator がアラートをトリガーします。

Argo CD カスタムリソースのワークロードをモニタリングするための設定を有効または無効にすることができます。

2.5.1. 前提条件

  • cluster-admin ロールを持つユーザーとしてクラスターにアクセスできる。
  • Red Hat OpenShift GitOps がクラスターにインストールされている。
  • モニタリングスタックは、openshift-monitoring プロジェクトのクラスターで設定されます。さらに、Argo CD インスタンスが、Prometheus を介してモニタリングできる namespace にある。
  • kube-state-metrics サービスがクラスターで実行されている。
  • オプション: ユーザー定義プロジェクトにすでに存在する Argo CD インスタンスのモニタリングを有効にする場合は、クラスター内の ユーザー定義プロジェクトに対してモニタリングが有効 になっている。

    注記

    デフォルトの openshift-monitoring スタックによってモニタリングされていない namespace (たとえば、openshift-* で始まらない namespace) で Argo CD インスタンスのモニタリングを有効にする場合は、クラスターでユーザーワークロードのモニタリングを有効にする必要があります。このアクションにより、モニタリングスタックが作成された PrometheusRule を取得できるようになります。

2.5.2. Argo CD カスタムリソースワークロードのモニタリングを有効にする

デフォルトでは、Argo CD カスタムリソースワークロードのモニタリング設定は、false に設定されています。

Red Hat OpenShift GitOps を使用すると、特定の Argo CD インスタンスのワークロードモニタリングを有効にすることができます。その結果、Operator は、特定の Argo CD インスタンスによって管理されるすべてのワークロードのアラートルールを含む PrometheusRule オブジェクトを作成します。これらのアラートルールは、対応するコンポーネントのレプリカ数が一定時間、望ましい状態からずれると、アラートの起動をトリガーします。Operator は、ユーザーが PrometheusRule オブジェクトに加えた変更を上書きしません。

手順

  1. 特定の Argo CD インスタンスで .spec.monitoring.enabled フィールドの値を true に設定します。

    Argo CD カスタムリソースの例

    apiVersion: argoproj.io/v1beta1
    kind: ArgoCD
    metadata:
      name: example-argocd
      labels:
        example: repo
    spec:
     # ...
      monitoring:
        enabled: true
     # ...

  2. Operator によって作成された PrometheusRule にアラートルールが含まれているかどうかを確認します。

    アラートルールの例

    apiVersion: monitoring.coreos.com/v1
    kind: PrometheusRule
    metadata:
      name: argocd-component-status-alert
      namespace: openshift-gitops
    spec:
      groups:
        - name: ArgoCDComponentStatus
          rules:
           # ...
            - alert: ApplicationSetControllerNotReady 1
              annotations:
                message: >-
                  applicationSet controller deployment for Argo CD instance in
                  namespace "default" is not running
              expr: >-
                kube_statefulset_status_replicas{statefulset="openshift-gitops-application-controller statefulset",
                namespace="openshift-gitops"} !=
                kube_statefulset_status_replicas_ready{statefulset="openshift-gitops-application-controller statefulset",
                namespace="openshift-gitops"}
              for: 1m
              labels:
                severity: critical

    1
    Argo CD インスタンスによって作成されたワークロードが期待どおりに実行されているかどうかをチェックする PrometheusRule のアラートルール。

2.5.3. Argo CD カスタムリソースワークロードのモニタリングの無効化

特定の Argo CD インスタンスのワークロードモニタリングを無効にできます。ワークロードのモニタリングを無効にすると、作成された PrometheusRule が削除されます。

手順

  • 特定の Argo CD インスタンスで .spec.monitoring.enabled フィールドの値を false に設定します。

    Argo CD カスタムリソースの例

    apiVersion: argoproj.io/v1beta1
    kind: ArgoCD
    metadata:
      name: example-argocd
      labels:
        example: repo
    spec:
     # ...
      monitoring:
        enabled: false
     # ...

2.5.4. 関連情報

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.