TiDBダッシュボードに関するよくある質問
このドキュメントでは、TiDB ダッシュボードに関するよくある質問 (FAQ) と回答をまとめています。指示どおりに実行しても問題が見つからない、または問題が解決しない場合は、PingCAP またはコミュニティにサポートを受けるてください。
アクセスに関するFAQ
ファイアウォールまたはリバースプロキシが設定されている場合、TiDBダッシュボード以外の内部アドレスにリダイレクトされます
複数の Placement Driver (PD) インスタンスがクラスターにデプロイされている場合、実際に TiDB ダッシュボード サービスを実行するのは PD インスタンスの 1 つだけです。このインスタンスではなく他の PD インスタンスにアクセスすると、ブラウザーは別のアドレスにリダイレクトします。TiDB ダッシュボードにアクセスするためにファイアウォールまたはリバース プロキシが適切に構成されていない場合、ダッシュボードにアクセスすると、ファイアウォールまたはリバース プロキシによって保護されている内部アドレスにリダイレクトされることがあります。
- 複数の PD インスタンスを使用した TiDB ダッシュボードの動作原理については、 TiDB ダッシュボード マルチ PD インスタンスの展開参照してください。
- リバース プロキシを正しく構成する方法については、 リバースプロキシ経由でTiDBダッシュボードを使用する参照してください。
- ファイアウォールを正しく構成する方法については、 セキュリティTiDB ダッシュボード参照してください。
TiDBダッシュボードがデュアルネットワークインターフェースカード(NIC)で展開されている場合、別のNICを使用してTiDBダッシュボードにアクセスすることはできません。
セキュリティ上の理由から、PD 上の TiDB ダッシュボードは、 0.0.0.0
ではなく、デプロイメント時に指定された IP アドレスのみを監視します (つまり、1 つの NIC のみをリッスンします)。したがって、ホストに複数の NIC がインストールされている場合、別の NIC を使用して TiDB ダッシュボードにアクセスすることはできません。
tiup cluster
またはtiup playground
コマンドを使用して TiDB をデプロイした場合、現時点ではこの問題を解決することはできません。リバース プロキシを使用して、TiDB ダッシュボードを別の NIC に安全に公開することをお勧めします。詳細については、 リバースプロキシの背後でTiDBダッシュボードを使用する参照してください。
UI関連のFAQ
概要ページのQPSとレイテンシのセクションにprometheus_not_found
エラーが表示される
概要ページのQPSセクションとレイテンシセクションには、Prometheus がデプロイされたクラスターが必要です。そうでない場合は、エラーが表示されます。この問題は、クラスターに Prometheus インスタンスをデプロイすることで解決できます。
Prometheus インスタンスがデプロイされた後もこの問題が発生する場合は、デプロイメント ツールが古く (TiUPまたはTiDB Operator)、ツールがメトリック アドレスを自動的に報告しないため、TiDB ダッシュボードがメトリックをクエリできないことが原因である可能性があります。デプロイメント ツールを最新バージョンにアップグレードして、もう一度試してください。
デプロイメント ツールがTiUPの場合は、次の手順を実行してこの問題を解決してください。その他のデプロイメント ツールについては、それぞれのツールの対応するドキュメントを参照してください。
TiUPおよびTiUPクラスタのアップグレード:
tiup update --self tiup update cluster --forceアップグレード後、Prometheus インスタンスを使用して新しいクラスターをデプロイすると、メトリックが正常に表示されます。
アップグレード後、既存のクラスターでは、このクラスターを再起動してメトリック アドレスを報告できます。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 は、継続的なプロファイリングやTop SQLなどのTiUPダッシュボード機能をサポートするために、v5.4.0 以降のバージョンの TiDB クラスターに組み込まれた高度な監視コンポーネントです。TiUP の新しいバージョンを使用してクラスターをデプロイまたはアップグレードすると、NgMonitoring が自動的にデプロイされます。TiDB TiDB Operator を使用してデプロイされたクラスターの場合は、 継続的なプロファイリングを有効にするを参照して NgMonitoring を手動でデプロイできます。
Web ページにrequired component NgMonitoring is not started
表示される場合は、次のようにしてデプロイメントの問題をトラブルシューティングできます。
TiUPを使用して展開されたクラスター
ステップ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.0TiUPクラスターのバージョンが v1.9.0 より前の場合は、 TiUPとTiUPクラスターを最新バージョンにアップグレードします。
tiup update --all
ステップ 2. TiUPを使用して、コントロール マシンに ng_port 構成項目を追加します。次に、Prometheus をリロードします。
クラスター構成ファイルを編集モードで開きます。
tiup cluster edit-config ${cluster-name}monitoring_servers
下にng_port:12020
パラメータを追加します。monitoring_servers: - host: 172.16.6.6 ng_port: 12020Prometheus をリロードします:
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 より前の場合は、次の手順を実行してブラウザー キャッシュをクリアしてください。
TiDB ダッシュボード ページを開きます。
開発者ツールを開きます。ブラウザによって開発者ツールを開く方法が異なります。メニューバーをクリックした後:
- Firefox:メニュー> Web 開発>ツールの切り替え、またはツール> Web 開発>ツールの切り替え。
- Chrome:その他のツール>開発者ツール。
- Safari:開発> Web インスペクタを表示。開発メニューが表示されない場合は、 Safari >環境設定>詳細に移動し、メニューバーに開発メニューを表示チェックボックスをオンにします。
次の例では、Chrome が使用されています。
アプリケーションパネルを選択し、ローカル ストレージメニューを展開して、 TiDB ダッシュボード ページ ドメインを選択します。すべてクリアボタンをクリックします。