Apache Solr · 2 min read · Sep 09, 2025

Ubuntu 24.04 サーバーに Apache Solr をインストールする方法

Apache Solr は、Apache Lucene に基づいて構築されたオープンソースの検索プラットフォームであり、強力なアプリケーション検索およびインデックス作成機能を作成するために設計されています。高度な全文検索、ファセット検索、リアルタイムインデックス作成、分散検索を提供し、検索エンジンやデータ取得システムの構築に人気の選択肢となっています。

Solr は非常にスケーラブルで、大量のデータに最適化されており、ウェブサイト検索、eコマース、ビッグデータ分析などのタスクに企業環境でよく使用されます。その REST ライクな API は他のシステムとの統合を容易にし、クエリの提案のハイライトや地理空間検索などの機能をサポートしています。Solr の柔軟性、パフォーマンス、コミュニティサポートは、堅牢な検索機能を必要とする組織にとっての主要なソリューションとなっています。

このガイドでは、Ubuntu 24.04 サーバーに Apache Solr をインストールする方法を学びます。さらに、Apache Solr を BasicAuthentication で保護し、solr コマンドラインを使用して最初のコレクションを作成する方法も学びます。

前提条件

このガイドを始める前に、以下のものを用意してください:

  • Ubuntu 24.04 サーバー
  • 管理者権限を持つ非ルートユーザー

Ubuntu サーバーの準備

Apache Solr をインストールする前に、shmmaxnr_hugepages をカーネルパラメータで増加させ、デフォルトの最大オープンファイル数とプロセス数を増加させることで、Ubuntu システムを準備して構成しましょう。

以下のコマンドを実行して、Ubuntu サーバーで shmmaxnr_hugepages を増加させます。

sudo echo 4294967295 > /proc/sys/kernel/shmmax  
sudo echo 1536 > /proc/sys/vm/nr_hugepages

次に、以下のコマンドを実行して /etc/security/limits.conf ファイルを修正します。

sudo nano /etc/security/limits.conf

ユーザー solr の最大オープンファイル数とプロセス数を以下の設定で増加させます。

solr soft nofile 65000  
solr hard nofile 65000  
solr soft nproc 65000  
solr hard nproc 65000

ファイルを保存してエディタを終了します。

Java OpenJDK のインストール

システムを構成したので、Java OpenJDK をインストールしましょう。Apache Solr には、システムに少なくとも Java 11 がインストールされている必要があり、このガイドでは最新の安定版 Java OpenJDK バージョンを提供する default-jdk パッケージを使用します。

まず、以下のコマンドで Ubuntu パッケージインデックスを更新します。

sudo apt update

次に、以下のコマンドを使用して default-jdk パッケージをインストールします。インストールを確認するために Y を入力します。

sudo apt install default-jdk

jdk のインストール

インストールが完了したら、以下のコマンドで Java バージョンを確認します。

java --version

以下のように、Java 21 がインストールされていることが確認できます。

java バージョンの確認

Apache Solr のインストール

Ubuntu システムが構成され、Java OpenJDK がインストールされたので、Apache Solr のインストールを開始しましょう。このガイドでは、Solr パッケージが提供するインストーラスクリプトを使用して Apache Solr をインストールします。

まず、以下のコマンドを実行して curllsofbc などの基本ツールをインストールします。

sudo apt install curl lsof bc

基本パッケージのインストール

次に、以下の wget コマンドを使用して Apache Solr バイナリパッケージをダウンロードします。

wget https://www.apache.org/dyn/closer.lua/solr/solr/9.7.0/solr-9.7.0.tgz?action=download

Apache Solr パッケージの名前を変更し、以下のコマンドを使用してインストーラスクリプト install_solr_service.sh を抽出します。

mv solr-9.7.0.tgz?action=download solr-9.7.0.tgz  
tar -xf tar xzf solr-9.7.0.tgz solr-9.7.0/bin/install_solr_service.sh --strip-components=2

次に、install_solr_service.sh スクリプトを実行して Apache Solr をインストールします。

sudo bash ./install_solr_service.sh solr-9.7.0.tgz

以下に、詳細な Apache Solr インストールの情報が表示されます。

  • デフォルトのインストールディレクトリは /opt/solr ディレクトリにあります。
  • 新しいユーザー solr が自動的に作成されます。
  • Apache Solr サービスを管理するための新しいサービスファイル solr.service が作成されます。

solr のインストール

