Elasticsearchをソースからビルドして動かしてみる
TL;DR
オープンソースの全文検索エンジンであるElasticsearchは、GitHubにソースコードが公開されています。
Elasticsearch
今回は、このソースコードからElasticsearchをビルドし、動かしてみました。
また、Elasticsearchの可視化ツールであるelasticsearch-headの動かし方や設定も記載します。
(内容は、ほぼほぼ備忘録です)
Elasticsearchをビルド
まず、GitHubからソースコードをクローンします。
git clone https://github.com/elastic/elasticsearch.git
そして、ビルドを実行。ビルドには、Gradleを使用します。Linuxユーザの場合、sdkmanなどでインストールしておきましょう。
また、JavaはJDK14以上が必要です。(JDK11ではビルドに失敗するので注意)
なお、ビルド手順はGitHubのREADMEにも記載されています。
cd elasticsearch
./gradlew localDistro
ビルドに成功すると、buildディレクトリ以下にモジュールが作成されます。
Elasticsearchの実行
ビルドされたモジュールを実行します。
cd build/distribution/local/elasticsearch-8.0.0-SNAPSHOT/ # パスは環境によって異なります
./bin/elasticsearch
正常に実行できているかは、以下のようにHTTPリクエストを送信して確認します。
curl -X GET http://localhost:9200/
elasticsearch-headの起動
elasticsearch-headを使い、ブラウザから可視化をしてみます。
まず、elasticsearch-headをダウンロード
git clone https://github.com/mobz/elasticsearch-head.git
npm
コマンドでサーバを起動します。
cd elasticsearch-head
npm install
npm run start
サーバの起動後、http://localhost:9100
にブラウザでアクセスします。
localhost以外からアクセスする時の設定
Elasticsearchは、デフォルトではlocalhost以外からのアクセスはできなくなっています。そのため、以下の設定をElasticsearch本体のconfig配下にあるelasticsearch.yml
に追加します。
# CORSの有効化
http.cors.enabled: true
http.cors.allow-origin: "*"
# 外部からのアクセスの有効化
network.host: 0.0.0.0
http.port: 9200
transport.host: localhost
参考サイト
Author And Source
この問題について(Elasticsearchをソースからビルドして動かしてみる), 我々は、より多くの情報をここで見つけました https://qiita.com/mataneko_boy/items/da712fd9569263e633cb著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .