Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

Astra Trident を監視

共同作成者

Astra Trident は、 Astra Trident のパフォーマンスを監視するために使用できる一連の Prometheus 指標エンドポイントを提供します。

Astra Trident が提供する指標を使用すると、次のことが可能になります。

  • Astra Trident の健常性と設定を保持処理が成功した方法と、想定どおりにバックエンドと通信できるかどうかを調べることができます。

  • バックエンドの使用状況の情報を調べて、バックエンドでプロビジョニングされているボリュームの数や消費されているスペースなどを確認します。

  • 利用可能なバックエンドにプロビジョニングされたボリュームの量のマッピングを維持します。

  • パフォーマンスを追跡する。Astra Trident がバックエンドと通信して処理を実行するのにどれくらいの時間がかかるかを調べることができます。

メモ デフォルトでは、Tridentの指標はターゲットポートで公開されています 8001/metrics エンドポイント。これらの指標は、 Trident のインストール時にデフォルトで * 有効になります。
必要なもの

手順 1 : Prometheus ターゲットを定義する

Prometheus ターゲットを定義して指標を収集し、 Astra Trident が管理するバックエンド、作成するボリュームなどの情報を取得する必要があります。これ "ブログ" Prometheus と Grafana を Astra Trident とともに使用して指標を取得する方法について説明します。ブログでは、 Kubernetes クラスタでオペレータとして Prometheus を実行する方法と、 Astra Trident のメトリックを取得する ServiceMonitor を作成する方法について説明しています。

手順 2 : Prometheus ServiceMonitor を作成します

Tridentの指標を利用するには、を監視するPrometheus ServiceMonitorを作成する必要があります trident-csi サービスおよびリッスン metrics ポート:ServiceMonitor のサンプルは次のようになります。

apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: trident-sm
  namespace: monitoring
  labels:
      release: prom-operator
  spec:
    jobLabel: trident
    selector:
      matchLabels:
        app: controller.csi.trident.netapp.io
    namespaceSelector:
      matchNames:
      - trident
    endpoints:
    - port: metrics
      interval: 15s

このServiceMonitor定義は、から返されたメトリックを取得します trident-csi サービスとは、を特に探します metrics サービスのエンドポイント。その結果、PrometheusはAstra Tridentの
指標:

Astra Tridentから直接取得できる指標に加えて、kubeletは多くの指標を公開しています kubelet_volume_* 独自の指標エンドポイントを使用した指標。Kubelet では、接続されているボリュームに関する情報、およびポッドと、それが処理するその他の内部処理を確認できます。を参照してください "こちらをご覧ください"

ステップ 3 : PrompQL を使用して Trident 指標を照会する

PrompQL は、時系列データまたは表データを返す式を作成するのに適しています。

次に、 PrompQL クエリーのいくつかを示します。

Trident の健常性情報を取得

  • Astra Trident からの HTTP 2XX 応答の割合

(sum (trident_rest_ops_seconds_total_count{status_code=~"2.."} OR on() vector(0)) / sum (trident_rest_ops_seconds_total_count)) * 100
  • Astra Trident からのステータスコードによる REST 応答の割合

(sum (trident_rest_ops_seconds_total_count) by (status_code)  / scalar (sum (trident_rest_ops_seconds_total_count))) * 100
  • Astra Trident によって実行された処理の平均時間(ミリ秒)

sum by (operation) (trident_operation_duration_milliseconds_sum{success="true"}) / sum by (operation) (trident_operation_duration_milliseconds_count{success="true"})

Astra Trident の使用状況に関する情報を入手

  • 平均体積サイズ

trident_volume_allocated_bytes/trident_volume_count
  • 各バックエンドによってプロビジョニングされた合計ボリューム容量

sum (trident_volume_allocated_bytes) by (backend_uuid)

個々のボリュームの使用状況を取得する

メモ これは、 kubelet 指標も収集された場合にのみ有効になります。
  • 各ボリュームの使用済みスペースの割合

kubelet_volume_stats_used_bytes / kubelet_volume_stats_capacity_bytes * 100

Astra Trident AutoSupport の計測データ

デフォルトでは、 Astra Trident は Prometheus 指標と基本バックエンド情報を毎日定期的にネットアップに送信します。

  • Astra TridentからPrometheus指標や基本バックエンド情報がネットアップに送信されないようにするには、を渡します --silence-autosupport Astra Tridentのインストール中にフラグを付ける。

  • Tridentからネットアップサポートにコンテナログをオンデマンドで送信することもできます tridentctl send autosupport。Astra Trident をトリガーしてログをアップロードする必要があります。ログを送信する前に、ネットアップのに同意する必要があります
    "プライバシーポリシー"

  • 指定しないと、 Astra Trident は過去 24 時間からログを取得します。

  • ログの保持期間はで指定できます --since フラグ。例: tridentctl send autosupport --since=1h。この情報は、を介して収集および送信されます trident-autosupport コンテナ
    これはAstra Tridentと一緒にインストールされます。コンテナイメージは、で取得できます "Trident AutoSupport の略"

  • Trident AutoSupport は、個人情報( PII )や個人情報を収集または送信しません。それにはが付いています "EULA" これは Trident コンテナイメージ自体には該当しません。ネットアップのデータセキュリティと信頼に対する取り組みの詳細を確認できます "こちらをご覧ください"

Astra Trident から送信されるペイロードの例を次に示します。

{
  "items": [
    {
      "backendUUID": "ff3852e1-18a5-4df4-b2d3-f59f829627ed",
      "protocol": "file",
      "config": {
        "version": 1,
        "storageDriverName": "ontap-nas",
        "debug": false,
        "debugTraceFlags": null,
        "disableDelete": false,
        "serialNumbers": [
          "nwkvzfanek_SN"
        ],
        "limitVolumeSize": ""
      },
      "state": "online",
      "online": true
    }
  ]
}
  • AutoSupport メッセージは、ネットアップの AutoSupport エンドポイントに送信されます。コンテナイメージの格納にプライベートレジストリを使用している場合は、を使用できます --image-registry フラグ。

  • インストール YAML ファイルを生成してプロキシ URL を設定することもできます。これは、を使用して実行できます tridentctl install --generate-custom-yaml YAMLファイルを作成し、を追加します --proxy-url の引数 trident-autosupport にコンテナがあります trident-deployment.yaml

Astra Trident の指標を無効化

**メトリックがレポートされないようにするには、を使用してカスタムYAMLを生成する必要があります --generate-custom-yaml フラグを付けて編集し、を削除します --metrics に対する呼び出し元からのフラグ trident-main
コンテナ: