docker 安装 es 集群

开始安装

拉取镜像

docker pull docker.elastic.co/elasticsearch/elasticsearch:8.2.3
docker pull docker.elastic.co/kibana/kibana:8.2.3

准备安装

  1. 创建一个 docker 网络环境,默认的 bridge 无法为容器配置静态 ip
docker network create --gateway=192.168.165.1 --subnet=192.168.165.0/100 elastic
  1. 起一个单节点 ElasticSearch 服务,得到基础配置文件,然后将这些东西复制到自己准备配置的宿主机地址。顺便建个 plugins 文件夹
docker run --name es-node01 -m 2G --cpus 1 --net elastic \
--ip 192.168.165.6 -p 19200:9200 -p 19300:9300 -t docker.elastic.co/elasticsearch/elasticsearch:8.2.3

docker cp es-node01:/usr/share/elasticsearch/config /data/es8/node01/config

# 关闭,并删除容器 es-node01
docker stop es-node01
docker remove es-node01

image

image

  1. 同层复制 node01 ,得到 node02node03
cp -r ./node01 ./node02
cp -r ./node01 ./node03

image

  1. 根据各自的ip地址,修改三个节点各自的 elasticsearch.yml 文件
cluster.initial_master_nodes: [ "192.168.165.6" ]
discovery.seed_hosts: ["192.168.165.7","192.168.165.8"]
# 单节点打开下面设置,关闭上面两个设置
# discovery.type: single-node
  1. 启动三个节点
docker run \
-m 2G \
--cpus 1 \
--name es-node01 \
--network elastic \
--ip 192.168.165.7 \
-v /data/es8/node01/config:/usr/share/elasticsearch/config \
-v /data/es8/node01/plugins:/usr/share/elasticsearch/plugins \
docker.elastic.co/elasticsearch/elasticsearch:8.2.3

docker run \
-m 2G \
--cpus 1 \
--name es-node02 \
--network elastic \
--ip 192.168.165.7 \
-v /data/es8/node02/config:/usr/share/elasticsearch/config \
-v /data/es8/node02/plugins:/usr/share/elasticsearch/plugins \
docker.elastic.co/elasticsearch/elasticsearch:8.2.3

docker run -d \
-m 2G \
--cpus 1 \
--name es-node03 \
--network elastic \
--ip 192.168.165.8 \
-v /data/es8/node03/config:/usr/share/elasticsearch/config \
-v /data/es8/node03/plugins:/usr/share/elasticsearch/plugins \
docker.elastic.co/elasticsearch/elasticsearch:8.2.3

  1. 启动 kibana ,有需要可以外挂文件夹,不是很必要
docker run --name kibana8 --net elastic \
--ip 192.168.165.2 \
-p 25601:5601 \
docker.elastic.co/kibana/kibana:8.2.3
posted @ 2022-06-27 21:30  临渊不羡渔  阅读(1391)  评论(0编辑  收藏  举报