TiDBダッシュボードに関するよくある質問

+5
b
T
r
q

このドキュメントは、TiDBダッシュボードに関するよくある質問(FAQ)と回答をまとめたものです。指示通りに実行しても問題が見つからない、または解決しない場合は、PingCAPまたはコミュニティにサポートを受ける

ファイアウォールまたはリバースプロキシが設定されている場合、TiDBダッシュボード以外の内部アドレスにリダイレクトされます

クラスター内に複数の配置Driver(PD)インスタンスがデプロイされている場合、TiDBダッシュボードサービスを実際に実行するPDインスタンスは1つだけです。このPDインスタンスではなく他のPDインスタンスにアクセスすると、ブラウザは別のアドレスにリダイレクトします。TiDBダッシュボードへのアクセス用にファイアウォールまたはリバースプロキシが適切に設定されていない場合、ダッシュボードにアクセスした際に、ファイアウォールまたはリバースプロキシによって保護されている内部アドレスにリダイレクトされる可能性があります。

TiDBダッシュボードがデュアルネットワークインターフェースカード(NIC)で展開されている場合、別のNICを使用してTiDBダッシュボードにアクセスすることはできません。

セキュリティ上の理由から、PD上のTiDBダッシュボードは、デプロイメント時に指定されたIPアドレスのみを監視します(つまり、1つのNICのみを監視します)。1 0.0.0.0のNICのみを監視するわけではありません。そのため、ホストに複数のNICがインストールされている場合、別のNICを使用してTiDBダッシュボードにアクセスすることはできません。

tiup clusterまたはtiup playgroundコマンドを使用して TiDB をデプロイした場合、現時点ではこの問題を解決できません。リバースプロキシを使用して、TiDB ダッシュボードを別の NIC に安全に公開することをお勧めします。詳細はリバースプロキシの背後でTiDBダッシュボードを使用する参照してください。

概要ページのQPSレイテンシのセクションにprometheus_not_foundエラーが表示される

概要ページのQPSレイテンシのセクションには、Prometheusがデプロイされたクラスターが必要です。そうでない場合、エラーが表示されます。この問題を解決するには、クラスターにPrometheusインスタンスをデプロイしてください。

Prometheusインスタンスをデプロイしてもこの問題が引き続き発生する場合は、デプロイメントツール(TiUPまたはTiDB Operator)が古く、ツールがメトリクスアドレスを自動的に報告しないため、TiDBダッシュボードでメトリクスをクエリできないことが原因である可能性があります。デプロイメントツールを最新バージョンにアップグレードして、もう一度お試しください。

デプロイメントツールがTiUPの場合は、以下の手順に従って問題を解決してください。その他のデプロイメントツールについては、それぞれのツールのドキュメントを参照してください。

  1. TiUPおよびTiUPクラスタのアップグレード:

    tiup update --self tiup update cluster --force
  2. アップグレード後、Prometheus インスタンスを使用して新しいクラスターをデプロイすると、メトリックが正常に表示されます。

  3. アップグレード後、既存のクラスターを再起動してメトリクスアドレスを報告できます。1 CLUSTER_NAME実際のクラスター名に置き換えてください。

    tiup cluster start CLUSTER_NAME

    クラスタが起動している場合でも、このコマンドを実行してください。このコマンドはクラスタ内の通常のアプリケーションには影響を与えませんが、メトリクスアドレスを更新してレポートするため、TiDBダッシュボードに監視メトリクスが正常に表示されるようになります。

スロークエリページにinvalid connectionエラーが表示されます

原因として考えられるのは、TiDBのプリペアドプランキャッシュ機能が有効になっていることです。これは実験的機能であるため、有効にすると、特定のTiDBバージョンではプリペアドプランキャッシュが正常に機能しない可能性があり、TiDBダッシュボード(およびその他のアプリケーション)でこの問題が発生する可能性があります。プリペアドプランキャッシュを無効にするには、システム変数tidb_enable_prepared_plan_cache = OFF設定します。

