Elasticsearch是一个分布式搜索服务,提供Restful API,底层基于Lucene,采用多shard的方式保证数据安全,并且提供自动resharding的功能,github等大型的站点也都采用Elasticsearch作为其搜索服务。废话在此就不多赘述了,下面记录下CentOS7下Elasticsearch集群部署过程:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
之前在三台服务器部署Elasticsearch集群:
qd-vpc-op-es01    101.119.92.247
qd-vpc-op-es02    101.119.92.249
qd-vpc-op-es03    101.119.92.254
下面再追加一台es04机器到集群中,操作如下:
qd-vpc-op-es04    101.119.92.16
1)安装jdk和elasticsearch
jdk-8u5-linux-x64.rpm下载地址:
https://pan.baidu.com/s/1bpxtX5X      (提取密码:df6s)
elasticsearch-5.5.0.rpm下载地址:
https://pan.baidu.com/s/1mibwWeG     (提取密码:vtm2)
[root@qd-vpc-op-es04 ~]# cd tools/
[root@qd-vpc-op-es04 tools]# ls
elasticsearch-5.5.0.rpm  jdk-8u5-linux-x64.rpm
[root@qd-vpc-op-es04 tools]# rpm -ivh elasticsearch-5.5.0.rpm
[root@qd-vpc-op-es04 tools]# rpm -ivh jdk-8u5-linux-x64.rpm
[root@qd-vpc-op-es04 tools]# java -version
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)
2)配置elasticsearch
[root@qd-vpc-op-es04 ~]# cd /etc/elasticsearch/
[root@qd-vpc-op-es04 elasticsearch]# ls
elasticsearch.yml  elasticsearch.yml.bak  jvm.options  log4j2.properties  nohup.out  scripts
[root@qd-vpc-op-es04 elasticsearch]# cat elasticsearch.yml|grep -v "#"           //集群中每个节点的配置内容都基本一致
cluster.name: image_search                                                       //集群名称
node.name: image_search_node_4                                                   //集群中本节点的节点名称,这里定义即可
path.data: /data/es/data                                                         //服务目录路径
path.logs: /data/es/logs                                                         //服务日志路径
discovery.zen.ping.unicast.hosts: ["101.119.92.247","101.119.92.249","101.119.92.254","10.111.233.16"]     //这里是各节点的ip地址
network.host: 0.0.0.0                                                            //服务绑定的网络地址
默认elasticsearch服务端口时9200
[root@qd-vpc-op-es04 elasticsearch]# cat elasticsearch.yml|grep 9200
#http.port: 9200
[root@qd-vpc-op-es04 elasticsearch]# systemctl start elasticsearch.service
[root@qd-vpc-op-es04 elasticsearch]# systemctl restart elasticsearch.service
[root@qd-vpc-op-es04 elasticsearch]# systemctl status elasticsearch.service
[root@qd-vpc-op-es04 elasticsearch]# ps -ef|grep elasticsearch
[root@qd-vpc-op-es04 elasticsearch]# lsof -i:9200
COMMAND   PID          USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    10998 elasticsearch  320u  IPv4  39255      0t0  TCP *:wap-wsp (LISTEN)
检查elasticsearch的健康状态
[root@qd-vpc-op-es04 elasticsearch]# curl 'localhost:9200/_cat/indices?v'
health status index                   uuid                   pri rep docs.count docs.deleted store.size pri.store.size
green  open   video_filter            Bx7He6ZtTEWuRBqXYC6gRw   5   1     458013            0      4.1gb            2gb
green  open   recommend_history_image svYo_Do4SM6wUiv6taUWug   5   1    2865902            0     24.9gb         12.4gb
green  open   recommend_history_gif   rhN3MDN2TbuYILqEDksQSg   5   1     265731            0      2.4gb          1.2gb
green  open   post_images             TMsMsMEoR5Sdb7UEQJsR5Q   5   1   48724932            0    407.3gb        203.9gb
green  open   review_images_v2        qzqnknpgTniU4rCsvXzs0w   5   1   50375955            0     61.6gb         30.9gb
green  open   review_images           rWC4WlfMS8aGe-GOkTauZg   5   1   51810877            0    439.3gb        219.7gb
green  open   sensitive_images        KxSrjvXdSz-y8YcqwBMsZA   5   1      13393            0    128.1mb           64mb
green  open   post_images_v2          FDphBV4-QuKVoD4_G3vRtA   5   1   49340491            0     55.8gb         27.8gb
从上面的命令结果中可以看出,本节点已经成功加入到名为image_search的elasticsearch集群中了,green表示节点状态很健康,数据也已经在同步中了。
3)在代码中更新elasticsearch的配置
通知开发同事,在代码中增加新增elasticsearch节点的配置,上线更新后,到新节点上查看elasticsearch日志是否有信息写入:
[root@qd-vpc-op-es04 ~]# cd /data/es/logs/
[root@qd-vpc-op-es04 ~]# chown -R elasticsearch.elasticsearch /data/es
[root@qd-vpc-op-es04 logs]# ls
image_search_deprecation.log  image_search_index_indexing_slowlog.log  image_search_index_search_slowlog.log  image_search.log
----------------------------------------------------------------------------------------------------------------
注意:
如果往elasticsearch集群中新增一个节点,做法如下:
1)在新节点上安装jdk和elasticsearch服务,配置elasticsearch.yml文件了,启动elasticsearch服务
2)在集群中其他节点上配置elasticsearch.yml文件,不需要启动elasticsearch服务
3)在新节点上执行curl 'localhost:9200/_cat/indices?v'命令,查看健康状态以及数据同步情况
4)在代码中增加新增elasticsearch节点的配置,上线更新后,查看新增节点的elasticsearch日志是否有信息写入
----------------------------------------------------------------------------------------------------------------
最后顺便贴一下其他三个节点的elasticsearch.yml文件配置:
[root@qd-vpc-op-es01 ~]# cat /etc/elasticsearch/elasticsearch.yml |grep -v "#"
cluster.name: image_search
node.name: image_search_node_1
path.data: /data/es/data
path.logs: /data/es/logs
discovery.zen.ping.unicast.hosts: ["10.111.233.16","101.119.92.247","101.119.92.249","101.119.92.254"]
network.host: 0.0.0.0
[root@qd-vpc-op-es02 ~]# cat /etc/elasticsearch/elasticsearch.yml |grep -v "#"
cluster.name: image_search
node.name: image_search_node_2
path.data: /data/es/data
path.logs: /data/es/logs
discovery.zen.ping.unicast.hosts: ["10.111.233.16","101.119.92.247","101.119.92.249","101.119.92.254"]
network.host: 0.0.0.0
[root@qd-vpc-op-es03 ~]# cat /etc/elasticsearch/elasticsearch.yml|grep -v "#"
cluster.name: image_search
node.name: image_search_node_3
path.data: /data/es/data
path.logs: /data/es/logs
discovery.zen.ping.unicast.hosts: ["101.119.92.247","101.119.92.249","101.119.92.254","10.111.233.16"]
network.host: 0.0.0.0
----------------------------------------------------------------------------------------------------------------
如果关闭某个节点或将其从集群中提出来,需要提前通知该节点停止同步数据(迁移的时候会用到):
# curl -XPUT 'localhost:9200/_cluster/settings' -d '{"transient" : {"cluster.routing.allocation.enable" : "none”}}’

