生产环境集群部署
一点一点讲解的,生产环境去部署的时候,涉及到很多的配置,还有牵扯到了很多的es的知识点
我们先下载es 5.5(7月6号为止)的压缩包,部署到3个节点上面去,但是不启动,因为我们接下来要花费很多讲的时间来讲解各种生产环境的参数的配置
es模拟生产环境的3节点的集群给启动起来,停止es进程,curl,kibana
1、在三个节点上都下载es
如果要安装es,首先就要从官网下载es的安装包,并且最新es版本要求有JDK 8以上的版本
es安装包的目录结构大致如下:
bin:存放es的一些可执行脚本,比如用于启动进程的elasticsearch命令,以及用于安装插件的elasticsearch-plugin插件
conf:用于存放es的配置文件,比如elasticsearch.yml
data:用于存放es的数据文件,就是每个索引的shard的数据文件
logs:用于存放es的日志文件
plugins:用于存放es的插件
script:用于存放一些脚本文件
2、zen discovery集群发现机制
你会在多台机器上,每台机器部署一个es进程,每台机器都启动一个es进程,你怎么让多台机器上的多个es进程,互相发现对方,然后完美的组成一个生产环境的es集群呢???。。。。
默认情况下,es进程会绑定在自己的回环地址上,也就是127.0.0.1,然后扫描本机上的9300~9305端口号,尝试跟那些端口上启动的其他es进程进行通信,然后组成一个集群。这对于在本机上搭建es集群的开发环境是很方便的。但是对于生产环境下的集群是不行的,需要将每台es进程绑定在一个非回环的ip地址上,才能跟其他节点进行通信,同时需要使用集群发现机制来跟其他节点上的es node进行通信。
大家还记不记得,我们如果在windows上自己玩儿的话,是不是说,你直接启动多个es进程,他们自己就会组成一个集群
在生产环境中的多台机器上部署es集群,就涉及到了es的discovery机制,也就是集群中各个节点互相发现然后组成一个集群的机制,同时discovery机制也负责es集群的master选举,关于master,一会儿会讲解s
master node和data node两种角色