[前回] Elasticsearchで見る検索エンジンの仕組み(7): マッピング編
はじめに
前回は、Elasticsearchのマッピングを理解しました。
今回は、Kibana起動失敗時のトラブルシューティングです。
トラブル事象
-
kibana
コマンドでKibanaを起動したら、エラー発生- エラーログから、Elasticsearchノードに接続できずタイムアウトした模様
- ElasticsearchノードのIPアドレス
172.23.224.1
がどうやら怪しい
Unable to retrieve version information from Elasticsearch nodes. connect ETIMEDOUT 172.23.224.1:9200
- Kibana画面には、
Kibana server is not ready yet
エラーが表示される
原因調査
- エラーログに表示されたIPアドレスへ、pingコマンドで接続確認
- 要求がタイムアウト、このIPアドレスは何者?
> ping 172.23.224.1
172.23.224.1 に ping を送信しています 32 バイトのデータ:
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。
172.23.224.1 の ping 統計:
パケット数: 送信 = 4、受信 = 0、損失 = 4 (100% の損失)、
- Kibanaの設定ファイル
config/kibana.yml
を確認- KibanaからElasticsearchへの接続先となる
elasticsearch.hosts
に問題IPアドレスが指定されていた - Kibanaセットアップ時に、動的に割り当てられていたIPアドレスが使用され、そのまま設定ファイルに記載されたか?
- その後、OS再起動によりIPアドレスが変わったので、接続できなくなったかも
- KibanaからElasticsearchへの接続先となる
# This section was automatically generated during setup.
elasticsearch.hosts: ['https://172.23.224.1:9200']
対処
- 開発環境のローカルに、ElasticsearchとKibanaを導入しているので
-
elasticsearch.hosts
のIPアドレスをlocalhostに書き換える
-
elasticsearch.hosts: ['https://localhost:9200']
- Ctrl+CでKibanaを停止してから、
kibana
コマンドで起動- 今度は、起動ログにエラー発生せず
- Kibanaログイン画面も正常に表示される
おわりに
Kibana起動エラー時のトラブルシューティングでした。
次回も続きます。お楽しみに。