***************当你发现自己的才华撑不起野心时,就请安静下来学习吧***************
本文转自散尽浮华博客园博客,原文链接:http://www.cnblogs.com/kevingrace/p/7693422.html,如需转载请自行联系原作者

CentOS7下Elasticsearch集群部署记录相关推荐

  1. Centos6下RocketMQ集群部署记录

    一.RocketMQ基础知识介绍 Apache RocketMQ是阿里开源的一款高性能.高吞吐量.队列模型的消息中间件的分布式消息中间件. 上图是一个典型的消息中间件收发消息的模型,RocketMQ也 ...

  2. Elasticsearch——Windows下ES集群部署 Linux下ES单节点、集群部署

    1.开篇 在之前的两篇文章中,说白了就是在windows下部署的ES单节点的环境. 这篇文章主要是说一下windows下部署ES集群.Linux下单节点部署. 单台 Elasticsearch 服务器 ...

  3. Elasticsearch集群部署1.0

    此文档基于1.0版本. Elasticsearch集群部署 配置文件 Elasticsearch有三个配置文件: elasticsearch.yml 用于配置Elasticsearch jvm.opt ...

  4. elasticsearch集群搭建记录

    elasticsearch集群搭建记录 一.集群服务器配置信息 二.安装 JDK 三.下载 ElasticSearch 安装包和中文分词器并解压 四.创建用于存放数据与日志的目录 五.集群配置 5.1 ...

  5. RocketMQ集群部署记录

    RocketMQ集群部署记录 #引用    https://cloud.tencent.com/developer/article/1147765 一.RocketMQ基础知识介绍 Apache Ro ...

  6. Elasticsearch集群部署及Head插件安装

    首先准备三台Linux服务器,系统版本Centos7,具备Java环境,最好是JDK11以上.由于ES比较吃内存,所以每台服务器的配置要求为: CPU:2核 内存:2G 我的三个节点分别是Hadoop ...

  7. docker进行ElasticSearch集群部署

    环境: (1)Centos7 (2)JDK1.8 (3)docker (4)ElasticSearch7.6 建议: (1)服务器至少3台,否则没必要集群部署 (2)java后台推荐直接连接客户端节点 ...

  8. ElasticSearch集群部署【windows+Linux双系统搭建】

    ES集群部署 一.windows部署 二.Linux单节点部署 三.Linux集群部署 一.windows部署 如果已经使用过,删除其中的data和logs文件夹中的内容 新建一个es-cluster ...

  9. CentOS7下Spark集群的安装

    从物理部署层面上来看,Spark主要分为两种类型的节点,Master节点和Worker节点,Master节点主要运行集群管理器的中心化部分,所承载的作用是分配Application到Worker节点, ...

