es 5.x安裝與優化
- es 5.x安裝與優化
- 1、jdk版本要求
- 2、安裝步驟
- a、建立組與賬戶
- b、給相應的目錄權限
- c、修改作業系統的配置檔案,否則無法正常啟動
- d、es配置 (Windows 使用者直接從這裡開始)
- e、基本優化
- f、啟動
- g、性能和叢集監控
1、jdk版本要求
a、 要求JDK至少1.8+
b、作業系統最好用
linux
,建議
CentOS
2、安裝步驟
es從2.x開始禁止直接使用
root
使用者啟動,必須獨立建立賬号。
a、建立組與賬戶
groupadd elastic
useradd elastic -g elastic -p elastic_pass
b、給相應的目錄權限
chown -R elastic:elastic /ssd
chown -R elastic:elastic /home/elasticsearch-5.6.5
上面的
/ssd
是es資料存儲的目錄
第二行是
es
的存儲位置。
c、修改作業系統的配置檔案,否則無法正常啟動
修改
/etc/security/limits.conf
配置檔案,在末尾追加以下配置
* soft memlock unlimited
* hard memlock unlimited
* hard nofile 65536
* soft nofile 65536
執行以下操作,修改
/etc/sysctl.conf
配置檔案
cat /etc/sysctl.conf | grep -v "vm.max_map_count" > /tmp/system_sysctl.conf
echo "vm.max_map_count=262144" >> /tmp/system_sysctl.conf
mv /tmp/system_sysctl.conf /etc/sysctl.conf
d、es配置 (Windows 使用者直接從這裡開始)
修改
elasticsearch-5.6.5/config/jvm.options
配置檔案
配置 jvm 最大堆 , 和最小堆
以下是預設配置
-Xms2g
-Xmx2g
需要修改為(一般為伺服器實體記憶體的一半)
-Xms16g
-Xmx16g
修改
elasticsearch-5.6.5/config/elasticsearch.yml
配置檔案
(1) 找到
#claster.name
,去掉前面的#号(#号是注釋),然後修改
cluster.name
,這個名稱可以随便,例如:
elastic
或
similar
之類的,
cluster.name: elastic
(2) 找到
#path.data
,預設情況下索引是存放在
elasticsearch/5.6.5/data
下面的,但我們需要修改為
ssd
下面,是以修改為
path.data: /ssd/elastic/
(3) 找到
#node.name
,這裡是配置節點名稱,預設情況下,是随機生成的,為了友善檢視和管理,修改為
node.name: ${HOSTNAME}
(4) 找到
#bootstrap.memory_lock: true
這裡去掉注釋#号即可
(5) 找到
#network.host:
,去掉注釋并且修改為
network.host: 0.0.0.0
(6) 找到
# discovery.zen.ping.unicast.hosts: ["host1", "host2"]
,去掉注釋,裡面的ip則修改為部分機器即可,從安全和穩定的角度,建議每台機器配第1個節點即可。(這裡是用于配置
Mater
節點選舉的,也就是
Master
會從這些節點中選舉,其它節點與這些節點通訊,走的是單點傳播)
(7) 在其中幾台機器的(或都增加也行)配置檔案尾部增加
http.cors.enabled: true
http.cors.allow-origin: "*"
這個主要是便于監控插件走http協定擷取相關資料
e、基本優化
(1) 如果是内網可以直接關掉防火牆,如果安全較高,則需要将9200-9300這個範圍加入防火牆例外。
(2) 所有機器關閉
swap
,
swapoff -a
f、啟動
(1) 使用
root
執行
sysctl -p
(以前一直使用1.x,最近更新至這個版本,目前發前每次啟動前必須執行這個指令,還沒有找到可以不用每次執行的方法)
(2) 使用
elastic
使用者切換到
elasticsearch-5.6.5/bin
下,然後執行
./elasticsearch -d
,這裡的
-d
是以背景方式運作
g、性能和叢集監控
由于官方的
Xpack
需要收費,是以一直使用
elasticsearch-head
和
elasticsearch-bigdesk
監控叢集,下載下傳與使用位址分别是:
https://github.com/mobz/elasticsearch-head
、
https://github.com/hlstudio/bigdesk
elasticsearch-head
elasticsearch 5.x 以後 不支援插件, 必須單獨起一個服務
bigdesk
我們目錄沒有使用es插件的方式,而是直接以
python
的方式運作獨立站點,操作方法如下:
cd bigdesk/_site/
python -m SimpleHTTPServer
然後通路8000端口即可。