ELK之ELASTICSEARCH 集群搭建
ELK之ELASTICSEARCH 集群搭建
1.已经安装好jdk,jdk版本8 及 8+
2.下载解压elasticsearch tar文件 并解压
3.修改配置文件,主要是config 目录下的elasticsearch.yml & jvm.options
3.1 elasticsearch.yml
cluster.name #集群名称,在一个集群中的节点集群名称需一致
node.name #为集群中每个节点起不通的名字,区别各个节点
node.master: true #尽量配置机器差的节点为主节点,如果只有两台则另外一个节点配置为false
node.data: true #
path.data: /var/lib/elasticsearch # 数据的默认存放路径
path.logs: /var/log/elasticsearch # 日志的默认存放路径
network.host # 当前节点的IP,如果IP不变,则直接配置为本机IP,若IP会变,则配置为0.0.0.0
http.port : 9200 #对外提供服务的端口,9300是集群服务的端口
transport.tcp.port: 9300
discovery.zen.ping.unicast.hosts: ["172.18.68.11", "172.18.68.12","172.18.68.13:port"] # 用来解析集群中各节点,如果是同一台机器则IP后可以跟端口,默认是9200
discovery.zen.minimum_master_nodes: 2 #为避免脑裂 ,集群中master节点最少为n/2+1,若只有2各节点,则配置为1
#配置es 可以跨域访问,使head插件可以访问
http.cors.enabled: true
http.cors.allow-origin: "*"
bootstrap.system_call_filter: false
3.2 jvm.options
修改 -Xms -Xmx 都为1G
JVM最大/最小内存,太小会导致elastic search 刚启动就停止,太大会拖慢系统
4.启动注意事项
4.1. 不能在root用户下启动
4.2. 另外还会报其他的错误,解决方法如下
vi /etc/security/limits.conf
添加:用户名 hard nofile 655360
用户名 soft nofile 655360
vi /etc/security/limits.d/20-nproc.conf 或者是90-nproc.conf
添加: * soft nproc 4096 或2048
vi /etc/sysctl.conf
添加:vm.max_map_count=655360
并执行sysctl -p 使上面的修改生效
至此启动elasticsearch各节点,一个集群搭建完毕。
本人此次搭建是在一台机器两个节点,当启动第一个节点后会提示没有发现足够的master节点,启动第二个节点之后这个警告会消失,这个集群的就搭建成功了。