Apache Solrは、Javaで書かれたオープンソースの検索プラットフォームです。 Solrは、フルテキスト検索、スペル候補、カスタムドキュメントの順序とランキング、スニペットの生成と強調表示を提供します。 Solrは、JSON、XML、多くのOfficeドキュメント、CSVなどを含む、さまざまなデータタイプをそのまま使用できます。このチュートリアルを執筆している時点では、Solr 8.5.2がインストール可能な最新バージョンです。
このチュートリアルは、CentOS / RHEL 8システムにApache Solr 8.5をインストールするのに役立ちます。
前提条件
CentOS / RHEL 8システムにsudo特権アカウントでシェルアクセス権があることを前提としています。リモートシステムの場合は、SSHクライアントでログインします。
ステップ1 – Javaをインストールする
Apache Solrの最新バージョンを実行するには、Java 8以降のバージョンが必要でした。システムがシステムのJava要件を満たしていることを確認します。そうでない場合は、次のコマンドを実行してJavaをインストールします。
sudo dnf install java-11-openjdk
次に、インストールされているJavaのバージョンを確認します。
java -version openjdk version "11.0.4" 2019-07-16 LTS OpenJDK Runtime Environment 18.9 (build 11.0.4+11-LTS) OpenJDK 64-Bit Server VM 18.9 (build 11.0.4+11-LTS, mixed mode, sharing)
ステップ2 – CentOS 8にApache Solrをインストールする
次に、必要なSolrバージョンを公式サイトまたはミラーからダウンロードします。以下のコマンドを使用して、Apache Solr 8.5.2を公式Webサイトからダウンロードすることもできます。その後、インストーラスクリプトを抽出します。
cd /tmp wget http://www-eu.apache.org/dist/lucene/solr/8.5.2/solr-8.5.2.tgz tar xzf solr-8.5.2.tgz solr-8.5.2/bin/install_solr_service.sh --strip-components=2
次に、bashシェルに続いてダウンロードしたアーカイブファイルを使用して、インストーラスクリプトを実行します。コマンドは次のようになります。
sudo bash ./install_solr_service.sh solr-8.5.2.tgz
これにより、solrという名前のアカウントがシステムに作成され、インストールプロセスが完了します。その後、サービスのデフォルトのSolrポート8983を開始します。
ステップ3 – Solrサービスを管理する
Apache Solrサービスはsystemdサービスの下で管理されます。以下のコマンドを使用して、Solrサービスの開始、停止、および状況を確認します。
sudo systemctl stop solr sudo systemctl start solr sudo systemctl status solr
ステップ4 –新しいSolrコレクションを作成する
コレクションは、単一の論理インデックスを形成するコアのグループです。コレクションには、他のコレクションとは異なる構成ファイルとスキーマ定義のセットがあります。次のコマンドを実行してコレクションを作成できます。
sudo su - solr -c "/usr/local/solr/bin/solr create -c mycol1 -n data_driven_schema_configs"
出力例:
Created new core 'mycol1'
ステップ5 – Solr管理パネルにアクセスする
デフォルトでは、Solrサーバーはポート8983で実行されます。サーバーのIPアドレスまたは8983ポートのホスト名を使用して、WebブラウザーでSolrダッシュボードにアクセスします。
http://demo.tecadmin.net:8983/
ここでは、「mycol1」という名前の前のステップで作成されたコレクションの統計を表示できます。左側のサイドバーの[コアセレクタ]をクリックして、作成したコレクションを選択します。
結論
このチュートリアルでは、CentOS / RHEL 8システムにApache Solrをインストールする方法を学びました。また、Solrサーバーに新しいコレクションを作成しました。