重要
このページは英語版のページを機械翻訳しています。原文はこちらからご覧ください。

TiFlashクラスターを監視する

本書では、TiFlashの監視項目について説明します。

TiUPを使用してTiDBクラスタをデプロイする場合、監視システム(Prometheus&Grafana)も同時にデプロイされます。詳細については、 モニタリングフレームワークの概要を参照してください。

Grafanaダッシュボードは、Overview、PD、TiDB、TiKV、Node_exporterなどを含む一連のサブダッシュボードに分割されています。診断に役立つ多くのメトリックがあります。

TiFlashには、TiFlash -SummaryTiFlash-Proxy-Summary 、およびTiFlash-Proxy-Detailsの3つのダッシュボードパネルがあります。これらのパネルのメトリックは、TiFlashの現在のステータスを示します。 TiFlash-Proxy-SummaryパネルとTiFlash-Proxy-Detailsパネルは、主にRaftレイヤーの情報を表示し、メトリックはTiKVの主要な監視指標で詳しく説明されています。

ノート:

TiFlashのモニターを改善するには、TiDBv4.0.5以降のバージョンを使用することをお勧めします。

次のセクションでは、 TiFlash-Summaryのデフォルトの監視情報を紹介します。

サーバ

  • ストアサイズ:各TiFlashインスタンスで使用されるストレージサイズ。
  • 使用可能なサイズ:各TiFlashインスタンスで使用可能なストレージサイズ。
  • 容量サイズ:各TiFlashインスタンスのストレージ容量。
  • 稼働時間:最後の再起動以降のTiFlashの実行時間。
  • メモリ:TiFlashインスタンスごとのメモリ使用量。
  • CPU使用率:TiFlashインスタンスごとのCPU使用率。
  • FSync OPS:1秒あたりのTiFlashインスタンスあたりのfsync操作の数。
  • ファイルオープンOPS:1秒あたりのTiFlashインスタンスあたりopen回の操作の数。
  • 開かれたファイル数:各TiFlashインスタンスによって現在開かれているファイル記述子の数。

ノート:

ストアサイズ、FSync OPS、ファイルオープンOPS、およびオープンファイル数は現在、TiFlashストレージレイヤーの監視情報のみを対象としており、TiFlash-Proxyでは対象外です。

コプロセッサー

  • 要求QPS:すべてのTiFlashインスタンスによって受信されたコプロセッサー要求の数。 batchはバッチリクエストの数です。 batch_copは、バッチ要求内のコプロセッサー要求の数です。 copは、コプロセッサー・インターフェースを介して直接送信されるコプロセッサー要求の数です。 cop_dagは、すべてのコプロセッサー要求におけるdag要求の数です。 super_batchは、スーパーバッチ機能を有効にするためのリクエストの数です。
  • エグゼキュータQPS:すべてのTiFlashインスタンスが受信したリクエスト内の各タイプのdagエグゼキュータの数。 table_scanはテーブルスキャンエグゼキュータです。 selectionは選択エグゼキュータです。 aggregationはアグリゲーションエグゼキュータです。 top_nTopNエグゼキュータです。 limitはリミットエグゼキュータです。
  • 要求期間:コプロセッサー要求を処理するすべてのTiFlashインスタンスの合計期間。合計期間は、コプロセッサー要求が受信されてから要求への応答が完了するまでです。
  • エラーQPS:コプロセッサー要求を処理するすべてのTiFlashインスタンスのエラーの数。 meet_lockは、読み取ったデータがロックされていることを意味します。 region_not_foundは、リージョンが存在しないことを意味します。 epoch_not_matchは、読み取られたリージョンエポックがローカルエポックと矛盾していることを意味します。 kv_client_errorは、TiKVとの通信がエラーを返すことを意味します。 internal_errorはTiFlashの内部システムエラーです。 otherは他のタイプのエラーです。
  • 要求処理期間:コプロセッサー要求を処理するすべてのTiFlashインスタンスの期間。処理時間は、コプロセッサー要求の実行開始から実行の完了までです。
  • 応答バイト/秒:すべてのTiFlashインスタンスからの応答の合計バイト。
  • コップタスクのメモリ使用量:コプロセッサー要求を処理するすべてのTiFlashインスタンスの合計メモリ使用量。
  • 要求数の処理:コプロセッサー要求を処理するすべてのTiFlashインスタンスの総数。リクエストの分類は、リクエストQPSの分類と同じです。
  • RPCのスレッド:各TiFlashインスタンスで使用されるRPCスレッドのリアルタイム数。
  • RPCの最大スレッド数:各TiFlashインスタンスで最近使用されたRPCスレッドの最大数。
  • スレッド:各TiFlashインスタンスで使用されるスレッドのリアルタイム数。
  • 最大スレッド数:各TiFlashインスタンスで最近使用されたスレッドの最大数。

