tomcat 8 と solr 4.10.3
solrを使いたいので。インデキシングとかはまた今度。付属サンプルデータが検索できるまで。
環境
- CentOS 6.6
参考
- [改訂新版] Apache Solr入門 ~オープンソース全文検索エンジン (Software Design plus)
- CentOSで「alternatives」コマンドを使用してJavaのバージョンを切り替える - 猫にWeb
- SolrTomcat - Solr Wiki
- AWS で Tomcat 7 に Solr4.5 インストールしたときの メモ - Solr, Python, MacBook Air in ShinagawaSeaside
- Apache Solr で全文検索(1) – とりあえず使ってみる — SOUM/misc
- ビーキョウのIT Solr 4.0 + Tomcat 7 インストール(構築)
- How to install Apache Solr 4.6 with Apache Tomcat 7, for use with Drupal | DUNTUK
JDKインストール
$ cd /tmp $ wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u25-b17/jdk-8u25-linux-x64.rpm $ md5sum jdk-8u25-linux-x64.rpm 6a8897b5d92e5850ef3458aa89a5e9d7 jdk-8u25-linux-x64.rpm # open jdk version check $ java -version java version "1.7.0_71" # remove openjdk # もしかしたら削除しないほうがいいかも? # alternativesコマンド使えば大丈夫?やるときはこれまでのものに影響がでないよう気をつけて。 $ sudo rpm --erase java-1.7.0-openjdk # version check (done remove openjdk) $ java -version java version "1.6.0_33" # install oracle jdk $ sudo rpm -Uvh jdk-8u25-linux-x64.rpm # java version change $ sudo alternatives --install /usr/bin/java java /usr/java/jdk1.8.0_25/jre/bin/java 200000 # java version check # 一旦ログアウトして、再度ログインした時にも同じようになることを確認する $ java -version java version "1.8.0_25" $ javac -version javac 1.8.0_25
Tomcatインストール
$ cd /usr/local $ sudo wget http://mirrors.viethosting.vn/apache/tomcat/tomcat-8/v8.0.15/bin/apache-tomcat-8.0.15.tar.gz http://tomcat.apache.org/download-80.cgi のCoreのtar $ md5sum apache-tomcat-8.0.15.tar.gz a72c1057e501e50fc4033087a105dfd7 apache-tomcat-8.0.15.tar.gz # 解凍 $ sudo tar zxvf apache-tomcat-8.0.15.tar.gz # rename $ sudo mv apache-tomcat-8.0.15 tomcat # 管理画面設定 # バックアップ $ sudo cp tomcat-users.xml tomcat-users.xml_bk # edit $ sudo vi tomvat-users.xml <role rolename="manager-gui"/> <role rolename="admin-gui"/> <role rolename="solr-gui"/> <user username="****" password="****" roles="manager-gui,admin-gui,solr-gui"/> # port $ sudo vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT # restart $ sudo service iptables restart # 起動 $ cd /usr/local/tomcat/bin $ sudo ./startup.sh # access http://***.***.***.***:8080/ # 設定したユーザーネーム、パスワードで閲覧できることも確認 http://***.***.***.***:8080/manager/html # 停止 $ sudo ./shutdown.sh
Solrインストール
# mirror一覧 http://www.apache.org/mirrors/ # get $ cd /usr/local $ sudo wget http://ftp.jaist.ac.jp/pub/apache/lucene/solr/4.10.3/solr-4.10.3.tgz # md5 $ sudo wget http://www.eu.apache.org/dist/lucene/solr/4.10.3/solr-4.10.3.tgz.md5 $ cat solr-4.10.3.tgz.md5 84ecc4828ed599d906d7343a71d6912f *solr-4.10.3.tgz $ md5sum solr-4.10.3.tgz 84ecc4828ed599d906d7343a71d6912f solr-4.10.3.tgz # 解凍 $ sudo tar zxvf solr-4.10.3.tgz # rename sudo mv solr-4.10.3 solr # make solr home $ cd /usr/local $ sudo mkdir test # exampleをコピー $ sudo cp -R example/solr test/sample # tomcatに設定を。 $ cd /usr/local/tomcat/conf # バックアップ $ sudo cp server.xml server.xml_bk $ sudo vi server.xml (Hostタグ内) <Context path="/solr" docBase="/usr/local/solr/dist/solr-4.10.3.war" debug="0" crossContext="true" > <Environment name="solr/home" type="java.lang.String" value="/usr/local/solr/test/sample" override="true" /> </Context> http://d.hatena.ne.jp/knaka20blue/20131024/1382616625 # jar file copy $ sudo cp /usr/local/solr/example/lib/ext/*.jar /usr/local/tomcat/lib/ # tomcat 起動、ブラウザ確認 $ cd /usr/loca/tomcat $ sudo ./startup.sh http://***.***.***.***:8080/
付属サンプルデータで試す
# サンプルデータコピー $ sudo cp -R example/exampledocs test/ $ cd /usr/local/solr/test/exampledocs # postファイルバックアップ $ sudo cp post.sh post.sh_bk $ sudo vi post.sh #URL=http://localhost:8983/solr/update URL=http://***.***.***.***:8080/solr/update # Solr へpost (tomcatは起動させておく) $ sudo ./post.sh *.xml post結果がコンソールに出力される # ブラウザで確認する。 http://***.***.***.***:8080/solr/#/collection1 左下のQueryを選択、パラメータqにipodと入れてExecute Queryをクリック。 結果が表示される。