全文検索の性能が求められるアプリの案が浮かんだので、色々調べた結果Elasticsearchに行き着きました。
多分、RDBMSでもいけるレベルのシステムですが、なんか面白そうだなっていう理由でElasticsearchにしましたw
windowsのローカル環境での環境構築で地味に躓いたのでその時の対処方法を書いておきます。
↓参考にした記事です。
https://qiita.com/doiken_/items/7847f8fd2bd65ceeaf18
一応環境。開発やるには弱すぎるのでメモリだけ増設してますw
プロセッサ:AMD Ryzen 5 3500U with Radeon Vega Mobile Gfx 2.10GHz
実装メモリ(RAM):20.0GB
システムの種類:64ビットオペレーティングシステム、x64 ベースプロセッサ
Windowsのエディション:Windows 10 Home
JavaはOpenJDK 14.0.2を既にインストールしてありました。
インストールしたElasticsearchのbinディレクトリにあるelasticsearch.batを実行した後、curlコマンドで起動確認をしようとしたタイミングでの話です。
“`
curl: (52) Empty reply from server
“`
「ん、Empty reply…?レスポンスは返ってきてるから起動はできてるんだよな…?」
ログを見てみると、以下のメッセージが。
“`
received plaintext http traffic on an https channel, closing connection Netty4HttpChannel
“`
うん、なるほど分からん。
色々調べてもよく分かんなかったんですが、config\elasticsearch.ymlで色々定義されていることは分かりました。
軽く中身を眺めてみました。
結果的には、以下の「xpack.security.enabled」の値をfalseにしたら、いけました。
JSON形式でレスポンスが返ってくるようになりました。よき
今度はkibanaをインストール、起動して、ブラウザから「http://localhost:5601」にアクセスして動作確認しようとしたときの話です。
Elasticsearch plugin is red
ん?なんかうまくいってない感あるぞ…。
This version of Kibana requires Elasticsearch v5.4.0 on all nodes. I found the following incompatible nodes in your cluster: v8.1.2 @ 127.0.0.1:9200(127.0.0.1)
「あ、バージョンが悪いのか。ん、でもElasticsearchのバージョンにKibanaのバージョンを合わせるとして、Kibanaバージョンはなんぼになるんだ?」
私は、英語での文章読解力があれば絶対に抱かない疑問を抱き頭を抱えました。
色々調べてるうちに、KibanaのバージョンはElasticsearchの数字と一致させる必要があることに気づきました。
Kibanaのv8.1.2をインストールしたら解決しました。
うーん……w
まぁ解決したからいいかw