バックアップと復元の監視とアラート
このドキュメントでは、監視コンポーネント、監視メトリック、一般的なアラートを展開する方法など、バックアップと復元機能の監視とアラートについて説明します。
スナップショットのバックアップと復元の監視
スナップショットのバックアップと復元のメトリックを表示するには、Grafana のTiKV詳細>バックアップとインポートダッシュボードに移動します。
ログバックアップ監視
ログバックアップは、監視メトリックの収集にプロメテウス使用をサポートしています。現在、すべての監視メトリックはTiKVに組み込まれています。
監視構成
- TiUPを使用してデプロイされたクラスターの場合、Prometheus は監視メトリックを自動的に収集します。
- 手動でデプロイされたクラスターの場合は、 TiDBクラスタ監視の展開の手順に従って、Prometheus 構成ファイルの
scrape_configsセクションに TiKV 関連のジョブを追加します。
Grafanaの設定
- TiUPを使用してデプロイされたクラスターの場合、ダッシュボードグラファナにポイントインタイムリカバリ (PITR) パネルが表示されます。TiKV-Details ダッシュボードのバックアップログパネルが PITR パネルです。
- 手動でデプロイされたクラスターの場合は、 Grafanaダッシュボードをインポートするを参照し、 tikv_詳細 JSON ファイルを Grafana にアップロードしてください。その後、TiKV-Details ダッシュボードのバックアップログパネルを見つけてください。
監視メトリクス
ログバックアップアラート
アラート設定
現在、PITRにはアラート項目が組み込まれていません。このセクションでは、PITRでアラート項目を設定する方法と、推奨されるアラート項目をいくつか紹介します。
PITR でアラート項目を構成するには、次の手順に従います。
- Prometheusが配置されているノードのアラートルール用の設定ファイル(例:
pitr.rules.yml)を作成します。このファイルには、 Prometheusのドキュメント 、以下の推奨アラート項目、および設定サンプルに従ってアラートルールを記述します。 - Prometheus 構成ファイルの
rule_filesフィールドに、アラート ルール ファイルのパスを追加します。 - Prometheusプロセスにシグナル
SIGHUP送信するか(kill -HUP pid)、HTTPリクエストPOSTをhttp://prometheus-addr/-/reloadに送信します(HTTPリクエストを送信する前に、Prometheusの起動時にパラメータ--web.enable-lifecycleを追加します)。
推奨されるアラート項目は次のとおりです。
ログバックアップ実行RPO10分以上
- 警告項目:
max(time() - tidb_log_backup_last_checkpoint / 262144000) by (task) / 60 > 10 and max(tidb_log_backup_last_checkpoint) by (task) > 0 and max(tikv_log_backup_task_status) by (task) == 0 - 警戒レベル:警告
- 説明: ログデータが10分以上storageに保存されていません。このアラートはリマインダーです。ほとんどの場合、ログバックアップには影響しません。
このアラート項目の構成サンプルは次のとおりです。
groups:
- name: PiTR
rules:
- alert: LogBackupRunningRPOMoreThan10m
expr: max(time() - tidb_log_backup_last_checkpoint / 262144000) by (task) / 60 > 10 and max(tidb_log_backup_last_checkpoint) by (task) > 0 and max(tikv_log_backup_task_status) by (task) == 0
labels:
severity: warning
annotations:
summary: RPO of log backup is high
message: RPO of the log backup task {{ $labels.task }} is more than 10m
ログバックアップ実行RPO30分以上
- 警告項目:
max(time() - tidb_log_backup_last_checkpoint / 262144000) by (task) / 60 > 30 and max(tidb_log_backup_last_checkpoint) by (task) > 0 and max(tikv_log_backup_task_status) by (task) == 0 - 警戒レベル: 重大
- 説明: ログデータが30分以上storageに保存されていません。このアラートは多くの場合、異常を示しています。原因を特定するには、TiKVログを確認してください。
ログバックアップ一時停止中 (2 時間以上)
- 警告項目:
max(time() - tidb_log_backup_last_checkpoint / 262144000) by (task) / 3600 > 2 and max(tidb_log_backup_last_checkpoint) by (task) > 0 and max(tikv_log_backup_task_status) by (task) == 1 - 警戒レベル:警告
- 説明: ログバックアップタスクが2時間以上一時停止されています。このアラートはリマインダーであり、できるだけ早く
br log resume実行してください。
ログバックアップ一時停止中(12時間以上)
- 警告項目:
max(time() - tidb_log_backup_last_checkpoint / 262144000) by (task) / 3600 > 12 and max(tidb_log_backup_last_checkpoint) by (task) > 0 and max(tikv_log_backup_task_status) by (task) == 1 - 警戒レベル: 重大
- 説明: ログバックアップタスクが12時間以上一時停止されています。タスクを再開するには、できるだけ早く
br log resume実行してください。ログタスクの一時停止時間が長すぎると、データが失われるリスクがあります。
ログバックアップ失敗
- 警告項目:
max(tikv_log_backup_task_status) by (task) == 2 and max(tidb_log_backup_last_checkpoint) by (task) > 0 - 警戒レベル: 重大
- 説明: ログバックアップタスクが失敗しました。失敗の原因を確認するには、
br log status実行する必要があります。必要に応じて、TiKV ログをさらに確認する必要があります。
ログバックアップGCセーフポイントがチェックポイントを超える
- 警告項目:
min(tidb_log_backup_last_checkpoint) by (instance) - max(tikv_gcworker_autogc_safe_point) by (instance) < 0 - 警戒レベル: 重大
- 説明: バックアップ前に一部のデータがガベージコレクションされました。これは、一部のデータが失われており、サービスに影響を与える可能性が非常に高いことを意味します。