前置條件
本環境預設是在Ubuntu21.04上操作的。
Elastic PGP 公鑰和源
在安裝之前我們需要下載和安裝公鑰,否則沒有辦法使用 apt 安裝 Elasticsearch 。
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
新增源:
sudo apt-get install apt-transport-https
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list
安裝 Elasticsearch
接下來,我們就可以更新源畢竟切裝 Es 了:
sudo apt-get update && sudo apt-get install elasticsearch
這樣就安裝好了。
Elasticsearch 命令管理
我們可以使用 systemd
方式進行 Elasticsearch 進行管理
systemd
設定開機啟動:
sudo systemctl daemon-reload
sudo systemctl enable elasticsearch
啟動:
sudo systemctl start elasticsearch
關閉:
sudo systemctl stop elasticsearch
檢測是否安裝成功:
首先我們要執行命令將其啟動(如果已經啟動了,那就不用執行下面的啟動命令了):
sudo systemctl start elasticsearch
然後執行以下命令:
curl -XGET '127.0.0.1:9200/?pretty'
如果返回的資料如下所示,即表示安裝成功了:
{
"name" : "baoguoxiao",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "UZwxDDZUTaWYXTe6g--9MQ",
"version" : {
"number" : "7.14.1",
"build_flavor" : "default",
"build_type" : "deb",
"build_hash" : "66b55ebfa59c92c15db3f69a335d500018b3331e",
"build_date" : "2021-08-26T09:01:05.390870785Z",
"build_snapshot" : false,
"lucene_version" : "8.9.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
注意: Elasticsearch 需要啟動一會。如果啟動完成立馬執行上面的命令,可以會提示拒絕連線,多試幾次就好了。
配置 Elasticsearch
Elasticsearch 預設情況下從 /etc/elasticsearch/elasticsearch.yml 檔案中載入它的配置。
Debian 包也有一個系統配置檔案(/etc/default/elasticsearch
),它允許你設定以下引數:
引數 | 解釋 |
---|---|
JAVA_HOME | 設定要使用的自定義Java路徑 |
MAX_OPEN_FILES | 開啟檔案的最大數量,預設 65536 |
MAX_LOCKED_MEMORY | 最大鎖記憶體大小。如果你在 elasticsearch.yml 中使用 bootstrap.memory_lock 選項,請設定 unlimited |
MAX_MAP_COUNT | 程式可能擁有的記憶體對映區域的最大值。如果使用 mmapfs 作為索引儲存型別,請確認將其設定為較高的值。請檢查linux核心文件關於 max_map_count 的更多資訊。這是在elasticsearch啟動之前通過 sysctl 設定的。預設是 262144 |
ES_PATH_CONF | 配置檔案目錄(需要包含 elasticsearch.yml , jvm.options 和 log4j2.properties 檔案),預設路徑是: /etc/elasticsearch |
ES_JAVA_OPTS | 你可能希望應用的任何其他 JVM 系統屬性。 |
RESTART_ON_UPGRADE | 配置軟體包升級時將會重新啟動,預設是 false 。這意味著你在手動安裝軟體包之後重啟elasticsearch例項。這樣做的原因是為了保障, 在叢集中更新時,在高流量網路和減少你叢集的響應時間的情況下導致分片的重新分配。 |
目錄佈局
型別 | 描述 | 預設路徑 | 設定 |
---|---|---|---|
home | Elasticsearch家目錄或者 $ES_HOME | /usr/share/elasticsearch | |
bin | 二進位制指令碼,包括 elasticsearch 去啟動一個節點和 elasticsearch-plugin 安裝外掛 | /usr/share/elasticsearch/bin | |
conf | 配置檔案,包含 elasticsearch.yml | /etc/elasticsearch | ES_PATH_CONF |
conf | 環境變數,包含 heap 大小,檔案描述符。 | /etc/default/elasticsearch | |
data | 在節點上分配的每個索引/分片的資料檔案的位置。 | /var/lib/elasticsearch | path.data |
jdk | 用於捆綁執行 ElasticSearch 的 JDK。可以通過在 /etc/default/elasticsearch 中設定 ES_JAVA_HOME 環境變數來覆蓋。 | /usr/share/elasticsearch/jdk | |
logs | 日誌檔案位置。 | /var/log/elasticsearch | path.logs |
plugins | 外掛檔案位置. 每個外掛將包含在一個子目錄中. | /usr/share/elasticsearch/plugins | |
repo | 共享檔案系統儲存庫位置。可以容納多個位置。檔案系統儲存庫可以放置在指定目錄中任何子目錄中。 | 不能配置 | path.repo |
這樣,ElasticSearch 的安裝就算是介紹完成了。