Elasticsearch 数据库集群配置方式参考

集群说明


ITOSS采用Elasticsearch数据库存储日志信息,如您日志量较多、大时,建议您通过集群方式备份数据,保证数据的安全性,并提升整体性能。如下已部署3个节点为例,一个主节点(master),两个从节点(slave),其中一台设备上部署两个节点,一个部署一个节点,建议:每个节点最好单独部署在一台机器上,可将ITOSS所包含的ES作为主节点,另部两个ES作为从节点。如下为举例相关信息说明: |部署系统| IP |Elasticsearch节点名| 安装目录| |----|----|----|----|
|Windows x64| 192.168.9.173| node1| G:itoss_v1.2.3elasticsearch-2.3.2| |Windows x64| 192.168.9.173| node2 |F:elasticsearch-2.3.2-node2| |Linux x64| 192.168.9.40 |node3 |/home/elasticsearch-2.3.2-node3|

Elasticsearch下载及配置


一、下载

  1. Elasticsearch下载 点击此处,下载Elasticsearch2.3.2
  2. 下载后,放到您的目录下并解压. 如案例我们要配置包含三个节点的集群,您可以将其重命名方便后续查看,并根据您的实际情况,存放到相关目录。
    注意:ITOSS安装目录下包含一个Elasticsearch2.3.2数据库,其中节点,您可以直接用该目录下的配置文件即可,如案例我们将其作用于node1。

二、修改配置文件

2.1 主节点配置修改 修改配置文件,打开ITOSS安装目录下\elasticsearch-2.3.2\config下的Elasticsearch.yml 文件,修改以下属性值并取消该行的注释:

cluster.name: itoss_es
#配置的集群名称,默认是itoss_es,不要修改,ES服务会通过广播方式自动连接在同一网段下的ES服务,通过多播方式进行通信,同一网段下可以有多个集群,通过集群名称这个属性来区分不同的集群。

node.name: "node1"
#当前配置所在机器的节点名,建议配置为方便识别的节点名,举例为Node1。

node.master: "true"
#指定该节点是否有资格被选举成为Node(注意这里只是设置成有资格, 不代表该Node一定就是Master),默认是True,ES是默认集群中的第一台机器为master,如果这台机挂了就会重新选举Master。

node.data: "true"
#指定该节点是否存储索引数据,默认为True。

network.host: 192.168.9.173
#指定节点IP地址,该处设置为本机IP即可;。

transport.tcp.port: 9300
#为节点之间设置一个通信的TCP端口,默认是9300。

http.port: 9200
#设置对外服务的HTTP端口,你使用Head等相关插件使用的端口,默认为9200。

discovery.zen.ping.unicast.hosts: ["192.168.9.173:9300","192.168.9.173:9301","192.168.9.40:9300",]
#指明集群中其它可能为Master的节点IP,以防ES启动后发现不了集群中的其他节点。第一对引号里是node1,默认端口是9300。第二个是 node2,因为它和node1在一台机器上,所以指定了9301端口。第三个引号里是node3,在另外一台机器上。

2.2 其他节点配置
将下载的elasticsearch-2.3.2复制两份,一个解压至F盘,并命名为:elasticsearch-2.3.2-node2;另一个复制到IP为:192.168.9.40的设备上,解压至home目录下,并命名为:将elasticsearch-2.3.2-node3;具体命名,您也可根据您的实际情况命名,如上为举例。
a. node2配置:node2和node1在一台机器上,node1的配置文件里端口默认分别是9300和9200,所以要改一下node2配置文件里的端口,进入对应ES目录,修改elasticsearch.yml 文件,具体修改如下:

cluster.name: itoss_es
node.name: "node2"
node.master: "true"
node.data: "true"
network.host: 192.168.9.173
transport.tcp.port: 9301
http.port: 9201
discovery.zen.ping.unicast.hosts: ["192.168.9.173:9300","192.168.9.173:9301","192.168.9.40:9300",]  

b. node3配置:该节点位于192.168.9.40的设备中,进入该服务器对应ES目录,修改elasticsearch.yml 文件,具体修改如下:

cluster.name: itoss_es
node.name: "node3"
node.master: "true"
node.data: "true"
network.host: 192.168.9.40
transport.tcp.port: 9300
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.9.173:9300","192.168.9.173:9301","192.168.9.40:9300",] 

注意:
1.对于单机多节点的es集群,一定要注意修改 transport.tcp.port 和http.port 的默认值保证节点间不冲突。
2.出现找不到同一集群中的其他节点的情况,检查下 discovery.zen.ping.unicast.hosts 是否已设置。

2.3 ITOSS下配置修改 打开ITOSS安装目录下的config文件夹,编辑elasticsearch.properties文件,将IP地址配置项修改成您ITOSS服务器IP地址 img

Elasticsearch关闭和运行


一.运行Elasticsearch

  1. Windows系统:如node1,其在ITOSS安装目录下,则可直接通过启动ITOSS服务一同启动;
  2. Windows系统:单独启动,如node2,进入到F:\elasticsearch-2.3.2-node2\bin目录下,运行elasticsearch.bat即可启动;
  3. Linux系统:如ITOSS安装在Liunx系统,且其下有ES节点,则直接通过启动ITOSS服务一同启动
  4. Linux系统:单独启动,如node3,进入到elasticsearch-2.3.2-node3\bin目录下,执行: ./elasticsearch -Des.insecure.allow.root=true -d 运行,记得Linux系统要给所在目录权限。

二.关闭Elasticsearch

  1. Windows系统:ITOSS下的ES服务,直接关闭ITOSS服务即可,单独配置的ES,则直接关闭运行的ES服务窗口即可。
  2. Linux系统:执行 ps -ef|grep java,查找进程,然后kill -9 ES进程名,即可关闭ES服务; img

Head插件安装


安装Head插件,可对ES进行各种操作,如查询、删除、浏览索引等,ES主节点安装即可,其他节点您可根据您的实际需求,选择安装与否。

一.Windows系统安装

方式一:

  1. CMD进入到ES安装目录elasticsearch-2.3.2/bin/执行:plugin -install mobz/elasticsearch-head ;
  2. 运行ES服务;
  3. 打开浏览器输入http://IP地址:9200/_plugin/head/

方式二:

  1. 官网:https://github.com/mobz/elasticsearch-head下载zip 解压,或者直接点击我下载;
  2. 在ES目录下的\plugins中建立head文件夹;
  3. 将解压后的elasticsearch-head-master文件夹下的文件copy到head文件夹下;
  4. 运行ES;
  5. 打开浏览器输入http://IP地址:9200/_plugin/head/

二.Linux系统安装

  1. 进入到ES安装目录elasticsearch-2.3.2/bin/下,执行命令: ./plugin install mobz/elasticsearch-head
  2. 打开浏览器输入http://IP地址:9200/_plugin/head/ img

上图是我有4个节点显示界面,每个小方块就是索引分片,可以看到每个索引被分成几个分片,每个分片还有它的备份分片,然后存储在四个节点上。粗框的是主分片,细框的是备份分片。 如上配置完成后,则表示您的ES集群已完成,如果您部署在公网,可以通过域名映射地址做集成。

返回主页