系統概述
1、三台測試服務器集群:
10.2.24.61
10.2.24.62
10.2.24.63
2、操作系統:centos 7
3、JDK 版本:1.8.0
4、Elasticsearch版本: 2.3.5
5、Analysis-ik 版本:1.9.5
ElasticSearch 安裝
安裝JDK
1、下載JDK 1.8 版本
下載地址:https://edelivery.oracle.com/osdc-otn/otn-pub/java/jdk/8u101-b13/jdk-8u101-linux-x64.tar.gz
解壓,移動到/usr中(jdk安裝到/usr/java目錄中)
tar -vxf jdk-8u101-linux-x64.tar
mv jdk-8u101-linux-x64 /usr
mv jdk-8u101-linux-x64 /usr/java
2、配置java路徑
vim /etc/profile
追加內容:
JAVA_HOME=/usr/java
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
3、刷新
source /etc/profile
至此JDK安裝
安裝Elasticsearc
1、創建啟動ElasticSearch用戶(啟動服務不能使用 root 賬戶)
[root@localhost]# groupadd elk
[root@localhost]# useradd elk -g elk -p elasticsearch
[root@localhost]# passwd elk
2、創建elastic 的安裝目錄和數據存儲已經日志目錄
[root@localhost]# mkdir -p /data/elastic
[root@localhost]# mkdir -p /data/elasticData
[root@localhost]# mv elasticsearch-2.3.5 /data/elastic/
[root@localhost]# chown -R elk.elk /data/elastic
[root@localhost]# chown -R elk.elk /data/elasticData
[root@localhost]# su elk
[root@localhost]# cd /data/elastic/elasticsearch-2.3.5
3、配置Elasticsearch,三台機器集群搭建
修改配置文件
vim config/elasticsearch.yml
*集群名: cluster.name, 注意: 兩台機器配置一致
cluster.name: hxsd_es
*節點名: node.name, 注意: 兩台機器配置不同, 一台為01, 另一台為02,依次類推
# 第一台機器
node.name: hxsd_es_node_01
# 第二台機器
node.name: hxsd_es_node_02
*數據存儲路徑: path.data
path.data: /data/elasticData/
*日志路徑: path.logs
path.logs: /data/elasticData/logs
*LockMemory
bootstrap.mlockall: true
- 本機ip: network.host, 對應機器的內網ip
** 第一台機器
network.host: 10.2.24.61
** 第二台機器
network.host: 10.2.24.62
......
*Discovery配置: 注意這里是兩台機器內網ip+9300端口, 注意這里minimum_master_nodes=3
discovery.zen.ping.unicast.hosts: ["10.2.24.61:9300", "10.2.24.62:9300","10.2.24.63:9300"]
*gatewary配置:
gateway.recover_after_nodes: 2
gateway.recover_after_time: 5m
gateway.expected_nodes: 1
*新增其他配置到文件末尾, 根據需求加, 這里用到了script, 同時增大了recovery的配置
script.engine.groovy.inline.search: on
script.engine.groovy.inline.aggs: on
indices.recovery.max_bytes_per_sec: 100mb
indices.recovery.concurrent_streams: 10
4、設置es占用內存
*修改文件bin/elasticsearch.in.sh, 將文件如下變量變更為4g(根據自身機器配置, 配置的內存最大不超過機器物理內存的75%. 兩個變量值相等, 以獲取最大的性能)
ES_MIN_MEM=4g
ES_MAX_MEM=4g
*修改centos配置: /etc/security/limits.conf, 以便啟用memlock, 提升性能,加入, 注意, 示例中用戶為elk
vim /etc/security/limits.conf
追加內容:
elk soft memlock unlimited
elk hard memlock unlimited
啟動服務
切換到上面創建的elk用戶,進行啟動測試,看有沒有報錯提示
su elk
./bin/elasticsearch
后台維護進程啟動服務
./bin/elasticsearch -d -p es.pid