rocketmq5.3.2 加上proxy 组件后,报错,broker注册地址偶尔是组件容器IP,不断和宿主IP切换 #9814
Unanswered
huangjuncong
asked this question in
Q&A
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
mq1 compose:
`version: '3.8'
services:
rmqnamesrv:
image: apache/rocketmq:5.3.2
container_name: rmqnamesrv
ports:
- "9876:9876"
volumes:
# 将日志挂载到 /data
- /data/rocketmq/namesrv/logs:/home/rocketmq/logs
# GC 日志挂载
- /data/rocketmq/namesrv/gclogs:/home/rocketmq/gclogs
networks:
- rocketmq
extra_hosts:
- "mq1:192.62.31.18"
- "mq2:192.62.31.19"
- "mq3:192.62.31.20"
environment:
- JAVA_OPT_EXT=-Xms512m -Xmx512m -Xmn256m -XX:MetaspaceSize=64m -XX:MaxMetaspaceSize=128m -XX:MaxGCPauseMillis=100 -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=100M -Xloggc:/home/rocketmq/gclogs/gc.log
command: sh mqnamesrv
restart: unless-stopped
user: "3000:3000"
deploy:
resources:
limits:
cpus: '0.5'
memory: 1G
reservations:
cpus: '0.25'
memory: 512M
rmqbroker-a:
image: apache/rocketmq:5.3.2
container_name: rmqbroker-a
ports:
- "10909:10909"
- "10911:10911"
- "10912:10912"
environment:
- NAMESRV_ADDR=mq1:9876;mq2:9876;mq3:9876
- JAVA_OPT_EXT=-Xms6g -Xmx6g -Xmn3g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m -XX:MaxGCPauseMillis=200 -XX:MaxDirectMemorySize=1g -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M -Xloggc:/home/rocketmq/gclogs/gc.log
depends_on:
- rmqnamesrv
extra_hosts:
- "mq1:192.62.31.18"
- "mq2:192.62.31.19"
- "mq3:192.62.31.20"
volumes:
# 配置文件从 /opt/rocketmq 加载
- ./broker-a/conf/broker.conf:/home/rocketmq/rocketmq-5.3.2/conf/broker.conf
# 将日志和存储挂载到 /data
- /data/rocketmq/broker-a/logs:/home/rocketmq/logs
- /data/rocketmq/broker-a/store:/home/rocketmq/store
# GC 日志挂载
- /data/rocketmq/broker-a/gclogs:/home/rocketmq/gclogs
networks:
- rocketmq
command: sh mqbroker -c /home/rocketmq/rocketmq-5.3.2/conf/broker.conf
restart: unless-stopped
user: "3000:3000"
deploy:
resources:
limits:
cpus: '3.0'
memory: 10G
reservations:
cpus: '2.0'
memory: 8G
rmqbroker-b-s:
image: apache/rocketmq:5.3.2
container_name: rmqbroker-b-s
ports:
- "11909:10909" # Slave B需要不同端口
- "11911:10911"
- "11912:10912"
extra_hosts:
- "mq1:192.62.31.18" # 示例:mq1 映射到 192.62.31.18
- "mq2:192.62.31.19" # 示例:mq2 映射到 192.62.31.19
- "mq3:192.62.31.20" # 示例:mq3 映射到 192.62.31.20
environment:
- NAMESRV_ADDR=mq1:9876;mq2:9876;mq3:9876
- JAVA_OPT_EXT=-Xms3g -Xmx3g -Xmn2g -XX:MetaspaceSize=64m -XX:MaxMetaspaceSize=128m -XX:MaxGCPauseMillis=200 -XX:MaxDirectMemorySize=512m -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=100M -Xloggc:/home/rocketmq/gclogs/gc.log
depends_on:
- rmqnamesrv
volumes:
# 配置文件从 /opt/rocketmq 加载
- ./broker-b-s/conf/broker.conf:/home/rocketmq/rocketmq-5.3.2/conf/broker.conf
# 将日志和存储挂载到 /data
- /data/rocketmq/broker-b-s/logs:/home/rocketmq/logs
- /data/rocketmq/broker-b-s/store:/home/rocketmq/store
# GC 日志挂载
- /data/rocketmq/broker-b-s/gclogs:/home/rocketmq/gclogs
networks:
- rocketmq
command: sh mqbroker -c /home/rocketmq/rocketmq-5.3.2/conf/broker.conf
restart: unless-stopped
user: "3000:3000"
deploy:
resources:
limits:
cpus: '2.0'
memory: 6G
reservations:
cpus: '1.0'
memory: 4G
rmqproxy-a:
image: apache/rocketmq:5.3.2
container_name: rmqproxy-a
networks:
- rocketmq
depends_on:
- rmqnamesrv
- rmqbroker-a
ports:
- "8080:8080" # Proxy HTTP
- "8081:8081" # Proxy gRPC
restart: unless-stopped
extra_hosts:
- "mq1:192.62.31.18" # 示例:mq1 映射到 192.62.31.18
- "mq2:192.62.31.19" # 示例:mq2 映射到 192.62.31.19
- "mq3:192.62.31.20" # 示例:mq3 映射到 192.62.31.20
user: "3000:3000"
volumes:
# 配置文件从 /opt/rocketmq 加载
- ./proxy/conf/proxy.json:/home/rocketmq/rocketmq-5.3.2/conf/proxy.json
# 将日志挂载到 /data
- /data/rocketmq/proxy/logs:/home/rocketmq/logs
# GC 日志挂载
- /data/rocketmq/proxy/gclogs:/home/rocketmq/gclogs
environment:
- NAMESRV_ADDR=mq1:9876;mq2:9876;mq3:9876
- JAVA_OPT_EXT=-Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=64m -XX:MaxMetaspaceSize=128m -XX:MaxGCPauseMillis=100 -XX:MaxDirectMemorySize=512m -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=100M -Xloggc:/home/rocketmq/gclogs/gc.log
command: sh mqproxy -pc /home/rocketmq/rocketmq-5.3.2/conf/proxy.json
deploy:
resources:
limits:
cpus: '1.0'
memory: 4G
reservations:
cpus: '0.5'
memory: 2G
networks:
rocketmq:
name: rocketmq
driver: bridge`
broker.conf:
`
brokerName=broker-a
brokerId=0
namesrvAddr=mq1:9876;mq2:9876;mq3:9876
brokerRole=ASYNC_MASTER
flushDiskType=SYNC_FLUSH
autoCreateTopicEnable=false
autoCreateSubscriptionGroup=false
storePathRootDir=/home/rocketmq/store
storePathCommitLog=/home/rocketmq/store/commitlog
storePathConsumeQueue=/home/rocketmq/store/consumequeue
storePathIndex=/home/rocketmq/store/index
storePathSslFile=/home/rocketmq/store/ssl
vipChannelEnabled=true
autoDetectAddress=false
listenPort=10911
deleteWhen=04
fileReservedTime=48
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=300000
diskMaxUsedSpaceRatio=88
flushCommitLogLeastPages=1
flushCommitLogThoroughInterval=10000
commitCommitLogLeastPages=1
commitCommitLogThoroughInterval=200
flushConsumeQueueLeastPages=1
flushConsumeQueueThoroughInterval=60000
maxMessageSize=4194304
brokerVIP1=mq1
advertiseAddr=mq1:10911
brokerIP1=mq1
brokerIP2=mq1
messageIndexEnable=true
messageIndexInterval=60000
longPollingEnable=true
slaveReadEnable=false
enableSlaveActingMaster=false
readQueueNums=16
writeQueueNums=16
sendMessageThreadPoolNums=128
pullMessageThreadPoolNums=12
traceTopicEnable=true
enableBuiltInProxy=true
enableProxyProtocol=true
proxyMode=local
proxyGrpcServerPort=8081
proxyHttpServerPort=8080
`
proxy.json:
`{
"namesrvAddr": "mq1:9876;mq2:9876;mq3:9876",
"proxyMode": "local",
"grpcServerPort": 8081,
"remotingListenPort": 8080,
"rocketMQClusterName": "DefaultCluster"
}`
broker地址莫名奇妙变成容器IP,如下图:

Beta Was this translation helpful? Give feedback.
All reactions