本文環境:Elasticsearch7.6.2目前最先版本 centos7.X JDK1.8
elasticsearch介紹
官網:https://www.elastic.co/cn/products/elasticsearch
如上所述,Elasticsearch具備以下特點:
-
分布式,無需人工搭建集群(solr就需要人為配置,使用Zookeeper作為注冊中心)
-
Restful風格,一切API都遵循Rest原則
-
近實時搜索,數據更新在Elasticsearch中幾乎是完全同步的。
elasticsearch的安裝
出於安全考慮elasticsearch默認不允許使用root賬戶運行
創建新的賬戶
useradd 新的用戶名
設置密碼
passwd 新密碼 #如果提示密碼長度或者安全等級不夠,輸入兩次相同的密碼,也可以創建成功
切換用戶:
su - 創建的新用戶名 #- 代表切換環境到新的用戶下面的環境
上傳壓縮包到linux上
解壓縮
tar -xvf elasticsearch-7.6.2-linux-x86_64.tar.gz
將目錄重命名
mv 解壓后的文件名 elasticsearch
進入文件查看目錄結構
配置
進入config文件夾開始配置
-
jvm.options
編輯jvm.options:
vim jvm.options
默認配置如下:
-Xms1g
-Xmx1g
內存占用太多了,我們調小一些:
-Xms512m
-Xmx512m
-
elasticsearch.yml
vim elasticsearch.yml
-
修改數據和日志目錄:
path.data: /home/新用戶名稱/elasticsearch/data # 數據目錄位置
path.logs: /home/新用戶名稱/elasticsearch/logs # 日志目錄位置
我們把data和logs目錄修改指向了elasticsearch的安裝目錄。但是這兩個目錄並不存在,因此我們需要創建出來。
進入elasticsearch的根目錄,然后創建:
mkdir data mkdir logs
network.host: 0.0.0.0 # 綁定到0.0.0.0,允許任何ip來訪問
默認只允許本機訪問,修改為0.0.0.0后則可以遠程訪問
屬性名 | 說明 |
---|---|
cluster.name | 配置elasticsearch的集群名稱,默認是elasticsearch。建議修改成一個有意義的名稱。 |
node.name | 節點名,es會默認隨機指定一個名字,建議指定一個有意義的名稱,方便管理 |
path.conf | 設置配置文件的存儲路徑,tar或zip包安裝默認在es根目錄下的config文件夾,rpm安裝默認在/etc/ elasticsearch |
path.data | 設置索引數據的存儲路徑,默認是es根目錄下的data文件夾,可以設置多個存儲路徑,用逗號隔開 |
path.logs | 設置日志文件的存儲路徑,默認是es根目錄下的logs文件夾 |
path.plugins | 設置插件的存放路徑,默認是es根目錄下的plugins文件夾 |
bootstrap.memory_lock | 設置為true可以鎖住ES使用的內存,避免內存進行swap |
network.host | 設置bind_host和publish_host,設置為0.0.0.0允許外網訪問 |
http.port | 設置對外服務的http端口,默認為9200。 |
transport.tcp.port | 集群結點之間通信端口 |
discovery.zen.ping.timeout | 設置ES自動發現節點連接超時的時間,默認為3秒,如果網絡延遲高可設置大些 |
discovery.zen.minimum_master_nodes | 主結點數量的最少值 ,此值的公式為:(master_eligible_nodes / 2) + 1 ,比如:有3個符合要求的主結點,那么這里要設置為2 |
運行
進入bin目錄運行
./elasticsearch