1.布署java环境(略) - 所有节点
2.安装elasticsearch - 所有节点
# useradd elk #elasticsearch不能以root用户运行,必须要创建一个普通用户运行
# echo 123|passwd --stdin elk
# tar xf elasticsearch-6.4.1.tar.gz
# mv elasticsearch-6.4.1 /usr/local/elasticsearch
# chown -R elk:elk /usr/local/elasticsearch
# mkdir -p /data/es-data
配置es-master
# cd /usr/local/elasticsearch/
# egrep -v "^#" config/elasticsearch.yml
cluster.name: es-cluster
node.name: master
node.master: true
node.data: true
path.data: /data/es-data
bootstrap.memory_lock: true
network.host: 0.0.0.0
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.0.11", "192.168.0.12","192.168.0.13"]
配置es-data
在master的基础上作如下修改:
node.name: data
node.master: false
node.data: true
启服: 先启动master, 再启动data
# su - elk
$ /usr/local/elasticsearch/bin/elasticsearch -d #-d 以守护进程方式运行
验证
查看端口: es服务会监听两个端口,其中9200为传输数据用,9300为集群通信用
# netstat -tanp |grep java
tcp6 0 0 :::9200 :::* LISTEN 1238/java
tcp6 0 0 :::9300 :::* LISTEN 1238/java
ERROR:
1: Caused by: java.lang.IllegalStateException: Failed to create node environment
解决:查看es-data权限是否为elk用户
2: bootstrap checks failed
解决:修改/etc/security/limits.conf在最后添加
* soft nofile 65536
* hard nofile 131072
解决办法:
vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
并执行命令:
sysctl -p
3:ERROR: bootstrap checks failed
memory locking requested for elasticsearch process but memory is not locked
解决:编辑els 配置文件
打开
discovery.zen.minimum_master_nodes: 3
编辑limit.conf
编辑sysctl.conf