Linux で分散型全文検索エンジンをインストールして展開する方法

Linux で分散型全文検索エンジンをインストールして展開する方法

Elasticsearch は、オープンソースの分散型全文検索および分析エンジンです。 RESTful 操作をサポートし、大量のデータをリアルタイムで保存、検索、分析できます。 Elasticsearch は、大規模な電子商取引ストアや分析アプリケーションなど、複雑な検索要件を持つアプリケーションを強化する最も人気のある検索エンジンの 1 つです。

このガイドでは、Ubuntu 20.04 に Elasticsearch をインストールする方法について説明します。

Elasticsearchをインストールする

Ubuntu に Elasticsearch をインストールするのは非常に簡単です。 Elasticsearch リポジトリを有効にし、リポジトリ GPG キーをインポートして、Elasticsearch サーバーをインストールします。

Elasticsearch パッケージには OpenJDK のバンドルバージョンが付属しているため、Java をインストールする必要はありません。

まず、パッケージ インデックスを更新し、新しい HTTPS リポジトリを追加するために必要な依存関係をインストールします。

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt update  
  2. linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install apt-transport-https ca-certificates wget

リポジトリの GPG キーをインポートします。

  1. linuxmi@linuxmi:~/www.linuxmi.com$ wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-keyを追加 -

上記のコマンドは OK を出力するはずです。これは、キーが正常にインポートされ、このリポジトリからのパッケージが信頼できるパッケージとみなされることを意味します。

次に、次のコマンドを実行して、Elasticsearch リポジトリをシステムに追加します。

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'

以前のバージョンの Elasticsearch をインストールする場合は、上記のコマンドで 7.x を目的のバージョンに変更します。

リポジトリが有効になったら、次のように入力して Elasticsearch をインストールします。

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt update

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install elasticsearch

インストールプロセスが完了した後、Elasticsearch サービスは自動的に起動しません。サービスを開始して実行できるようにするには:

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo systemctl enable --now elasticsearch.service  
  2. elasticsearch.service の状態を /lib/systemd/systemd-sysv-install の SysV サービス スクリプトと同期しています。  
  3. 実行中: /lib/systemd/systemd-sysv-install enable elasticsearch  
  4. /etc/systemd/system/multi-user.target.wants/elasticsearch.service → /lib/systemd/system/elasticsearch.service のシンボリックリンクを作成しました。

Elasticsearch が実行中であることを確認するには、curl を使用して、localhost のポート 9200 に HTTP リクエストを送信します。

  1. linuxmi@linuxmi:~/www.linuxmi.com$ curl -X GET "localhost:9200/"

次のような画面が表示されます。

  1. {  
  2. 「名前」:「linuxmi」、  
  3. 「クラスター名」:「elasticsearch」、  
  4. "クラスタUUID" : "VnSPAJorQXiyYUTtCzoEQQ",  
  5. 「バージョン」: {  
  6. "番号" : "7.8.1",  
  7. "build_flavor" : "デフォルト",  
  8. "ビルドタイプ" : "deb",  
  9. "ビルドハッシュ" : "b5ca9c58fb664ca8bf9e4057fc229b3396bf3a89",  
  10. 「ビルド日付」:「2020-07-21T16:40:44.668009Z」、  
  11. "build_snapshot" : 偽、  
  12. "lucene_version" : "8.5.1",  
  13. "最小ワイヤ互換性バージョン" : "6.8.0",  
  14. "最小インデックス互換性バージョン" : "6.0.0-beta1"  
  15. },  
  16. 「タグライン」:「検索用です」  
  17. }

サービスの起動には 5 ~ 10 秒かかる場合があります。 curl: (7) ローカルホストのポート9200への接続に失敗しました: 接続が拒否されました と表示された場合は、数秒待ってからもう一度お試しください。

Elasticsearch サービスによって記録されたメッセージを表示するには、次のコマンドを使用します。

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo journalctl -u elasticsearch

[sudo] linuxmi パスワード:

  1. -- ログは 2020-05-28 14:51:20 CST に始まり、2020-07-30 04:03:45 CS に終わります>    
  2. 7月30日 03:43:33 linuxmi systemd[1]: Elasticsearchを起動しています...  
  3. 7月30日 03:44:30 linuxmi systemd[1]: Elasticsearchを開始しました。

はい、以上です。 Elasticsearch が Ubuntu サーバーにインストールされました。

Elasticsearch を構成する

Elasticsearch データは /var/lib/elasticsearch ディレクトリに保存されます。設定ファイルは /etc/elasticsearch にあり、Java 起動オプションは /etc/default/elasticsearch ファイルで設定できます。

