TiDBダッシュボードインスタンスプロファイリング - 継続的なプロファイリング
注記:
この機能はデータベースのエキスパート向けに設計されています。エキスパートでない方は、PingCAPテクニカルサポートの指示に従ってこの機能を使用することをお勧めします。
継続的プロファイリングにより、TiDB、TiKV、PDの各インスタンスからパフォーマンスデータを継続的に収集できます。収集されたパフォーマンスデータは、FlameGraphまたはDAG形式で視覚化できます。
これらのパフォーマンスデータにより、専門家はインスタンスのCPUやメモリなどのリソース消費の詳細を分析し、CPUオーバーヘッドの高さ、メモリ使用量の多さ、プロセスの停止など、複雑なパフォーマンス問題をいつでも正確に特定できます。問題を再現できない場合でも、専門家はその時点で収集された過去のパフォーマンスデータを参照することで、問題を深く掘り下げることができます。このようにして、MTTRを効果的に短縮できます。
手動プロファイリングと比較
継続的プロファイリングは手動プロファイリングの拡張機能です。どちらも、各インスタンスの異なる種類のパフォーマンスデータを収集・分析するために使用できます。両者の違いは次のとおりです。
- 手動プロファイリングでは、プロファイリングを開始した瞬間に短期間 (たとえば 30 秒) のみパフォーマンス データが収集されますが、継続プロファイリングが有効になっている場合は、継続的にデータが収集されます。
- 手動プロファイリングは現在発生している問題を分析するためにのみ使用できますが、継続的プロファイリングは現在の問題と履歴の問題の両方を分析するために使用できます。
- 手動プロファイリングでは特定のインスタンスの特定のパフォーマンス データを収集できますが、継続的プロファイリングではすべてのインスタンスのすべてのパフォーマンス データを収集します。
- 継続的なプロファイリングでは、より多くのパフォーマンス データが保存されるため、より多くのディスク領域が使用されます。
サポートされているパフォーマンスデータ
手動プロファイリング内のすべてのパフォーマンス データが収集されます。
CPU: TiDB、TiKV、 TiFlash、PDインスタンスの各内部関数のCPUオーバーヘッド
ヒープ: TiDB、TiKV、PDインスタンス上の各内部関数のメモリ消費量
ミューテックス: TiDBおよびPDインスタンス上のミューテックスの競合状態
Goroutine: TiDB および PD インスタンス上のすべての Goroutine の実行状態と呼び出しスタック
ページにアクセスする
継続的プロファイリング ページには、次のいずれかの方法でアクセスできます。
TiDB ダッシュボードにログインした後、左側のナビゲーション メニューで[高度なデバッグ] > [インスタンスのプロファイリング] > [継続的なプロファイリング]をクリックします。
ブラウザでhttp://127.0.0.1:2379/ダッシュボード/#/継続的なプロファイリングアクセスしてください。3
127.0.0.1:2379
実際のPDインスタンスのアドレスとポートに置き換えてください。
継続的なプロファイリングを有効にする
注記:
継続的プロファイリングを使用するには、クラスターを最新バージョンのTiUP (v1.9.0以上)またはTiDB Operator (v1.3.0以上)でデプロイまたはアップグレードする必要があります。以前のバージョンのTiUPまたはTiDB Operatorを使用してクラスターをアップグレードした場合は、手順FAQご覧ください。
継続的プロファイリングを有効にすると、Webページを常にアクティブにしておくことなく、バックグラウンドで継続的にパフォーマンスデータを収集できます。収集されたデータは一定期間保存され、期限切れのデータは自動的に削除されます。
この機能を有効にするには:
- 継続的なプロファイリングページご覧ください。
- 「設定を開く」をクリックします。右側の設定領域で、 「機能の有効化」をオンにし、必要に応じて「保存期間」のデフォルト値を変更します。
- [保存]をクリックします。
現在のパフォーマンスデータをビュー
継続的なプロファイリングが有効になっているクラスターでは、手動プロファイリングを開始できません。現時点でのパフォーマンスデータを表示するには、最新のプロファイリング結果をクリックしてください。
過去のパフォーマンスデータをビュー
リスト ページでは、この機能を有効にしてから収集されたすべてのパフォーマンス データを確認できます。
パフォーマンスデータをダウンロード
プロファイリング結果ページで、右上隅の[プロファイリング結果のダウンロード]をクリックすると、すべてのプロファイリング結果をダウンロードできます。
表内の個々のインスタンスをクリックすると、そのプロファイリング結果を表示できます。また、... にマウスを合わせると、生データをダウンロードできます。
継続的なプロファイリングを無効にする
- 継続的なプロファイリングページご覧ください。
- 右上隅の歯車アイコンをクリックして設定ページを開きます。 「機能の有効化」をオフにします。
- [保存]をクリックします。
- ポップアップされたダイアログボックスで、 [無効にする]をクリックします。
よくある質問
1. 継続的なプロファイリングを有効にできず、UI に「必要なコンポーネントNgMonitoring が開始されていません」と表示されます。
2. 継続的なプロファイリングを有効にするとパフォーマンスに影響はありますか?
当社のベンチマークによると、この機能を有効にすると、パフォーマンスへの平均的な影響は 1% 未満になります。
3. この機能のステータスはどうなっていますか?
これは現在、一般公開 (GA) された機能であり、本番環境で使用できます。