Linux(centos7) Elasticsearch6.5叢集安裝與Kibana視覺化
必須要先安全JDK1.8或以上版本,記憶體配置1G以上,最好2G
https://www.elastic.co/cn/downloads/elasticsearch#ga-release 官網下載tar
上傳到linux 解壓
tar -zxvf elasticsearch-6.5.0.tar.gz
進行bin目錄
cd elasticsearch-6.5.0/bin/
啟動ES
./elasticsearch
報錯:因為es不能使用root使用者啟動
新建使用者 myes
adduser myes
給使用者操作elasticsearch資料夾的許可權(若要修改es資料和日誌的儲存路徑,也需要對對應資料夾授權)
chown -R myes /data/elasticsearch-6.5.0
切換到myes使用者
su myes
啟動ES
./elasticsearch
但是無法訪問,進入到配置檔案
cd elasticsearch-6.5.0/config/
修改成0.0.0.0
重啟ES (查詢程序ps -ef|grep elasticsearch kill -9 21667)
又報錯了
報了【1】 【2】兩個錯誤
[1]解決方案
切換到root使用者,編輯limits.conf新增類似如下內容
vi /etc/security/limits.conf
新增如下內容:
* soft nofile 65536
* hard nofile 65536
* soft nproc 4096
* hard nproc 4096
儲存後重啟系統讓修改生效
[2]解決方案
[2]錯誤是因為作業系統的vm.max_map_count引數設定太小導致的:
切換到root使用者修改配置sysctl.conf
vi /etc/sysctl.conf
新增下面配置:
vm.max_map_count=262144
並執行命令,讓修改生效:
sysctl -p
執行sysctl -a | grep "vm.max_map_count"命令檢視修改是否生效
切換到es使用者,重啟es,啟動成功 -d表示後臺啟動
./elasticsearch -d
//臨時關閉
systemctl stop firewalld
//禁止開機啟動
systemctl disable firewalld
Kibana安裝
https://www.elastic.co/downloads/kibana 下載並上傳到linux
tar -zxvf kibana-6.5.1-linux-x86_64.tar.gz
修改kibana配置檔案 elasticsearch.url必須是主節點的url
vi kibana-6.5.1-linux-x86_64/config/kibana.yml
elasticsearch.url必須是主節點的url
啟動kibana服務
./kibana-6.5.1-linux-x86_64/bin/kibana
啟動成功
後臺啟動
nohup ./kibana-6.5.1-linux-x86_64/bin/kibana &
訪問地址 192.168.79.130:5601
ES未啟動
修改ES的配置檔案
#新增下面配置
#network.host 繫結ip
network.host: 127.0.0.1
.讓kibana外掛能夠連線訪問(配置允許跨域訪問)
http.cors.enabled: true
http.cors.allow-origin: "*"
啟動ES
成功
Elasticsearch6.5叢集配置 1主2從
分散式叢集配置(設定主從關係)
master主節點配置
#叢集名稱cluster.name: wali
#指定該服務為指揮官角色
node.name: master
node.master: true
#繫結的ip network.host: 127.0.0.1
設定從機配置:2個從
同主機安裝一樣,在新目錄安裝elasticsearch,並將目錄名設定為es_slave1 ...
cp -r elasticsearch-6.5.0 es_slave1
cp -r elasticsearch-6.5.0 es_slave2
修改yml檔案配置
#叢集名稱,需要和主機的保持一致
es_slave1配置
cluster.name: wali
#設定節點名稱
node.name: slave1
#設定ip
network.host: 127.0.0.1
#指定服務啟動埠 因為預設埠號(9200)被主節點佔用了
http.port: 8200
#找到叢集中的master
discovery.zen.ping.unicast.hosts: ["127.0.0.1"]
es_slave2配置
cluster.name: wali
#設定節點名稱
node.name: slave2
#設定ip
network.host: 127.0.0.1
#指定服務啟動埠 因為預設埠號(9200)被主節點佔用了
http.port: 8300
#找到叢集中的master
discovery.zen.ping.unicast.hosts: ["127.0.0.1"]
給myes使用者配置許可權
chown -R myes /data/es_slave1
chown -R myes /data/es_slave2
直接啟動 slave會報錯
是因為複製的elasticsearch資料夾下包含了data檔案中主節點資料,需要把從節點data檔案下的檔案清空。
啟動master和slave1
啟動slave2時報錯,記憶體不足failed; error='Cannot allocate memory' (errno=12)
進行slave2的配置檔案config 把記憶體修改小一點
vi jvm.options
啟動 3臺ES 大功告成