TiFlashクラスタを監視する
このドキュメントでは、 TiFlashの監視項目について説明します。
TiUPを使用してTiDBクラスターをデプロイする場合、監視システム(PrometheusとGrafana)も同時にデプロイされます。詳細については、 監視フレームワークの概要を参照してください。
Grafanaダッシュボードは、Overview、PD、TiDB、TiKV、Node_exporterを含む一連のサブダッシュボードに分かれています。診断に役立つ多くのメトリクスが用意されています。
TiFlash には、 TiFlash-Summary 、 TiFlash-Proxy-Summary 、 TiFlash-Proxy-Detailsの3つのダッシュボードパネルがあります。これらのパネルに表示されるメトリックは、 TiFlashの現在の状態を示します。 TiFlash-Proxy-SummaryパネルとTiFlash-Proxy-Detailsパネルは、主にRaftレイヤーの情報を表示します。メトリックの詳細はTiKVの主要な監視指標を参照してください。
次のセクションでは、TiFlash-Summaryのデフォルトの監視情報を紹介します。
サーバ
- ストア サイズ: 各TiFlashインスタンスで使用されるストレージサイズ。
- 使用可能なサイズ: 各TiFlashインスタンスで使用可能なストレージサイズ。
- 容量サイズ: 各TiFlashインスタンスのストレージ容量。
- 稼働時間: 前回の再起動以降のTiFlashの実行時間。
- メモリ: TiFlashインスタンスごとのメモリ使用量。
- CPU 使用率: TiFlashインスタンスごとの CPU 使用率。
- FSync OPS: TiFlashインスタンスあたりの 1 秒あたりの fsync 操作の数。
- ファイルオープン OPS: TiFlashインスタンスあたりの
open秒あたりの操作数。 - 開かれたファイル数: 現在各TiFlashインスタンスによって開かれているファイル記述子の数。
コプロセッサー
- 要求 QPS: すべてのTiFlashインスタンスによって受信されたコプロセッサ要求の数。
batchはバッチ要求の数です。batch_copはバッチ要求内のコプロセッサ要求の数です。copはコプロセッサ インターフェイスを介して直接送信されたコプロセッサ要求の数です。cop_dagはすべてのコプロセッサ要求内の DAG 要求の数です。super_batchはスーパー バッチ機能を有効にするための要求の数です。 - Executor QPS: すべてのTiFlashインスタンスが受信したリクエスト内の各タイプの DAG Executor の数。
table_scanはテーブル スキャン Executor です。selectionは選択 Executor です。aggregationは集約 Executor です。top_nはTopNExecutor です。limitは制限 Executor です。 - リクエスト期間: コプロセッサリクエストを処理するすべてのTiFlashインスタンスの合計期間。合計期間は、コプロセッサリクエストを受信してからリクエストへの応答が完了するまでの期間です。
- エラー QPS: コプロセッサ要求を処理するすべてのTiFlashインスタンスのエラー数。
meet_lockは読み取りデータがロックされていることを意味します。region_not_foundはリージョンが存在しないことを意味します。epoch_not_matchは読み取りリージョンエポックがローカル エポックと一致していないことを意味します。kv_client_errorはTiKV との通信でエラーが返されたことを意味します。internal_errorはTiFlashの内部システム エラーです。otherはその他のタイプのエラーです。 - リクエスト処理期間:すべてのTiFlashインスタンスがコプロセッサリクエストを処理する期間。処理時間は、コプロセッサリクエストの実行開始から完了までです。
- 応答バイト/秒: すべてのTiFlashインスタンスからの応答の合計バイト数。
- Cop タスクのメモリ使用量: コプロセッサ要求を処理するすべてのTiFlashインスタンスの合計メモリ使用量。
- 処理要求数: コプロセッサ要求を処理しているすべてのTiFlashインスタンスの総数。要求の分類は、要求QPSと同じです。
- RPC スレッド: 各TiFlashインスタンスで使用される RPC スレッドのリアルタイム数。
- RPC の最大スレッド数: 各TiFlashインスタンスで最近使用された RPC スレッドの最大数。
- スレッド: 各TiFlashインスタンスで使用されるスレッドのリアルタイム数。
- 最大スレッド数: 各TiFlashインスタンスで最近使用されたスレッドの最大数。
タスクスケジューラ
- 最小TSO: 各TiFlashインスタンスで実行されているすべてのクエリの中で最小のTSOです。この値により、最小TSOのクエリの実行スケジュールが確保されます。実行中のクエリがない場合、この値は符号なし64ビット整数の最大値となります。
- 推定スレッド使用量と制限: 各TiFlashインスタンスで実行されるすべてのクエリによって使用されるスレッドの推定量と、その量に対するソフト制限とハード制限。
- アクティブおよび待機中のクエリ数: 各TiFlashインスタンスで実行中のクエリの数と待機中のクエリの数。
- アクティブおよび待機中のタスク数: 各TiFlashインスタンスで実行中のタスクと待機中のタスクの数。
- ハード制限超過回数: 各TiFlashインスタンスで実行されているクエリによって使用されるスレッドの推定数がハード制限を超えた回数。
- タスク待機期間: 各TiFlashインスタンスでのタスクの初期化からタスクのスケジュールまでの期間。
DDL
- スキーマ バージョン: 各TiFlashインスタンスに現在キャッシュされているスキーマのバージョン。
- スキーマ適用OPM:すべてのTiFlashインスタンスによって1分間に
apply操作で同期されたTiDBschema diffの数。この項目には、diff apply、full apply、failed applyの3種類のapplyのカウントが含まれます。diff applyは単一の適用の通常のプロセスです。diff applyが失敗した場合、failed applyが1増加し、 TiFlashはfull applyにロールバックし、最新のスキーマ情報を取得してTiFlashのスキーマバージョンを更新します。 - スキーマ内部 DDL OPM: すべてのTiFlashインスタンスで 1 分あたりに実行された特定の DDL 操作の数。
- スキーマ適用期間: すべてのTiFlashインスタンスでの単一の
apply schema操作に使用される時間。
ストレージ
- 書き込みコマンド OPS: すべてのTiFlashインスタンスのストレージレイヤーで 1 秒あたりに受信される書き込み要求の数。
- 書き込み増幅: 各TiFlashインスタンスの書き込み増幅 (実際のディスク書き込みバイト数を論理データの書き込みバイト数で割った値)。
totalはこの開始以降の書き込み増幅で、5minは過去 5 分間の書き込み増幅です。 - 読み取りタスク OPS: TiFlashインスタンスごとのストレージレイヤーでの 1 秒あたりの読み取りタスクの数。
- 粗セット フィルタ レート: ストレージストレージの粗セットレイヤーによってフィルタされた、過去 1 分間に各TiFlashインスタンスによって読み取られたパケット数の割合。
- 内部タスク OPS: すべてのTiFlashインスタンスが 1 秒あたりに内部データ ソート タスクを実行する回数。
- 内部タスクの所要時間: すべてのTiFlashインスタンスが内部データ ソート タスクに費やした時間。
- ページ GC タスク OPM: すべてのTiFlashインスタンスが 1 分間に Delta データ ソート タスクを実行する回数。
- ページ GC タスクの所要時間: Delta データ ソート タスクを実行するためにすべてのTiFlashインスタンスで消費される時間の分布。
- ディスク書き込み OPS: すべてのTiFlashインスタンスによる 1 秒あたりのディスク書き込み数。
- ディスク読み取り OPS: すべてのTiFlashインスタンスによる 1 秒あたりのディスク読み取り数。
- 書き込みフロー: すべてのTiFlashインスタンスによるディスク書き込みのトラフィック。
- 読み取りフロー: すべてのTiFlashインスタンスによるディスク読み取りのトラフィック。
ストレージ書き込み停止
- 書き込みとデルタ管理スループット: すべてのインスタンスの書き込みとデータ圧縮のスループット。
throughput_writeRaftを介したデータ同期のスループットを意味します。throughput_delta-managementデータ圧縮のスループットを意味します。total_write、前回の開始以降に書き込まれた合計バイト数を意味します。total_delta-management、前回の開始以降に圧縮されたデータの合計バイト数を意味します。
- 書き込み停止期間: インスタンスごとの書き込みおよびリージョンデータの削除 (範囲の削除) の停止期間。
- インスタンスごとの書き込みスループット:インスタンスごとの書き込みスループット。RaftRaftコマンドとRaftスナップショットを適用した場合のスループットも含まれます。
- インスタンス別の書き込みコマンド OPS: インスタンスによって受信されたさまざまな種類のコマンドの合計数。
write block、データ ログがRaftを通じて同期されることを意味します。delete_range、一部のリージョンがこのインスタンスから削除されるか、このインスタンスに移動されることを意味します。ingest、いくつかのリージョンスナップショットがこのインスタンスに適用されていることを意味します。
Raft
- 読み取りインデックス OPS: 各TiFlashインスタンスが
read_index回のリクエストをトリガーする回数。これはトリガーされたリージョンの数に等しくなります。 - インデックス読み取り時間: すべてのTiFlashインスタンスの
read_indexが使用する時間。ほとんどの時間は、リージョンリーダーとのやり取りと再試行に使用されます。 - インデックス待機期間: すべてのTiFlashインスタンスに対して
wait_indexが使用する時間。つまり、read_index要求を受信した後、ローカル インデックス >= read_index になるまで待機する時間です。