タスクスケジューラ

  • 最小TSO:各TiFlashインスタンスで実行されているすべてのクエリの中で最小のTSO。この値により、TSOが最小のクエリの実行をスケジュールできます。クエリが実行されていない場合、この値は符号なし64ビット整数の最大値です。
  • 推定スレッド使用量と制限:各TiFlashインスタンスで実行されているすべてのクエリで使用されるスレッドの推定量、および量のソフト制限とハード制限。
  • アクティブクエリと待機クエリの数:各TiFlashインスタンスで実行中のクエリの量と待機中のクエリの数。
  • アクティブタスクと待機タスクの数:各TiFlashインスタンスで実行中のタスクの数と待機中のタスクの数。
  • Hard Limit Exceeded Count:各TiFlashインスタンスで実行されているクエリによって使用されるスレッドの推定量がハード制限を超えた回数。
  • タスク待機時間:各TiFlashインスタンスでのタスクの初期化からタスクのスケジューリングまでの時間。

DDL

  • スキーマバージョン:各TiFlashインスタンスに現在キャッシュされているスキーマのバージョン。
  • スキーマ適用OPM: schema diff分あたりのすべてのTiFlashインスタンスによってapplyの操作で同期されたTiDB1の数。このアイテムには、 applyfailed applyつのタイプのカウントが含まれています: diff apply 、およびfull applydiff applyは、1回の適用の通常のプロセスです。 diff applyが失敗した場合、 failed apply1増加し、TiFlashはfull applyにロールバックし、最新のスキーマ情報をプルして、TiFlashのスキーマバージョンを更新します。
  • スキーマ内部DDLOPM:すべての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分あたりのデルタデータ並べ替えタスクを実行する回数。
  • ページGCタスク期間:デルタデータソートタスクを実行するためにすべてのTiFlashインスタンスによって消費される時間の分布。
  • ディスク書き込みOPS:すべてのTiFlashインスタンスによる1秒あたりのディスク書き込み数。
  • ディスク読み取りOPS:すべてのTiFlashインスタンスによる1秒あたりのディスク読み取り数。
  • 書き込みフロー:すべてのTiFlashインスタンスによるディスク書き込みのトラフィック。
  • 読み取りフロー:すべてのTiFlashインスタンスによるディスク読み取りのトラフィック。

ノート:

これらのメトリックは、TiFlashストレージレイヤーの監視情報のみを対象としており、TiFlash-Proxyの監視情報は対象としていません。

ストレージ書き込みストール

  • 書き込みおよびデルタ管理スループット:すべてのインスタンスの書き込みおよびデータ圧縮のスループット。
    • throughput_writeは、 Raftを介したデータ同期のスループットを意味します。
    • throughput_delta-managementは、データ圧縮のスループットを意味します。
    • total_writeは、最後の開始以降に書き込まれた合計バイト数を意味します。
    • total_delta-managementは、最後の開始以降に圧縮されたデータの合計バイト数を意味します。
  • 書き込みストール期間:インスタンスごとのリージョンデータの書き込みおよび削除(範囲の削除)のストール期間。
  • インスタンスごとの書き込みスループット:インスタンスごとの書き込みスループット。これには、 Raft書き込みコマンドとRaftスナップショットを適用することによるスループットが含まれます。
  • インスタンスごとの書き込みコマンドOPS:インスタンスによって受信されたさまざまな種類のコマンドの総数。
    • write blockは、 Raftを介して同期されたデータログを意味します。
    • delete_rangeは、一部のリージョンがこのインスタンスから削除または移動されることを意味します。
    • ingestは、一部のリージョンスナップショットがこのインスタンスに適用されることを意味します。

Raft

  • 読み取りインデックスOPS:各TiFlashインスタンスが1秒あたりread_indexリクエストをトリガーする回数。これは、トリガーされるリージョンの数に相当します。
  • 読み取りインデックス期間:すべてのTiFlashインスタンスでread_indexが使用する時間。ほとんどの時間は、リージョンリーダーとのやり取りと再試行に使用されます。
  • 待機インデックス期間:すべてのTiFlashインスタンスでwait_indexが使用する時間、つまり、 read_indexの要求が受信された後にローカルインデックス>=read_indexになるまで待機するために使用される時間。