最新文章

  1. python 中文字转拼音
  2. 一般试卷的纸张大小是多少_pdf试卷怎么打印在A3纸上
  3. C/C++代码优化方法
  4. Windows下编译扩展OpenCV 3.1.0 + opencv_contrib
  5. 理解C语言——从小菜到大神的晋级之路(9)——多维数组
  6. logrotate测试_日志管理工具logrotate
  7. Java基础---Java---IO流-----File 类、递归、删除一个带内容的目录、列出指定目录下文件夹、FilenameFilte
  8. MSAgent(微软助手精灵)很好很强大
  9. 如何保持福禄克CFP2-100-Q、OFP2-100-Q等光纤测试仪器的洁净?
  10. win7计算机高级还原,主编教您win7怎么一键还原
  11. MOT任务中JDE(Jointly learns the Detector and Embedding model)算法解读
  12. 【基于JAVA的旅游路线推荐系统-哔哩哔哩】 https://b23.tv/4STx5NI
  13. 三联莎士比亚阅读摘记
  14. php取tet文件内容,PHP中使用PDFlib TET提取PDF中的文本
  15. GNS3实验:三层交换机配置
  16. python 线程 (概念+示例代码)
  17. Tarena - 分组查询
  18. 广义估计方程估计方法_广义估计方程简介
  19. 在Linux系统实现PTP时钟同步,查看网卡信息后发现网卡不支持PTP软硬件时间戳
  20. windows下基于Aria2的下载工具

热门文章

  1. HTML5 Audio/标签Api整理(二)
  2. webpack开发配置
  3. JavaScript程序员必备的5个debug技巧
  4. 【数据库设计-3】菜单设计
  5. DHCP详细配置实验总结
  6. ACCESS MDB数据库记录误删除恢复
  7. 用PHP写出显示客户端IP与服务器IP的代码
  8. elasticsearch的cross_fields查询
  9. POJ(1195)(单点修改,区间查询)(二维)
  10. Concurrent实现原理