Astra Trident を監視
Astra Tridentは、Astra Tridentのパフォーマンス監視に使用できるPrometheus指標エンドポイントのセットを提供します。
概要
Astra Trident が提供する指標を使用すると、次のことが可能になります。
-
Astra Trident の健常性と設定を保持処理が成功した方法と、想定どおりにバックエンドと通信できるかどうかを調べることができます。
-
バックエンドの使用状況の情報を調べて、バックエンドでプロビジョニングされているボリュームの数や消費されているスペースなどを確認します。
-
利用可能なバックエンドにプロビジョニングされたボリュームの量のマッピングを維持します。
-
パフォーマンスを追跡する。Astra Trident がバックエンドと通信して処理を実行するのにどれくらいの時間がかかるかを調べることができます。
デフォルトでは、Tridentの指標はエンドポイントの `/metrics`ターゲットポートで公開され `8001`ます。これらの指標は、 Trident のインストール時にデフォルトで * 有効になります。 |
-
Astra Trident がインストールされた Kubernetes クラスタ
-
Prometheus インスタンス。にすることも、としてPrometheusを実行することもでき "ネイティブアプリケーション"ます "コンテナ化された Prometheus 環境"。
手順 1 : Prometheus ターゲットを定義する
Prometheus ターゲットを定義して指標を収集し、 Astra Trident が管理するバックエンド、作成するボリュームなどの情報を取得する必要があります。ここで "ブログ"は、Astra TridentでPrometheusとGrafanaを使用して指標を取得する方法について説明します。このブログでは、KubernetesクラスタのオペレータとしてPrometheusを実行する方法と、Astra Tridentの指標を取得するためのServiceMonitorの作成について説明しています。
手順 2 : Prometheus ServiceMonitor を作成します
Trident指標を使用するには、サービスを監視してポートでリスン metrics`するPrometheusサービスモニタを作成する必要があります `trident-csi
。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からNetAppへのPrometheus指標と基本的なバックエンド情報の送信を停止するには、Astra Tridentのインストール時にフラグを渡します。
--silence-autosupport
-
Astra Tridentでは、経由でコンテナログをNetAppサポートにオンデマンドで送信することもできます
tridentctl send autosupport
。Astra Trident をトリガーしてログをアップロードする必要があります。ログを送信する前に、NetAppを承認する必要がありますhttps://www.netapp.com/company/legal/privacy-policy/["プライバシーポリシー"^]。 -
指定しないと、 Astra Trident は過去 24 時間からログを取得します。
-
フラグを使用してログの保持期間を指定できます
--since
。例:tridentctl send autosupport --since=1h
。収集された情報は、Astra Tridentと一緒にインストールされたコンテナを介して送信され `trident-autosupport`ます。コンテナイメージはから入手できます "Trident AutoSupport の略"。 -
Trident AutoSupport は、個人情報( PII )や個人情報を収集または送信しません。Tridentコンテナイメージ自体には適用されないが付属して "EULA" います。データのセキュリティと信頼に対するネットアップの取り組みについて詳しくは、こちらをご覧 "ここをクリック"ください。
Astra Trident から送信されるペイロードの例を次に示します。
--- items: - backendUUID: ff3852e1-18a5-4df4-b2d3-f59f829627ed protocol: file config: version: 1 storageDriverName: ontap-nas debug: false debugTraceFlags: disableDelete: false serialNumbers: - nwkvzfanek_SN limitVolumeSize: '' state: online online: true
-
AutoSupport メッセージは、ネットアップの AutoSupport エンドポイントに送信されます。プライベートレジストリを使用してコンテナイメージを格納している場合は、フラグを使用できます
--image-registry
。 -
インストール YAML ファイルを生成してプロキシ URL を設定することもできます。これを行うには、を使用し `tridentctl install --generate-custom-yaml`てYAMLファイルを作成し、にコンテナの `trident-deployment.yaml`引数を `trident-autosupport`追加し `--proxy-url`ます。
Astra Trident の指標を無効化
無効メトリクスが報告されないようにするには、(フラグを使用して)カスタムYAMLを生成し、それらを編集して、 --metrics`コンテナに対してフラグが呼び出されないように `trident-main`する必要があります `--generate-custom-yaml
。