次に、以下のコマンドで solr のステータスを確認します。solractive(exited) のステータスで表示され、サービスが実行中であるが、systemd が監視するファイルを見つけられないことを意味します。

sudo systemctl status solr

solr の確認

また、以下の ss コマンドを使用してシステム上のオープンポートを確認できます。Apache Solr はポート 8893 で実行されているはずです。

ss -tulpn

Apache Solr の構成

Apache Solr がインストールされたので、/etc/default/solr.in.sh スクリプト内の Apache Solr パラメータを変更して構成しましょう。次に、デフォルトの最大メモリヒープと Apache Solr を実行するために使用する IP アドレスを増加させます。

vim エディタを使用して Solr 構成ファイル /etc/default/solr.in.sh を開きます。

sudo vim /etc/default/solr.in.sh

Apache Solr の最大メモリ割り当てでデフォルトの SOLR_HEAP オプションを変更します。この例では、4GB の RAM を使用します。

SOLR_HEAP="4g"

SOLR_HOST および SOLR_JETTY_HOST オプションにあなたの IP アドレスを入力します。この例では、Apache Solr はローカル IP アドレス 192.169.10.60 で実行されます。

SOLR_HOST="192.168.10.15"  
SOLR_JETTY_HOST="192.168.10.15"

次に、以下の systemctl コマンドを実行して Apache Solr サービスを再起動し、変更を適用します。

sudo systemctl restart solr

以下の ss コマンドを使用して、Apache Solr が使用しているオープンポートと IP アドレスを確認できます。

ss -tulpn

認証による Apache Solr のセキュリティ強化

Apache Solr を構成した後、次のステップはデプロイメントを保護することです。この例では、Apache Solr を保護するために基本認証を使用します。これは、新しいファイル /var/solr/data/security.json を作成することで行えます。

vim エディタを使用して新しい構成ファイル /var/solr/data/security.json を作成します。

sudo vim /var/solr/data/security.json

以下の構成を挿入して、Apache Solr の認証を設定し、ユーザー solr とパスワード solrRocks を作成します。

{  
 "authentication":{  
 "blockUnknown": true,  
 "class":"solr.BasicAuthPlugin",  
 "credentials":{"solr":"IV0EHq1OnNrj6gvRCwvFwTrZ1+z1oBbnQdiVC3otuq0= Ndd7LKvVBAaZIF0QAVi1ekCfAJXr1GGfLtRUXhgrF8c="},  
 "realm":"My Solr users",  
 "forwardCredentials": false  
 },  
 "authorization":{  
 "class":"solr.RuleBasedAuthorizationPlugin",  
 "permissions":[{"name":"all", "role":"admin"}],  
 "user-role":{"solr":"admin"}  
 }  
}

ファイルを保存してエディタを終了します。

次に、以下の systemctl コマンドを実行して solr サービスを再起動し、変更を適用します。

sudo systemctl restart solr

次に、ウェブブラウザを開いて、Apache Solr のインストール先 http://192.168.10.60:8983/ にアクセスします。Apache Solr のログインページにリダイレクトされます。

ログイン

ユーザー solr とパスワード solrRocks を入力すると、Apache Solr ダッシュボードが表示されます。

html

Apache Solr での最初のコレクションの作成

この段階で、Apache Solr を構成し、保護しました。次に、コマンドラインから Apache Solr で最初のコレクションを作成します。

再度、vim エディタを使用してファイル /etc/default/solr.in.sh を開きます。

sudo vim /etc/default/solr.in.sh

SOLR_AUTH_TYPESOLR_AUTHENTICATION_OPTS の行のコメントを外し、両方をデフォルトのままにします。

SOLR_AUTH_TYPE="basic"  
SOLR_AUTHENTICATION_OPTS="-Dbasicauth=solr:SolrRocks"

ファイルを保存してエディタを終了します。

次に、以下のコマンドを実行して Apache Solr サービスを再起動します。

sudo systemctl restart solr

次に、以下のコマンドを実行して、名前 my_first_index の最初のコレクションを作成します。

su - solr -c "/opt/solr/bin/solr create -c my_first_index -n MyIndex"

インデックスの作成

Apache Solr ダッシュボードに移動すると、新しいコレクション my_first_index が作成されているのが確認できます。

インデックス作成

結論

おめでとうございます!Ubuntu 24.04 サーバーに Apache Solr のインストールが完了しました。Java OpenJDK 21 でインストールし、ローカル IP アドレスで実行するように構成し、BasicAuthentication で保護しました。最後に、Solr コマンドラインを使用して最初のコレクションを作成しました。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。