docker单机部署es集群

docker单机部署es集群

pull镜像

docker pull docker.elastic.co/elasticsearch/elasticsearch:7.4.2

配置文件

#es01
cluster.name: "es-docker-cluster"
network.host: 0.0.0.0
node.master: true #是否开启主节点
network.publish_host: 192.168.1.101 #本机IP
discovery.seed_hosts: ["192.168.1.101:9301","192.168.1.101:9302"] #除本机以外的node ip:93端口( transport.tcp.port)
transport.tcp.port: 9300 #es02 9301 es03 9300
transport.profiles.default.port: 9300  #需要设置
cluster.initial_master_nodes: ["es01","es02","es03"]


#node1
docker run -p 9200:9200 -p 9300:9300 --name="es01" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e node.name="es01" -v path/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml  docker.elastic.co/elasticsearch/elasticsearch:7.4.2
#注意配置文件路径,不可重命名配置文件
#node2
docker run -p 9201:9200 -p 9301:9301 --name="es02" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e node.name="es02" -v path/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml docker.elastic.co/elasticsearch/elasticsearch:7.4.2

#node3
docker run -p 9202:9200 -p 9302:9302 --name="es03" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e node.name="es03" -v path/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml docker.elastic.co/elasticsearch/elasticsearch:7.4.2

启动 命令

#node1
docker run -p 9200:9200 -p 9300:9300 --name="es01" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e node.name="es01" -v path/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml  docker.elastic.co/elasticsearch/elasticsearch:7.4.2
#注意配置文件路径,不可重命名配置文件
#node2
docker run -p 9201:9200 -p 9301:9301 --name="es02" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e node.name="es02" -v path/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml docker.elastic.co/elasticsearch/elasticsearch:7.4.2

#node3
docker run -p 9202:9200 -p 9302:9302 --name="es03" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e node.name="es03" -v path/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml docker.elastic.co/elasticsearch/elasticsearch:7.4.2

开放端口

#1、开启防火墙 
    systemctl start firewalld

#2、开放指定端口
      firewall-cmd --zone=public --add-port=1935/tcp --permanent
 #命令含义:
--zone #作用域
--add-port=1935/tcp  #添加端口,格式为:端口/通讯协议
--permanent  #永久生效,没有此参数重启后失效

#3、重启防火墙
      firewall-cmd --reload
#4、查看端口号
netstat -ntlp   //查看当前所有tcp端口·
netstat -ntulp |grep 1935   //查看所有1935端口使用情况

遇到的报错

Elasticsearch master not discovered yet, this node has not previously joined a bootstrapped (v7+) cluster
# 在elasticsearch.yml中配置
transport.profiles.default.port: 9301

测试

curl -XGET 'http://192.168.1.101:9200/_cat/nodes?v' #测试集群
curl -XPUT '192.168.1.101:9200/accounts/person/1?pretty' -H 'content-Type:application/json' -d '
{
"user": "张三",
"title": "⼯程师",
"desc": "数据库管理"
}'
curl -X PUT '192.168.1.101:9200/accounts/person/2?pretty' -H 'content-Type:application/json' -d '
{
"user": "赵四",
"title": "设计师",
"desc": "UI设计"
}'
#插入数据

#从另一个端口出
curl -X GET '192.168.1.101:9200/accounts/person/_search?pretty'
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值