一、硬件環境
假設有4台機,IP及主機名如下:
192.168.100.105 c1 192.168.100.110 c2 192.168.100.115 c3 192.168.100.120 c4
二、軟件環境
操作系統:Ubuntu Server 18.04
JDK:1.8.0
Elasticsearch:7.10.1
1.安裝JDK
https://www.cnblogs.com/live41/p/14235891.html
三、搭建Elasticsearch集群
1.下載elasticsearch
https://www.elastic.co/cn/downloads/elasticsearch
這里下載Linux x86_64版本,elasticsearch-7.10.1-linux-x86_64.tar.gz
2.上傳並解壓
這里放在/home/目錄
cd /home tar -xvf elasticsearch-7.10.1-linux-x86_64.tar.gz mv elasticsearch-7.10.1-linux-x86_64 es
3.配置elasticsearch.yml
vim es/config/elasticsearch.yml
配置以下幾個屬性:
#集群名 cluster.name: clotho #節點名(每台機配唯一的值),c2機用node-2,c3機用node-3,c4機用node-4 node.name: node-1 #數據存儲目錄 #path.data: /home/es/data #日志存儲目錄 #path.logs: /home/es/logs #監聽IP(每台機配各自的IP值),也可以配0.0.0.0 network.host: 192.168.100.105 #監聽的http端口 #http.port: 9200 #監聽的tcp端口 #transport.tcp.port: 9300 #啟用傳輸壓縮 #transport.tcp.compress: true #集群各個節點的IP discovery.seed_hosts: ["192.168.100.105", "192.168.100.110", "192.168.100.115", "192.168.100.120"] #初始化的主節點 cluster.initial_master_nodes: ["node-1", "node-2"]
* 如果使用的是域名或主機名進行互相訪問,還需要增加以下2個參數:
http.cors.enabled: true http.cors.allow-origin: "*"
4.配置jvm.options
vim es/config/jvm.options
配置JVM的最小最大使用內存
-Xms1g
-Xmx6g
5.創建運行用戶
由於ES不能使用root用戶運行,所以需要創建另外的用戶
#創建用戶組 groupadd esgroup #創建用戶並添加至用戶組 useradd es -g esgroup -s /bin/bash #設置密碼 passwd es #設置新用戶對於/es/目錄的權限 chown -R es:esgroup es
6.運行
(1) 先切換到新用戶
su es
(2) 啟動
#正常運行,退出可使用ctrl+c es/bin/elasticsearch #后台運行,退出需要用kill es/bin/elasticsearch &
(3) 關閉
* 由於es沒配置jvm路徑,所以需要先退出到root用戶,再jps查看es的進程名
exit jps kill -9 es的進程ID
7.測試
瀏覽器打開http://c1:9200
