[docker] docker-compose instala el clúster zookeeper

Prefacio

El módulo de red presentado antes docker-compose.


Dependencias básicas

  • ventana acoplable y ventana acoplable-componer

la idea basica

Idea 1

En primer lugar, debemos ir al sitio web oficial de Docker para ver si hay una imagen oficial. Muy por suerte, nuestro cuidador del zoológico ya tiene una imagen oficial que puede usarse.

Insertar descripción de la imagen aquí
Antes de usar la imagen del guardián del zoológico, será mejor que confirmemos la versión que necesita. Este artículo utiliza el entorno actual que es relativamente estable 3.6.3. (Tenga en cuenta que Mac parece haberse adaptado recientemente al chip M1, así que elija la imagen acoplable adaptada correspondiente .)

  • Descargue la imagen de la ventana acoplable con anticipación
    docker pull zookeeper:3.6.3

  • Cree una red acoplable por adelantado
    docker-network create zk-net


Independiente: (archivo docker-compose.yml)

version: '2'

networks:
  zk-net:
    name: zk-net

services:
  zoo1:
    image: 'zookeeper:3.6.3'
    container_name: zoo1
    hostname: zoo1
    environment:
      ZOO_MY_ID: 1
      ZOO_SERVERS: server.1=0.0.0.0:2888:3888;2181
      ALLOW_ANONYMOUS_LOGIN: "yes"
    networks:
      - zk-net
    ports:
      - 2181:2181
      - 8081:8080

El archivo de configuración del clúster es similar al de una sola máquina. Primero analicemos el archivo de configuración de una sola máquina.

redes
  • networks/zk-net/name: Esto es principalmente para declarar la red relacionada de Docker, que es conveniente para usar a continuación.
servicios
  • services/environnet: Declara principalmente ciertas variables que deben usarse más adelante.
  • environment/ZOO_MY_ID: Por lo general, se declara la identificación del nodo al crear un clúster.
  • environment/ ZOO_SERVERS: server.1: Declara la dirección del archivo de configuración.
  • environment/networks: La red utilizada por el nodo actual.
  • environment/ports: Mapeo de nodos relacionados con el nodo actual.

Clúster: (archivo docker-compose.yml)

version: '2'

networks:
  zk-net:
    name: zk-net

services:
  zoo1:
    image: 'zookeeper:3.6.3'
    container_name: zoo1
    hostname: zoo1
    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
      ALLOW_ANONYMOUS_LOGIN: "yes"
    networks:
      - zk-net
    ports:
      - 2181:2181
      - 8081:8080
  zoo2:
    image: 'zookeeper:3.6.3'
    container_name: zoo2
    hostname: zoo2
    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
      ALLOW_ANONYMOUS_LOGIN: "yes"
    networks:
      - zk-net
    ports:
      - 2182:2181
      - 8082:8080
  zoo3:
    image: 'zookeeper:3.6.3'
    container_name: zoo3
    hostname: zoo3
    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
      ALLOW_ANONYMOUS_LOGIN: "yes"
    networks:
      - zk-net
    ports:
      - 2183:2181
      - 8083:8080

De hecho, el sitio web oficial del archivo de configuración correspondiente Zookeeperya ha proporcionado una solución, que es relativamente similar al archivo de configuración anterior.
Insertar descripción de la imagen aquí


Operaciones prácticas relacionadas

  • puesta en marchadocker-compose start
  • Utilice zk-Cli.shgrupos de cuidadores del zoológico vinculados.

Referencia

[1]. Construya un clúster de Zookeeper con Docker Compose
[2]. https://hub.docker.com/_/zookeeper
[3]. Utilice Docker para construir un clúster de ZooKeeper en un solo paso.

Supongo que te gusta

Origin blog.csdn.net/u010416101/article/details/122803105
Recomendado
Clasificación