网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[root@server1 ~]# vim /usr/lib/systemd/system/elasticsearch.service
[Service] #在service语句块下添加
LimitMEMLOCK=infinity
禁用交换分区:
[root@server1 ~]# swapoff -a
[root@server1 ~]# vim /etc/fstab
开启服务:
[root@server1 ~]# systemctl daemon-reload
[root@server1 ~]# systemctl start elasticsearch.service
需要配置三台主机,server1 ,server2,server3,server1作为master,可以直接将配置文件传给其他两个节点,仅修改主机名即可
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210309111107450.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1N1bl9fcw==,size_16,color_FFFFFF,t_70)
### elasticsearch插件安装
### 下载elasticsearch-head插件
wget https://github.com/mobz/elasticsearch-head/archive/master.zip
get elasticsearch-head-master.zip
[root@server1 ~]# yum install unzip.x86_64 -y
[root@server1 ~]# unzip elasticsearch-head-master.zip
[root@server1 ~]# cd elasticsearch-head-master/
[root@server1 elasticsearch-head-master]# yum install fontconfig
[root@server1 elasticsearch-head-master]# cnpm install
[root@server1 elasticsearch-head-master]# cnpm run start &
tar jxf phantomjs-2.1.1-linux-x86_64.tar.bz2
cd phantomjs-2.1.1-linux-x86_64/
cd bin/
mv phantomjs /usr/local/bin/
yum install fontconfig
### head插件本质上是一个nodejs的工程,因此需要安装node
get nodejs-9.11.2-1nodesource.x86_64.rpm
[root@server1 ~]# rpm -ivh nodejs-9.11.2-1nodesource.x86_64.rpm
[root@server1 ~]# node -v
[root@server1 ~]# npm -v
### 更换npm源安装
[root@server1 ~]# cd elasticsearch-head-master/
[root@server1 ~]# npm install -g cnpm --registry=https://registry.npm.taobao.org
### 启动head插件
[root@server1 elasticsearch-head-master]# cnpm run start &
### 修改ES跨域主持
三个节点都需要加上
[root@server1 ~]# vim /etc/elasticsearch/elasticsearch.yml
http.cors.enabled: true # 是否支持跨域
http.cors.allow-origin: “*” # *表示支持所有域名
[root@server1 ~]# systemctl restart elasticsearch.service
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210309133238352.png)
访问head插件服务
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210309133339886.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1N1bl9fcw==,size_16,color_FFFFFF,t_70)
创建索引
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210309143410555.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1N1bl9fcw==,size_16,color_FFFFFF,t_70)
查看ES状态
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210309143443294.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1N1bl9fcw==,size_16,color_FFFFFF,t_70)
灰色标识没有副本
黄色代表没有主分片丢失
### elasticsearch节点角色
Master:
• 主要负责集群中索引的创建、删除以及数据的Rebalance等操作。
Master不负责数据的索引和检索,所以负载较轻。当Master节点失联或
者挂掉的时候,ES集群会自动从其他Master节点选举出一个Leader。
Data Node:
• 主要负责集群中数据的索引和检索,一般压力比较大。
Coordinating Node:
• 原来的Client node的,主要功能是来分发请求和合并结果的。所有节点
默认就是Coordinating node,且不能关闭该属性。
Ingest Node:
• 专门对索引的文档做预处理
### elasticsearch节点优化
在生产环境下,如果不修改elasticsearch节点的角色信息,在高数
据量,高并发的场景下集群容易出现脑裂等问题。
• 默认情况下,elasticsearch集群中每个节点都有成为主节点的资格,
也都存储数据,还可以提供查询服务。
• 节点角色是由以下属性控制:
• node.master: false|true
• node.data: true|false
• node.ingest: true|false
• search.remote.connect: true|false
默认情况下这些属性的值都是true。
node.master:这个属性表示节点是否具有成为主节点的资格
注意:此属性的值为true,并不意味着这个节点就是主节点。
因为真正的主节点,是由多个具有主节点资格的节点进行选
举产生的。
• node.data:这个属性表示节点是否存储数据。
• node.ingest: 是否对文档进行预处理。
• search.remote.connect:是否禁用跨集群查询
第一种组合:(默认)
• node.master: true
• node.data: true
• node.ingest: true
• search.remote.connect: true
这种组合表示这个节点即有成为主节点的资格,又存储数据。
如果某个节点被选举成为了真正的主节点,那么他还要存储数据,这样对于
这个节点的压力就比较大了。
测试环境下这样做没问题,但实际工作中不建议这样设置。
第二种组合:(Data node)
• node.master: false
• node.data: true
• node.ingest: false
• search.remote.connect: false
这种组合表示这个节点没有成为主节点的资格,也就不参与选举,只会存储
数据。
这个节点称为data(数据)节点。在集群中需要单独设置几个这样的节点负责
存储数据。后期提供存储和查询服务
第三种组合:(master node)
• node.master: true
• node.data: false
• node.ingest: false
• search.remote.connect: false
这种组合表示这个节点不会存储数据,有成为主节点的资格,可以参与选举,
有可能成为真正的主节点。
这个节点我们称为master节点。
第四种组合:(Coordinating Node)
• node.master: false
### 最后的话
最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!
### 资料预览
给大家整理的视频资料:
![](https://img-blog.csdnimg.cn/img_convert/29bb60f2cd2f19a6396147565b85b28f.png)
给大家整理的电子书资料:
![](https://img-blog.csdnimg.cn/img_convert/1d76d7bec3ffc53be856124ae27a9597.png)
**如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!**
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**