Dledger Quick Deployment
preface
This document is mainly introduced for how to build and deploy auto failover RocketMQ cluster based on DLedger.
For detailed new cluster deployment and old cluster upgrade document, please refer to Deployment Guide。
1. Build from source code
Build phase contains two parts, first, build DLedger, then build RocketMQ.
1.1 Build DLedger
git clone https://github.com/openmessaging/openmessaging-storage-dledger.git
cd openmessaging-storage-dledger
mvn clean install -DskipTests
1.2 Build RocketMQ
git clone https://github.com/apache/rocketmq.git
cd rocketmq
git checkout -b store_with_dledger origin/store_with_dledger
mvn -Prelease-all -DskipTests clean install -U
2. Quick Deployment
after build successful
cd distribution/target/apache-rocketmq
sh bin/dledger/fast-try.sh start
if the above commands executed successfully, then check cluster status by using mqadmin operation commands.
sh bin/mqadmin clusterList -n 127.0.0.1:9876
If everything goes well, the following content will appear:
(BID is 0 indicate Master,the others are Follower)
After startup successful, producer can produce message, and then test failover scenario.
Stop cluster fastly, execute the following command:
sh bin/dledger/fast-try.sh stop
Quick deployment, default configuration is in directory conf/dledger,default storage path is /tmp/rmqstore.
3. Failover
After successful deployment, kill Leader process(as the above example, kill process that binds port 30931), about 10 seconds elapses, use clusterList command check cluster's status, Leader switch to another node.