如何在Ubuntu 20.04上安裝Elasticsearch

Elasticsearch是一個開源的分布式全文本搜索和分析引擎。 它支持RESTful操作,並允許您實時存儲,搜索和分析大量數據。 Elasticsearch是最流行的搜索引擎之一,可為具有複雜搜索要求的應用程序提供動力,例如大型電子商務商店和分析應用程序。

本指南說明了如何在Ubuntu 20.04上安裝Elasticsearch。

安裝Elasticsearch#

在Ubuntu上安裝Elasticsearch非常簡單。 我們將啟用Elasticsearch存儲庫,導入存儲庫GPG密鑰,然後安裝Elasticsearch服務器。

Elasticsearch軟件包隨附OpenJDK的捆綁版本,因此您不必安裝Java。

首先,更新程序包索引並安裝添加新的HTTPS存儲庫所需的依賴項:

sudo apt updatesudo apt install apt-transport-https ca-certificates wget

導入存儲庫的GPG密鑰:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

上面的命令應該輸出 OK,這意味着密鑰已成功導入,並且來自此存儲庫的軟件包將被視為受信任的軟件包。

接下來,通過發出以下命令將Elasticsearch存儲庫添加到系統中:

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:

sudo apt updatesudo apt install elasticsearch

安裝過程完成後,Elasticsearch服務將不會自動啟動。 要啟動服務並啟用服務運行,請執行以下操作:

sudo systemctl enable --now elasticsearch.service

要驗證Elasticsearch是否正在運行,請使用 curl 發送HTTP請求到端口 9200 在本地主機上:

curl -X GET "localhost:9200/"

您應該看到類似於以下內容:

{
  "name" : "vagrant",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "IJqDxPfXSrmFQ27KbXbRIg",
  "version" : {
    "number" : "7.8.0",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "757314695644ea9a1dc2fecd26d1a43856725e65",
    "build_date" : "2020-06-14T19:35:50.234439Z",
    "build_snapshot" : false,
    "lucene_version" : "8.5.1",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

服務可能需要5到10秒鐘才能啟動。 如果你看到 curl: (7) Failed to connect to localhost port 9200: Connection refused,請等待幾秒鐘,然後重試。

要查看Elasticsearch服務記錄的消息,請使用以下命令:

sudo journalctl -u 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.121.0/24 子網,您將運行以下命令:

sudo ufw allow proto tcp from 192.168.121.0/24 to any port 6379

一旦配置了防火牆,下一步就是編輯Elasticsearch配置並允許Elasticsearch偵聽外部連接。

為此,請打開 elasticsearch.yml 配置文件:

sudo nano /etc/elasticsearch/elasticsearch.yml

搜索包含以下內容的行 network.host,取消注釋,然後將值更改為 0.0.0.0

/etc/elasticsearch/elasticsearch.yml

network.host: 0.0.0.0

如果您的計算機上有多個網絡接口,請指定接口IP地址以強制Elasticsearch僅偵聽給定的接口。

重新啟動Elasticsearch服務,以使更改生效:

sudo systemctl restart elasticsearch

而已。 您現在可以從遠程位置連接到Elasticsearch服務器。

結論#

我們已經向您展示了如何在Ubuntu 20.04上安裝Elasticsearch。

要了解有關Elasticsearch的更多信息,請訪問官方文檔頁面。

如果您遇到問題或有反饋,請在下面發表評論。

Java ElasticSearch數據庫Ubuntu

Sidebar