es-部署

https://www.elastic.co/guide/en/elasticsearch/reference/6.5/zip-targz.html#zip-targz

 

修改参数

cat /etc/sysctl.conf 

vm.max_map_count=262144
# cat /etc/security/limits.conf
root soft nofile 655350
root hard nofile 655350
* soft nofile 655360
* hard nofile 655360

  

添加用户(es不允许root启动)

并将es目录的所有权换到es用户

useradd es

 

修改目录属主

chown -R es:es elasticsearch-7.1.0

 

配置文件修改

将network.host改成其他主机可以访问的ip

 

前台启动(用于测试)

su es -c './bin/elasticsearch '

  

后台启动

su es -c './bin/elasticsearch -d -p pid'

进程 ID 记录在文件中,

要关闭es,请终止文件中记录的进程 ID:pid

 

kill `cat pid`

  

 

 集群

配置文件:

cluster.name: cell
#
node.name: node_03
#
network.host: ip1
http.port: 9200
transport.tcp.port: 9300

discovery.zen.ping.unicast.hosts: ["ip1:9300","ip2:9300", "ip3:9300"]

discovery.zen.minimum_master_nodes: 2 

  

三个节点全部启动后,在kibana里可以看到有三个节点,并说明谁是master

 

配置文件重点参数解析

(1)cluster.name
集群名字,三台集群的集群名字都必须一致

(2)node.name
节点名字,三台ES节点字都必须不一样

(3)discovery.zen.minimum_master_nodes:2
表示集群最少的master数,如果集群的最少master数据少于指定的数,将无法启动,官方推荐node master数设置为集群数/2+1,我这里三台ES服务器,配置最少需要两台master,整个集群才可正常运行,

(4)node.master该节点是否有资格选举为master,如果上面设了两个mater_node 2,也就是最少两个master节点,则集群中必须有两台es服务器的配置为node.master: true的配置,配置了2个节点的话,如果主服务器宕机,整个集群会不可用,所以三台服务器,需要配置3个node.masdter为true,这样三个master,宕了一个主节点的话,他又会选举新的master,还有两个节点可以用,只要配了node master为true的ES服务器数正在运行的数量不少于master_node的配置数,则整个集群继续可用,我这里则配置三台es node.master都为true,也就是三个master,master服务器主要管理集群状态,负责元数据处理,比如索引增加删除分片分配等,数据存储和查询都不会走主节点,压力较小,jvm内存可分配较低一点

(5)node.data
存储索引数据,三台都设为true即可

(6)bootstrap.memory_lock: true
锁住物理内存,不使用swap内存,有swap内存的可以开启此项

(7)discovery.zen.ping_timeout: 3000s
自动发现拼其他节点超时时间

(8)discovery.zen.ping.unicast.hosts: ["172.16.0.8:9300","172.16.0.6:9300","172.16.0.22:9300"]
设置集群的初始节点列表,集群互通端口为9300

posted @ 2020-05-16 16:01  jabbok  阅读(281)  评论(0编辑  收藏  举报