es集群搭建

单节点搭建教程,看这里

https://blog.csdn.net/qq_38403590/article/details/124597583

正常3台机器搭建(暂时没写完,因为我们客户用的是docker,后续补充)

准备3台机器(101,102,103)

只要 cluster.name 属性相同,它们就可以加入与现有节点相同的集群

docker容器化,es集群搭建

首先你得有docker

集群的配置,主要是es的yml文件

拉取es的镜像

docker pull elasticsearch:7.9.3

创建数据挂载目录(挂载是防止重启数据丢失)

mkdir -p /install/ES/config

创建挂载目录

cd /install/ES

创建配置文件目录

cd /install/ES/config

编辑

es1.yml

cluster.name: elasticsearch-cluster
node.name: es-node1
network.bind_host: 0.0.0.0
network.publish_host: 宿主ip
http.port: 9200
transport.tcp.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: [ "宿主ip:9300","宿主ip:9301","宿主ip:9302"]
discovery.zen.minimum_master_nodes: 2
cluster.initial_master_nodes: [ "es-node1"]

当前节点名称 node.name: es-node1

任意机器外网能够访问 network.bind_host: 0.0.0.0

本机的ip地址 network.publish_host: 宿主ip

对外访问的端口http.port: 9200

es内部访问的端口transport.tcp.port: 9300

集群机器discovery.zen.ping.unicast.hosts: ["宿主ip:9300","宿主ip:9301","宿主ip:9302"]

防止脑裂,选举验证方式(【你填写的数/2+1 =机器总数】 代表能正常选举) discovery.zen.minimum_master_nodes: 2

主节点是谁cluster.initial_master_nodes: ["es-node1"]

es2.yml

cluster.name: elasticsearch-cluster
node.name: es-node2
network.bind_host: 0.0.0.0
network.publish_host: 宿主ip
http.port: 9201
transport.tcp.port: 9301
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: [ "宿主ip:9300","宿主ip:9301","宿主ip:9302"]
discovery.zen.minimum_master_nodes: 2
cluster.initial_master_nodes: [ "es-node1"]

es3.yml

cluster.name: elasticsearch-cluster
node.name: es-node3
network.bind_host: 0.0.0.0
network.publish_host: 宿主ip
http.port: 9202
transport.tcp.port: 9302
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
discovery.zen.ping.unicast.hosts: [ "宿主ip:9300","宿主ip:9301","宿主ip:9302"]
discovery.zen.minimum_master_nodes: 2
cluster.initial_master_nodes: [ "es-node1"]

给权限

chmod -R 777 /install/ES

调高centos线程数(据官方说明,必须不小于这个值才可以)

vi /etc/sysctl.conf

加入

vm.max_map_count=262144

更新配置

sysctl -p

启动三台容器

  • 主节点

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 \

-v /install/ES/config/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml \

-v /install/ES/data1:/usr/share/elasticsearch/data \

--name elasticsearch01 docker.io/elasticsearch:7.9.3

  • 从节点2

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9201:9201 -p 9301:9301 \

-v /install/ES/config/es2.yml:/usr/share/elasticsearch/config/elasticsearch.yml \

-v /install/ES/data2:/usr/share/elasticsearch/data \

--name elasticsearch02 docker.io/elasticsearch:7.9.3

  • 从节点3

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9202:9202 -p 9302:9302 \

-v /install/ES/config/es3.yml:/usr/share/elasticsearch/config/elasticsearch.yml \

-v /install/ES/data3:/usr/share/elasticsearch/data \

--name elasticsearch03 docker.io/elasticsearch:7.9.3

插件验证:

成功!

0 of 0的意思代表没有索引,你还没有建相关的index表

参考:

https://elasticstack.blog.csdn.net/article/details/99443042

https://elasticstack.blog.csdn.net/article/details/99413578

https://blog.csdn.net/qq_46127735/article/details/125174719

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值