PingCAPクリニックの概要
PingCAPクリニック Diagnostic Service (PingCAPクリニック) は、TiUP またはTiDB Operatorを使用してデプロイされた TiDB クラスターに対して PingCAP が提供する診断サービスです。このサービスは、クラスターの問題をリモートでトラブルシューティングするのに役立ち、ローカルでクラスターの状態をすばやく確認できます。 PingCAPクリニックを使用すると、TiDB クラスターのライフサイクル全体にわたって安定した動作を確保し、潜在的な問題を予測し、問題の可能性を減らし、クラスターの問題を迅速にトラブルシューティングし、クラスターの問題を修正することができます。
PingCAPクリニックは、クラスタの問題を診断するために次の 2 つのコンポーネントを提供します。
診断クライアント:
Diag クライアント (Diag) は、クラスター側にデプロイされる診断ツールです。 Diag は、クラスタの診断データを収集し、診断データを Clinic Server にアップロードし、クラスタでローカルにクイック ヘルス チェックを実行するために使用されます。 Diag で収集できる診断データの完全なリストについては、 PingCAPクリニックの診断データを参照してください。
ノート:
Diag は TiDB v4.0 以降のバージョンをサポートしていますが、TiDB Ansible を使用してデプロイされたクラスターからのデータ収集はサポートしていません。
クリニック サーバー:
Clinic Server は、クラウドにデプロイされたクラウド サービスです。診断サービスを SaaS モデルで提供することにより、Clinic Server はアップロードされた診断データを受信するだけでなく、データの保存、データの表示、クラスター診断レポートの提供を行うオンライン診断環境としても機能します。 Clinic Server は、保存場所に応じて 2 つの独立したサービスを提供します。
- 米国のクリニックサーバー : データは米国の AWS に保存されます。
- 中国本土のクリニックサーバー : データは中国 (北京) リージョンの AWS に保存されます。
ユーザー シナリオ
クラスターの問題をリモートでトラブルシューティングする
クラスターにすぐに修正できない問題がある場合は、 TiDB コミュニティ slack チャンネルでヘルプを求めるか、PingCAP テクニカル サポートに連絡してください。リモート アシスタンスについてテクニカル サポートに連絡する場合、クラスタからのさまざまな診断データを保存し、そのデータをサポート スタッフに転送する必要があります。この場合、Diag を使用して、ワンクリックで診断データを収集できます。 Diag は、完全な診断データを迅速に収集するのに役立ちます。これにより、複雑な手動のデータ収集操作を回避できます。データを収集した後、PingCAP テクニカル サポート スタッフがクラスタの問題をトラブルシューティングするために、データを Clinic Server にアップロードできます。 Clinic Server は、アップロードされた診断データ用の安全なストレージを提供し、オンライン診断をサポートします。これにより、トラブルシューティングの効率が大幅に向上します。
クラスターの状態をすばやく確認する
クラスターが今のところ安定して動作している場合でも、クラスターを定期的にチェックして潜在的な安定性リスクを検出する必要があります。 PingCAPクリニックが提供するローカルおよびサーバー側のクイック チェック機能を使用して、クラスターの潜在的なヘルス リスクを特定できます。
実施原則
このセクションでは、Diag がクラスターから診断データを収集する方法に関する実装の原則を紹介します。
最初に、Diag は、デプロイメント ツール TiUP (tiup-cluster) またはTiDB Operator (tidb-operator) からクラスター トポロジー情報を取得します。次に、Diag は、次のようなさまざまなデータ収集方法を使用して、さまざまな種類の診断データを収集します。
SCP を介してサーバーファイルを転送する
TiUP を使用してデプロイされたクラスターの場合、Diag は、セキュリティコピー プロトコル (SCP) を介して、ターゲット コンポーネントのノードからログ ファイルと構成ファイルを直接収集できます。
SSH を介してリモートでコマンドを実行してデータを収集する
TiUP を使用してデプロイされたクラスターの場合、Diag は SSH (セキュリティシェル) を介してターゲット コンポーネント システムに接続し、コマンド (Insight など) を実行して、カーネル ログ、カーネル パラメーター、システムおよびハードウェアの基本情報などのシステム情報を取得できます。
HTTP 呼び出しによるデータの収集
- TiDB コンポーネントの HTTP インターフェイスを呼び出すことにより、Diag は、TiDB、TiKV、PD、およびその他のコンポーネントのリアルタイム構成サンプリング情報とリアルタイム パフォーマンス サンプリング情報を取得できます。
- Prometheus の HTTP インターフェースを呼び出すことで、Diag はアラート情報とモニタリング メトリック データを取得できます。
SQL ステートメントを使用してデータベース パラメーターをクエリする
SQL ステートメントを使用して、Diag はシステム変数や TiDB のその他の情報を照会できます。この方法を使用するには、データ収集時に TiDB にアクセスするためのユーザー名とパスワードを追加で提供する必要があります。
クリニックサーバーの限界
ノート:
- Clinic Server は、2022 年 7 月 15 日から 2023 年 1 月 14 日まで無料です。2023 年 1 月 14 日以降にサービスが課金を開始する場合は、メールで通知されます。
- 使用制限を調整する場合は、PingCAP テクニカル サポートにお問い合わせください。
サービスの種類 | 制限 |
---|---|
クラスタ数 | 10/組織 |
ストレージ容量 | 50 GB/クラスタ |
保存期間 | 180日 |
データサイズ | 3GB/パッケージ |
データ再構築環境の保存期間 | 3日 |
次のステップ
オンプレミス環境でPingCAPクリニックを使用する
Kubernetes でPingCAPクリニックを使用する