required component NgMonitoring is not startedエラーが表示されます

NgMonitoringは、TiDB v5.4.0以降のバージョンに組み込まれた高度な監視コンポーネントで、継続的プロファイリングTop SQLなどのTiDBダッシュボード機能をサポートします。TiUPの新しいバージョンでクラスターをデプロイまたはアップグレードすると、NgMonitoringが自動的にデプロイされます。TiDB TiDB Operatorを使用してデプロイされたクラスターの場合は、 継続的なプロファイリングを有効にするを参照してNgMonitoringを手動でデプロイできます。

Web ページにrequired component NgMonitoring is not started表示される場合は、次のようにしてデプロイメントの問題をトラブルシューティングできます。

TiUPを使用して展開されたクラスター

ステップ1. バージョンを確認する

  1. TiUPクラスターのバージョンを確認してください。NgMonitoring はTiUP v1.9.0 以降の場合にのみデプロイされます。

    tiup cluster --version

    コマンド出力にはTiUPのバージョンが表示されます。例:

    tiup version 1.9.0 tiup Go Version: go1.17.2 Git Ref: v1.9.0
  2. TiUPクラスターのバージョンが v1.9.0 より前の場合は、 TiUPとTiUPクラスターを最新バージョンにアップグレードします。

    tiup update --all

ステップ2. TiUPを使用して、コントロールマシンにng_port設定項目を追加します。その後、Prometheusをリロードします。

  1. クラスター構成ファイルを編集モードで開きます。

    tiup cluster edit-config ${cluster-name}
  2. monitoring_servers下にng_port:12020パラメータを追加します。

    monitoring_servers: - host: 172.16.6.6 ng_port: 12020
  3. Prometheus をリロードします:

    tiup cluster reload ${cluster-name} --role prometheus

上記の手順を実行した後もエラー メッセージが表示される場合は、PingCAP またはコミュニティに問い合わせてサポートを受ける

TiDB Operatorを使用してデプロイされたクラスター

TiDB Operatorのドキュメントのセクション継続的なプロファイリングを有効にする手順に従って、NgMonitoringコンポーネントをデプロイ。

TiUP Playground を使用したクラスターの開始

クラスタを起動すると、 TiUP Playground (>= v1.8.0) は NgMonitoringコンポーネントを自動的に起動します。TiUP Playgroundを最新バージョンに更新するには、次のコマンドを実行します。

tiup update --self tiup update playground

低速クエリページにunknown fieldエラーが表示される

クラスターのアップグレード後に「スロークエリ」ページにエラーunknown fieldが表示される場合、このエラーはTiDBダッシュボードのサーバーフィールド(更新される可能性があります)とユーザー設定フィールド(ブラウザキャッシュ内にあります)の差異に起因する互換性の問題に関連しています。この問題は修正されています。クラスターのバージョンがv5.0.3またはv4.0.14より前の場合は、以下の手順に従ってブラウザキャッシュをクリアしてください。

  1. TiDB ダッシュボード ページを開きます。

  2. 開発者ツールを開きます。ブラウザによって開発者ツールの開き方が異なります。メニューバーをクリックした後、以下の手順に従ってください。

    • Firefox:メニュー> Web 開発>ツールの切り替え、またはツール> Web 開発>ツールの切り替え
    • Chrome:その他のツール>開発者ツール
    • Safari: 「開発」 > 「Webインスペクタを表示」「開発」メニューが表示されない場合は、 「Safari」 > 「環境設定」 > 「詳細」に移動し、「メニューバーに開発メニューを表示」チェックボックスをオンにします。

    次の例では、Chrome が使用されています。

    Opening DevTools from Chrome's main menu

  3. アプリケーションパネルを選択し、ローカルストレージメニューを展開して、 TiDBダッシュボードページのドメインを選択します。 「すべてクリア」ボタンをクリックします。

    Clear the Local Storage

このページは役に立ちましたか?