您好,登录后才能下订单哦!
1、Elasticsearch集群节点
候选主节点(Master-eligible node):一个节点启动后,就会使用Zen Discovery机制去寻找集群中的其他节点,并与之建立连接。集群中会从候选主节点中选举出一个主节点,主节点负责创建索引、删除索引、分配分片、追踪集群中的节点状态等工作。Elasticsearch中的主节点的工作量相对较轻,用户的请求可以发往任何一个节点,由该节点负责分发和返回结果,而不需要经过主节点转发。
数据节点(Data node):数据节点负责数据的存储和相关具体操作,比如CRUD、搜索、聚合。所以,数据节点对机器配置要求比较高,首先需要有足够的磁盘空间来存储数据,其次数据操作对系统CPU、Memory和IO的性能消耗都很大。通常随着集群的扩大,需要增加更多的数据节点来提高可用性。
客户端节点(Client node):客户端节点就是既不做候选主节点也不做数据节点的节点,只负责请求的分发、汇总等等,也就是下面要说到的协调节点的角色。这样的工作,其实任何一个节点都可以完成,单独增加这样的节点更多是为了负载均衡。
协调节点(Coordinating node):协调节点,是一种角色,而不是真实的Elasticsearch的节点,你没有办法通过配置项来配置哪个节点为协调节点。集群中的任何节点,都可以充当协调节点的角色。当一个节点A收到用户的查询请求后,会把查询子句分发到其它的节点,然后合并各个节点返回的查询结果,最后返回一个完整的数据集给用户。在这个过程中,节点A扮演的就是协调节点的角色。毫无疑问,协调节点会对CPU、Memory要求比较高。
2、部署方案
默认情况下节点既可以做候选主节点也可以做数据节点,所以我们使用两台机器分别部署master+data节点。
3、系统环境
主机名 | IP地址 | 操作系统 |
---|---|---|
node1 | 192.168.2.211 | Centos 7.6 64位 |
node2 | 192.168.2.212 | Centos 7.6 64位 |
1、关闭 selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
sed -i 's/SELINUXTYPE=targeted/#&/' /etc/selinux/config
setenforce 0
2、安装需要用的工具
yum -y install vim wget java
3、下载elasticsearch并解压
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.2.tar.gz
mkdir /data
tar zxvf elasticsearch-7.4.0-linux-x86_64.tar.gz -C /data/
mv /data/elasticsearch-6.6.2 /data/elasticsearch
4、防火墙开放以下端口
firewall-cmd --permanent --add-port=9200/tcp
firewall-cmd --permanent --add-port=9300/tcp
firewall-cmd --reload
1、修改elasticsearch配置vim /data/elasticsearch/config/elasticsearch.yml
cluster.name: cluster-test #集群名称,每个节点集群名称一样
node.name: test-1 #节点名称,每个节点设置唯一的名称
path.data: /data/elasticsearch/data #数据存储路径
path.logs: /data/elasticsearch/logs #日志文件存放路径
network.host: 0.0.0.0
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.2.211", "192.168.2.212"] #节点列表
discovery.zen.minimum_master_nodes: 2 #候选主节点数量
gateway.recover_after_nodes: 1 #集群中只要有1个节点就正常工作
2、创建启动用户
useradd els -p 123456
chown -R els:els /data/elasticsearch
3、修改limit数量,需要重新登陆系统生效vim /etc/security/limits.conf #添加以下内容
* soft nofile 65536
* hard nofile 65536
4、修改内核参数vm.max_map_countvim /etc/sysctl.conf #添加以下内容
vm.max_map_count=262144
sysctl -p
5、切换到els用户,启动elasticsearch
su - els
/data/elasticsearch/bin/elasticsearch -d
6、查看集群状态
查看集群节点状态
curl http://192.168.2.211:9200/_cat/nodes?pretty
查看集群状态
curl http://192.168.2.211:9200/_cluster/state?pretty
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。