Fabric docker compose文件-kafka

前提

compose配置文件:

docker-compose-kafkaX.yaml 

每个kafka节点有一个kX

docker-compose-kafka.yaml

version: '2'

services:

kX:

#kafka的镜像

image: hyperledger/fabric-kafka

#容器退出后的重启策略:始终重启
restart: always

#容器名称
container_name: kX

#容器的主机名
hostname: kX

#变量
environment:

# message.max.bytes
# The maximum size of envelope that the broker can receive.
- KAFKA_MESSAGE_MAX_BYTES=103809024 # 99 * 1024 * 1024 B
- KAFKA_REPLICA_FETCH_MAX_BYTES=103809024 # 99 * 1024 * 1024 B
- KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE=false
- KAFKA_LOG_RETENTION_MS=-1

- KAFKA_BROKER_ID=X
# min.insync.replicas=M --- 设置一个M值(例如1<M<N,查看下面的default.replication.factor)
# 数据提交时会写入至少M个副本(这些数据然后会被同步并且归属到in-sync副本集合或ISR)。
# 其它情况,写入操作会返回一个错误。接下来:
# 1. 如果channel写入的数据多达N-M个副本变的不可用,操作可以正常执行。
# 2. 如果有更多的副本不可用,Kafka不可以维护一个有M数量的ISR集合,因此Kafka停止接收写操作。Channel只有当同步M个副本后才可以重新可以写。
- KAFKA_MIN_INSYNC_REPLICAS=2
- KAFKA_DEFAULT_REPLICATION_FACTOR=3
# 指向Zookeeper节点的集合,其中包含ZK的集合。
- KAFKA_ZOOKEEPER_CONNECT=z1:2181,z2:2181,z3:2181

#挂载
volumes:

# kafka数据存储路径,映射到本地
- ./chainData/kafka/kX/:/tmp/kafka-logs/

#映射端口的标签

ports:

- 9092:9092

#所有zookeeper和kafka容器的主机名与IP
extra_hosts:

- "z1:10.0.200.113"
- "z2:10.0.200.114"
- "z3:10.0.200.115"
- "k1:10.0.200.113"
- "k2:10.0.200.114"
- "k3:10.0.200.115"

- "k4:10.0.200.116"

猜你喜欢

转载自blog.csdn.net/weixin_41926234/article/details/80624330