三台服务器IP
172.16.11.11
172.16.11.12
172.16.11.110
每台服务器都创建映射文件夹
/home/kafka-docker/zoo1/data
/home/kafka-docker/zoo1/datalog
/home/kafka-docker/kafka1/logs
安装好:docker
安装好:docker-compose(
yum -y install epel-release
yum -y install python-pip
sudo wget https://bootstrap.pypa.io/pip/2.7/get-pip.py
sudo python get-pip.py
pip install docker-compose
)
每台节点上执行
##第一台
cat > docker-compose.yml <<-EOF
version: '3.1'
services:
zoo1:
image: wurstmeister/zookeeper
restart: always
hostname: zoo1
container_name: zoo1
ports:
- 2281:2181
volumes:
- /home/kafka-docker/zoo1/data:/data:Z
- /home/kafka-docker/zoo1/datalog:/datalog:Z
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=172.16.11.11:2288:3288;2281 server.2=172.16.11.12:2288:3288;2281 server.3=172.16.11.110:2288:3288;2281
kafka1:
image: wurstmeister/kafka
restart: always
hostname: kafka1
container_name: kafka1
environment:
KAFKA_ADVERTISED_HOST_NAME: 172.16.11.11
KAFKA_HOST_NAME: 172.16.11.11
KAFKA_ADVERTISED_PORT: 9292
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: 172.16.11.11:2281,172.16.11.12:2281,172.16.11.110:2281
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.16.11.11:9292
KAFKA_LISTENERS: PLAINTEXT://172.16.11.11:9292
volumes:
- /home/kafka-docker/kafka1/logs:/kafka:Z
network_mode: host
EOF
#步骤2
docker-compose up -d
##第二台
cat > docker-compose.yml <<-EOF
version: '3.1'
services:
zoo1:
image: wurstmeister/zookeeper
restart: always
hostname: zoo2
container_name: zoo2
ports:
- 2282:2181
volumes:
- /home/kafka-docker/zoo2/data:/data:Z
- /home/kafka-docker/zoo2/datalog:/datalog:Z
environment:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1=172.16.11.11:2288:3288:2281 server.2=172.16.11.12:2288:3288:2281 server.3=172.16.11.110:2288:3288:2281
kafka1:
image: wurstmeister/kafka
restart: always
hostname: kafka2
container_name: kafka2
environment:
KAFKA_ADVERTISED_HOST_NAME: 172.16.11.12
KAFKA_HOST_NAME: 172.16.11.12
KAFKA_ADVERTISED_PORT: 9292
KAFKA_BROKER_ID: 2
KAFKA_ZOOKEEPER_CONNECT: 172.16.11.11:2281,172.16.11.12:2281,172.16.11.110:2281
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.16.11.12:9292
KAFKA_LISTENERS: PLAINTEXT://172.16.11.12:9292
volumes:
- /home/kafka-docker/kafka2/logs:/kafka:Z
network_mode: host
EOF
#步骤2
docker-compose up -d
##第三台
cat > docker-compose.yml <<-EOF
version: '3.1'
services:
zoo1:
image: wurstmeister/zookeeper
restart: always
hostname: zoo3
container_name: zoo3
ports:
- 2282:2181
volumes:
- /home/kafka-docker/zoo3/data:/data:Z
- /home/kafka-docker/zoo3/datalog:/datalog:Z
environment:
ZOO_MY_ID: 3
ZOO_SERVERS: server.1=172.16.11.11:2288:3288:2281 server.2=172.16.11.12:2288:3288:2281 server.3=172.16.11.110:2288:3288:2281
kafka1:
image: wurstmeister/kafka
restart: always
hostname: kafka3
container_name: kafka3
environment:
KAFKA_ADVERTISED_HOST_NAME: 172.16.11.110
KAFKA_HOST_NAME: 172.16.11.110
KAFKA_ADVERTISED_PORT: 9292
KAFKA_BROKER_ID: 3
KAFKA_ZOOKEEPER_CONNECT: 172.16.11.11:2281,172.16.11.12:2281,172.16.11.110:2281
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.16.11.110:9292
KAFKA_LISTENERS: PLAINTEXT://172.16.11.110:9292
volumes:
- /home/kafka-docker/kafka3/logs:/kafka:Z
network_mode: host
EOF
#步骤2
docker-compose up -d
###进入测试
docker exec -it kafka3 /bin/bash
kafka-topics.sh --create --zookeeper 172.16.11.11:2281 --replication-factor 3 --partitions 5 --topic TestTopic Created topic TestTopic.
kafka-topics.sh --describe --zookeeper 172.16.11.11:2281 --topic TestTopic
Docker-kafka集群安装
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- **目录:** 1. docker环境安装 2. zookeeper和kafka集群部署 3. influxdb单...
- Kafka 搭建: 建立Zookeeper容器: 这里我们用最简单的方式创建一个独立的Zookeeper节点,如果...
- 简介:docker-compose使用配置文件(docker-compose.yml)配置管理多个docker容器...
- 前言 文章主要介绍以docker容器的方式部署kafka集群。 环境说明 三台虚拟机:centos7.2 dock...