运维利器Docker部署Zookeeper3.5.5伪集群

运维利器Docker部署Zookeeper3.5.5伪集群

    • 前言
    • 环境概述
    • 关闭防火墙
    • 启动Docker
    • 创建Docker网络
    • 查看Docker网络
    • vim编写docker-compose.yml
    • 启动Zookeeper集群
    • 查看日志
    • 使用客户端连接
    • Docker 容器内的服务连接

前言

1、zookeeper的版本不同 docker-compose.yml 也不相同,大家勿搞混淆,通常使用镜像 zookeeper 而不是直接指定版本号 zookeeper3.5.5,则出现部署失败!
2、本篇文章省略 docker 和 docker-compose 安装配置过程,如果大家还对 docker 不了解的自行百度!

环境概述

  • CentOS 7.6
  • Docker 18.09.6
  • Docker-compose 1.23.2

关闭防火墙

 systemctl stop firewalld.service

启动Docker

 systemctl start docker

创建Docker网络

docker network create yoootoo-mall-service

查看Docker网络

docker network ls

vim编写docker-compose.yml

注意事项
1:自定义网络模式:yoootoo-mall-service
2:docker-compose 版本号:3.1
3:zookeeper镜像:3.5.5
4:zookeeper不同镜像启动方式不一致,注意镜像版本号
5:zookeeper集群配置:一共启动三台zookeeper,分别映射向宿主机的 2182,2183,2184

version: '3.1'

services:
  zoo1:
    image: zookeeper:3.5.5
    restart: always
    hostname: zoo1
    network_mode: yoootoo-mall-service
    container_name: zoo1
    ports:
      - 2182:2181
    environment:
      ZOO_MY_ID: 1
      ZOO_SERVERS: server.1=0.0.0.0:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181

  zoo2:
    image: zookeeper:3.5.5
    restart: always
    hostname: zoo2
    network_mode: yoootoo-mall-service
    container_name: zoo2
    ports:
      - 2183:2181
    environment:
      ZOO_MY_ID: 2
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=0.0.0.0:2888:3888;2181 server.3=zoo3:2888:3888;2181

  zoo3:
    image: zookeeper:3.5.5
    restart: always
    hostname: zoo3
    network_mode: yoootoo-mall-service
    container_name: zoo3
    ports:
      - 2184:2181
    environment:
      ZOO_MY_ID: 3
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=0.0.0.0:2888:3888;2181

启动Zookeeper集群

docker-compose up -d

查看日志

docker logs zoo1

使用客户端连接

宿主机IP: 192.168.14.137
SpringBoot连接:192.168.14.137:2182,192.168.14.137:2183,192.168.14.137:2184

Docker 容器内的服务连接

连接地址:zoo1:2181,zoo2:2181,zoo3:2181


注意事项:
1:docker 使用 hostname 通讯,则以上定义的:zoo1,zoo2,zoo3
2:docker 容器内的服务网络模式必须一致,则以上创建的:yoootoo-mall-service

你可能感兴趣的:(Zookeeper)