初心者だけど、全文検索がしたかったとです…
現在作っているサイトに全文検索を入れたくて、AWS(Amazon Web Services)にあるElastic Searchを使おうと考えていました。
ところが、AWSを見たところ「使った分だけ後払い」と書いてあって、いいなと1秒思った後
「ん?もし、検索とかで凄まじい回数を連打されるいたずらとか、そういうことをやられたら売り上げないのに、請求だけバカでかくなるんじゃないの?」
と思って使うのを諦めました。
それで、VPS(Virtual Private Server、つまり仮想専用サーバー)をレンタルして、そこに検索機能だけを入れて、データベースとして使った方が金額が確定していて安心なのでは?と思って、Solrを使うことに決めました。
ただ、Solrは経験がない(Mysqlでn-gramによる全文検索しか経験がない)ため、まずは自宅のcentosを使って一通り試してみてから、VPSを契約しようと思います。
Solrをダウンロードする
まずは、(http://ftp.tsukuba.wide.ad.jp/software/apache/lucene/solr/)へアクセスして、最新バージョンのSolrをダウンロードしてみます。 7.1.0があったのでまずはダウンロードしてみます。
# wget http://ftp.tsukuba.wide.ad.jp/software/apache/lucene/solr/7.1.0/solr-7.1.0.tgz
ひとまずダウンロードを完了しました。
tgzなので、展開しておきますね。
# tar xzvf solr-7.1.0.tgz
Javaは「CentOS7にelastic searchをインストールしてみた。」の時にインストールしたので、大丈夫なので、そのままSolrをインストールしてみます。
SolrをCentOS7にインストールする
Javaはインストール済みなので、このままSolrをインストールしてみます。
Solrを展開したディレクトリの中にある binディレクトリにあるファイル「install_solr_service.sh」を展開前のファイルに実行することでインストールできるらしいので、実行してみます。
# ./solr-7.1.0/bin/install_solr_service.sh solr-7.1.0.tgz
インストールされたっぽいです。
以下でインストールを確認します。
# ls -l /opt/solr
うん、ちゃんとインストールできてるようです。
インストール時のログを見ると、「Solr process 18598 running on port 8983」と書いてあり、インストール時に起動もしてるようですね。
停止と起動を試しておく
せっかくなので停止と起動は試しておきます。
方法は通常とおりの方法になります。
//Solrを停止してみる
# service solr stop
//Solrを起動してみる
# service solr start
管理画面にアクセスしてみる
早速管理画面にアクセスしてみます。アクセス先は「http://【IPアドレス】:8983/solr/」へアクセスします。
非常に楽しみですね!!
おみごと!アクセスを拒否されてしまいました。色々やったのですが、アクセスできません。
これやっぱりファイアウォールのせいでしょうか?原因を確かめるべく、一瞬だけ停止してアクセスしてみます。
# systemctl stop firewalld.service
再度アクセスしてみます。
ファファーン!アクセスに成功しました!Solrの管理画面を見るには、ファイアウォールの設定が必要なので、firewalldで設定を行えばよいのですね。わかりました!
ひとまず、インストールができたようですので、次はSolrにサンプルデータを入れてみたいと思います。