デフォルトでは、Elasticsearch はローカルホストでのみリッスンするように設定されています。データベースに接続するクライアントも同じホスト上で実行されており、単一ノード クラスターを設定している場合は、デフォルトの構成ファイルを変更する必要はありません。

リモートアクセス

Elasticsearch はそのままでは認証を実装していないため、HTTP API にアクセスできるユーザーなら誰でもアクセスできます。

Elasticsearch サーバーへのリモート アクセスを許可するには、ファイアウォールを構成し、TCP ポート 6379 を開く必要があります。

通常、特定の IP アドレスまたは IP 範囲からの Redis サーバーへのアクセスのみを許可します。たとえば、192.168.135.0/24 サブネットからの接続のみを許可するには、次のコマンドを実行します。

  1. sudo ufw は 192.168.135.0/24 から任意のポート 6379 へのプロトコル tcp を許可します。

ファイアウォールが設定されたら、次のステップは Elasticsearch 設定を編集し、Elasticsearch が外部接続をリッスンできるようにすることです。

これを行うには、elasticsearch.yml 構成ファイルを開きます。

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo nano /etc/elasticsearch/elasticsearch.yml

network.host を含む行を検索し、コメントを解除して、値を 0.0.0.0 に変更します。

ネットワークホスト: 0.0.0.0

マシンに複数のネットワーク インターフェイスがある場合は、インターフェイスの IP アドレスを指定して、Elasticsearch が指定されたインターフェイスのみをリッスンするように強制します。

変更を有効にするには、Elasticsearch サービスを再起動します。

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo systemctl elasticsearchを再起動します

わかりました。これで、リモートの場所から Elasticsearch サーバーに接続できるようになりました。

要約する

Ubuntu 20.04 に Elasticsearch をインストールする方法を説明しました。

Elasticsearch の詳細については、公式ドキュメント ページをご覧ください。

<<:  クラウドコンピューティング業界の観点から見た同国の「新インフラ」

>>:  面接官は、9 つ​​の分散 ID 生成方法を一​​気に述べたときに少し困惑しました。

推薦する

百度はネガティブな情報を排除する方法を知っている

最近、会社のWeiboマーケティングとメールマーケティングを担当しているので、Weiboマーケティン...

さまざまな SEO 最適化ツールの長所と短所

さまざまなSEO最適化ツールの長所と短所が明らかに序文:この期間中、建美学者は多くのSEO最適化グル...

ストックウェブサイト構築のヒント

市場経済の発展に伴い、垂直産業の細分化の傾向がますます顕著になっています。多くの業界の中で、株式や金...

クラウド サービス アーキテクチャの完全ガイド

約 16 年間の進化を経て、クラウド コンピューティングはほぼすべてのインターネット ユーザーが使用...

A5版チャットプレビュー:高品質なウェブサイト外部リンクの作成方法(ゲスト:He Guijiang)

SEO プロセスでは、外部リンクが大きな割合を占めます。ウェブサイトのランキングを向上させ、インクル...

Python スクリプトを使用して OpenStack Overcloud の問題を発見する

[[314897]] LogTool は、オーバークラウド ノードの問題の根本原因を見つけるのに役立...

ファンタジーから現実へ、VRの台頭

[[439872]]メタバースの普及により、仮想空間への入り口であるVR(バーチャルリアリティ)が再...

10か月間のウェブサイトBaiduの重み値8の例図

以前、あるウェブマスターのウェブサイトで、そのウェブサイトのウェイトが 8 で、わずか 10 か月で...

ヤフー、メキシコで27億ドルの訴訟後、低価格で和解

網易科技ニュース、12月6日、ロイター通信によると、メキシコでヤフーに対し27億ドルの損害賠償を求め...

eBPF ソケット レベル リダイレクトのカーネル実装の詳細を図解します。

みなさんこんにちは。私は次男です。最近eBPFを勉強しています。研究が深まるにつれ、以前書いた記事に...

カマテラはどうですか?イスラエルのクラウド サーバー レビュー、Roshhaayin データ センター

Kamateraはイスラエルのロシャインに自社データセンターを構え、主にイスラエルのクラウドサーバー...

無料のインターネットマーケティングはどこから来るのでしょうか?

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますインターネ...

SEO 最適化は継続的な作業です。前進しなければ、遅れをとることになります。

現在、多くのウェブマスターが SEO 最適化を行っていますが、SEO において無数の専門家が常に強調...

360百科事典とSoso百科事典のエントリの作成に関する簡単な説明

今日、フォーラムで誰かが 360 百科事典が編集用に公開されたと言っているのを見たので、360 百科...

単一のキーワードでランク付けする方法

多くの場合、サイト内のキーワードのランキングを一つずつ突破する方法に直面します。Dingsuの旗艦店...