6. Solrの操作¶
IM-ContentsSearch を利用するにあたって必要となる Solr の運用上の手順などについて説明します。
6.1. インデックスの削除¶
インデックスを削除する方法について説明します。開発時や環境再構築時に一旦インデックスを削除したい場合などに実行してください。curlコマンドを実行してSolrサーバに対してXMLデータを送信、またはWebブラウザのアドレスバーにURLを指定して削除を実行することができます。いずれも、Solrサーバが起動されている状態で実行する必要があります。
コア名「default」内のインデックスをすべて削除する操作
Linuxの場合:curlコマンドを実行
curl "http://localhost:8983/solr/default/update?commit=true" --data-binary '<delete><query>*:*</query></delete>' -H 'Content-type: text/xml; charset=utf-8';Windowsの場合:WebブラウザのアドレスバーにURLを指定
http://localhost:8983/solr/default/update?stream.body=<delete><query>*:*</query></delete>&commit=trueコラム
IM-ContentsSearch では、インデックスを削除するためのジョブを用意しています。「ジョブ・ジョブネットリファレンス」-「削除クローリング」 を参照してください。
6.2. Solrの移行¶
Solrサーバに保存されている設定ファイルやインデックスの移行手順についてアプリケーションサーバごとに説明します。移行先のサーバでインデックスを再度作成する場合にはインデックスのコピーは必要ありません。本書では同じアプリケーションサーバ製品への移行を想定した手順を記載します。注意
Solrサーバのデータの移行作業を行う前には、バックアップを行うことを推奨します。
6.2.1. Tomcatを利用している場合¶
Tomcat でSolrサーバを構築している場合のデータ移行手順について説明します。
- 作業は必ず Tomcat を停止させている状態で開始してください。
- 移行元の Tomcat のインストールディレクトリを %TOMCAT_OLD_HOME% と表記します。
- 移行先の Tomcat のインストールディレクトリを %TOMCAT_NEW_HOME% と表記します。
%TOMCAT_OLD_HOME%: 移行元の Tomcat のインストールディレクトリ %TOMCAT_NEW_HOME%: 移行先の Tomcat のインストールディレクトリ
WARファイルのコピー
<%TOMCAT_OLD_HOME%/webapps/solr.war> を <%TOMCAT_NEW_HOME%/webapps> ディレクトリ配下にコピーします。
solrディレクトリのコピー
<%TOMCAT_OLD_HOME%/solr> ディレクトリを <%TOMCAT_NEW_HOME%> ディレクトリ配下にコピーします。
インデックス保存ディレクトリのコピー
インデックスが保存されているディレクトリをコピーしてください。
<%TOMCAT_OLD_HOME%/solr/%コア名%/solrconfig.xml>の dataDir に指定しているディレクトリを変更していない場合
<%TOMCAT_OLD_HOME%/solr/%コア名%> ディレクトリ配下に data ディレクトリがあるため、手順2でコピー済みです。<%TOMCAT_OLD_HOME%/solr/%コア名%/solrconfig.xml>の dataDir に指定しているディレクトリを変更していない場合
複数のコアを設定している場合はそれぞれのディレクトリと <solrconfig.xml> の dataDir の設定を確認してください。URLEncodingの設定
<%TOMCAT_NEW_HOME%/conf/server.xml> の Connector 要素に、属性 URIEncoding="UTF-8" を追加します。
その他環境設定
Tomcat の設定をデフォルト設定から変更している場合は、移行先の環境に合わせて変更してください。
Tomcatの起動
Tomcat を起動し、正常に起動されることを確認してください。
Solr管理画面の確認
ブラウザでSolr管理画面が表示できることを確認してください。
http://<HOST>:<PORT>/solr/default/admin/
6.2.2. Resinを利用している場合¶
Resin でSolrサーバを構築している場合の移行手順について説明します。
- 作業は必ず Resin を停止させている状態で開始してください。
- 移行元の Resin のインストールディレクトリを %RESIN_OLD_HOME% と表記します。
- 移行先の Resin のインストールディレクトリを %RESIN_NEW_HOME% と表記します。
%RESIN_OLD_HOME%: 移行元の Resin のインストールディレクトリ %RESIN_NEW_HOME%: 移行先の Resin のインストールディレクトリ
WARファイルのコピー
<%RESIN_OLD_HOME%/webapps/solr.war> を <%RESIN_NEW_HOME%/webapps> ディレクトリ配下にコピーします。
solrディレクトリのコピー
<%RESIN_OLD_HOME%/solr> ディレクトリを <%RESIN_NEW_HOME%> ディレクトリ配下にコピーします。
インデックス保存ディレクトリのコピー
インデックスが保存されているディレクトリをコピーしてください。
<%RESIN_OLD_HOME%/solr/%コア名%/solrconfig.xml>の dataDir に指定しているディレクトリを変更していない場合
<%xxx_HOME%/solr/%コア名%> ディレクトリ配下に data ディレクトリがあるため、手順2でコピー済みです。<%RESIN_OLD_HOME%/solr/%コア名%/solrconfig.xml>の dataDir に指定しているディレクトリを変更していない場合
複数のコアを設定している場合はそれぞれのディレクトリと <solrconfig.xml> の dataDir の設定を確認してください。ホームロケーションの設定
<%RESIN_NEW_HOME%/conf/resin.xml> の </resin> の前に以下の内容を追加します。
<env-entry> <env-entry-name>solr/home</env-entry-name> <env-entry-type>java.lang.String</env-entry-type> <env-entry-value>./solr</env-entry-value> </env-entry>その他環境設定
Resin の設定をデフォルト設定から変更している場合は、移行先の環境に合わせて変更してください。
Resinの起動
Resin を起動し、正常に起動されることを確認してください。
Solr管理画面の確認
ブラウザでSolr管理画面が表示できることを確認してください。
http://<HOST>:<PORT>/solr/default/admin/
6.2.3. Jettyを利用している場合¶
Jetty でSolrサーバを構築している場合のデータ移行手順について説明します。
- 作業は必ず Jetty を停止させている状態で開始してください。
- 移行元の Jetty のインストールディレクトリを %JETTY_OLD_HOME% と表記します。
- 移行先の Jetty のインストールディレクトリを %JETTY_NEW_HOME% と表記します。
- 移行先の Jetty は弊社提供のセットアップツールで構築されている環境とします。
%JETTY_OLD_HOME%: 移行元の Jetty のインストールディレクトリ %JETTY_NEW_HOME%: 移行先の Jetty のインストールディレクトリ
solrディレクトリのコピー
<%JETTY_OLD_HOME%/solr> ディレクトリを <%JETTY_NEW_HOME%> ディレクトリ配下にコピーします。
インデックス保存ディレクトリのコピー
インデックスが保存されているディレクトリをコピーしてください。
<%JETTY_OLD_HOME%/solr/%コア名%/solrconfig.xml>の dataDir に指定しているディレクトリを変更していない場合
<%xxx_HOME%/solr/%コア名%> ディレクトリ配下に data ディレクトリがあるため、手順2でコピー済みです。<%JETTY_OLD_HOME%/solr/%コア名%/solrconfig.xml>の dataDir に指定しているディレクトリを変更していない場合
複数のコアを設定している場合はそれぞれのディレクトリと <solrconfig.xml> の dataDir の設定を確認してください。その他環境設定
Jetty の設定をデフォルト設定から変更している場合は、移行先の環境に合わせて変更してください。
Jettyの起動
Jetty を起動し、正常に起動されることを確認してください。
Solr管理画面の確認
ブラウザでSolr管理画面が表示できることを確認してください。
http://<HOST>:<PORT>/solr/default/admin/
6.3. Solrのバックアップ¶
solrディレクトリのバックアップ
%SOLR_HOME% ディレクトリをバックアップしてください。<solrconfig.xml> の dataDir の指定を変更していない場合は %SOLR_HOME% ディレクトリに設定ファイルとインデックスが保存されているため、下記の手順を行う必要はありません。インデックスのバックアップ
インデックスが保存されているディレクトリをバックアップしてください。複数のコアを設定している場合はそれぞれの <solrconfig.xml> の dataDir に指定されているディレクトリをそれぞれバックアップしてください。