RocketMQ(2)---ドッカークラスタ配置RocketMQ

RocketMQ(2)-Dockerクラスタ配置RocketMQ

=前言=

1、因为自己只买了一台阿里云服务器,所以RocketMQ集群都部署在单台服务器上只是端口不同,如果实际开发,可以分别部署在多台服务器上。
2、这里有关 Broker 和 NameServer 分别都做了了集群部署(各部署两个),且BroKer是按两主进行部署。

ドッカーを考慮する主に展開するために選ばれました。通过Docker部署RocketMQ集群更快速,而且对系统的资源利用更好!

Liunxはドッカーのブログを展開する方法に前に書かれた:[ドッカー](3)--- Linuxの展開ドッカー、ドッカー一般的に使用されるコマンド

:関連RocketMQのコンセプトは、ブログの導入作られた前の建築原理- RocketMQ(1)

まず、コンフィギュレーション・ファイルを実行し、最終的な業績を参照してください、必要な設定ファイルの下に書かれました!

まず、設定ファイルを書きます

1、必要なフォルダを作成します

mkdir -p  /opt/rocketmq/logs/nameserver-a
mkdir -p  /opt/rocketmq/logs/nameserver-b
mkdir -p /opt/rocketmq/store/nameserver-a
mkdir -p /opt/rocketmq/store/nameserver-b
mkdir -p /opt/rocketmq/logs/broker-a
mkdir -p /opt/rocketmq/logs/broker-b
mkdir -p /opt/rocketmq/store/broker-a
mkdir -p /opt/rocketmq/store/broker-b
mkdir -p /home/rocketmq/broker-a/
mkdir -p /home/rocketmq/broker-b/

2. broker.confを作成します。

broker.conf是Broker的配置文件画像を持っているので、引っ張っRocketMQないので、デフォルトのbroker.confではありません。だから、ここでデフォルトのbroker.confコマンドを交換する時間が書かれて直接。

展開は、デュアルマスターモードであるので、2つbroker.confが存在しますので、この時間は、指定されたブローカー・a.confおよびブローカー・b.conf

1)ブローカーa.conf

brokerClusterName = rocketmq-cluster
brokerName = broker-a
brokerId = 0
# 这个ip配置为内网访问,让mq只能内网访问,不配置默认为内网
#brokerIP1 = xxxxx
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
# 内网的(阿里云有内网IP和外网IP)
namesrvAddr=172.18.0.5:9876;172.18.0.5:9877
autoCreateTopicEnable=true
#Broker 对外服务的监听端口,
listenPort = 11911
#Broker角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=ASYNC_MASTER
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH

ここで設定する主な情報は以下のとおりです。

1、外国人ブローカーの現在の露出のポート番号
アドレスネームサーバに登録された2は、2つのアドレスが、ネームサーバ、クラスタの展開を示し、そこにあるここを参照してください。
3、現在のブローカーの役割は、マスターがここに表現され、マスタにまたはからです。

2)ブローカーb.conf

brokerClusterName = rocketmq-cluster
brokerName = broker-b
brokerId = 0
# 这个ip配置为内网访问,让mq只能内网访问,不配置默认为内网
#brokerIP1 = xxxxx
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
# 内网的(阿里云有内网IP和外网IP)
namesrvAddr=172.18.0.5:9876;172.18.0.5:9877
autoCreateTopicEnable=true
#Broker 对外服务的监听端口,
listenPort = 11909
#Broker角色
#- ASYNC_MASTER 异步复制Master
#- SYNC_MASTER 同步双写Master
#- SLAVE
brokerRole=ASYNC_MASTER
#刷盘方式
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH

上記の差はありませんが、外部電流Brockerポートが同じではない露出しました。

3、ドッキングウィンドウ-compose.ymlを書きます

私たちは、単にスクリプトは、複数のコンテナアプリケーションを実行するための情報を定義し、シェルのようなスクリプトとして理解ドッカ-compose.ymlを置くことができます。

version: '3.5'
services:
  rmqnamesrv-a:
    image: rocketmqinc/rocketmq:4.3.0
    container_name: rmqnamesrv-a
    ports:
      - 9876:9876
    volumes:
      - /opt/rocketmq/logs/nameserver-a:/opt/logs
      - /opt/rocketmq/store/nameserver-a:/opt/store
    command: sh mqnamesrv
    networks:
        rmq:
          aliases:
            - rmqnamesrv-a

  rmqnamesrv-b:
    image: rocketmqinc/rocketmq:4.3.0
    container_name: rmqnamesrv-b
    ports:
      - 9877:9877
    volumes:
      - /opt/rocketmq/logs/nameserver-b:/opt/logs
      - /opt/rocketmq/store/nameserver-b:/opt/store
    command: sh mqnamesrv
    networks:
        rmq:
          aliases:
            - rmqnamesrv-b

  rmqbroker-a:
    image: rocketmqinc/rocketmq:4.3.0
    container_name: rmqbroker-a
    ports:
      - 11911:10911
    volumes:
      - /opt/rocketmq/logs/broker-a:/opt/logs
      - /opt/rocketmq/store/broker-a:/opt/store
      - /home/rocketmq/broker-a/broker-a.conf:/opt/rocketmq-4.3.0/conf/broker.conf 
    environment:
        TZ: Asia/Shanghai
        NAMESRV_ADDR: "rmqnamesrv-a:9876"
        JAVA_OPTS: " -Duser.home=/opt"
        JAVA_OPT_EXT: "-server -Xms256m -Xmx256m -Xmn256m"
    command: sh mqbroker -c /opt/rocketmq-4.3.0/conf/broker.conf autoCreateTopicEnable=true &
    links:
      - rmqnamesrv-a:rmqnamesrv-a
      - rmqnamesrv-b:rmqnamesrv-b
    networks:
      rmq:
        aliases:
          - rmqbroker-a

  rmqbroker-b:
    image: rocketmqinc/rocketmq:4.3.0
    container_name: rmqbroker-b
    ports:
      - 11909:10909
    volumes:
      - /opt/rocketmq/logs/broker-b:/opt/logs
      - /opt/rocketmq/store/broker-b:/opt/store
      - /home/rocketmq/broker-b/broker-b.conf:/opt/rocketmq-4.3.0/conf/broker.conf 
    environment:
        TZ: Asia/Shanghai
        NAMESRV_ADDR: "rmqnamesrv-b:9876"
        JAVA_OPTS: " -Duser.home=/opt"
        JAVA_OPT_EXT: "-server -Xms256m -Xmx256m -Xmn256m"
    command: sh mqbroker -c /opt/rocketmq-4.3.0/conf/broker.conf autoCreateTopicEnable=true &
    links:
      - rmqnamesrv-a:rmqnamesrv-a
      - rmqnamesrv-b:rmqnamesrv-b
    networks:
      rmq:
        aliases:
          - rmqbroker-b
  rmqconsole:
    image: styletang/rocketmq-console-ng
    container_name: rmqconsole
    ports:
      - 9001:8080
    environment:
        JAVA_OPTS: -Drocketmq.namesrv.addr=rmqnamesrv-a:9876;rmqnamesrv-b:9877 -Dcom.rocketmq.sendMessageWithVIPChannel=false
    networks:
      rmq:
        aliases:
          - rmqconsole
networks:
  rmq:
    name: rmq
    driver: bridge

コンフィギュレーション・ファイルから、一般的にそれを見ることができます。

5つの画像記録のドッカー合計を引くことにより1、。rmqnamesrv-armqnamesrv-brmqbroker-armqbroker-brmqconsole
2は、rmqconsole是一个可视化的工具RocketMQ関連情報ページを表示することができます。
3は、プロファイルbroker.confブローカがブローカ-A / b.confに置換されているためことがわかります。


第二に、デプロイメント環境

上記は、書かれたプロファイルのみですが、RocketMQを開始するには、多くの前提条件があります

1、必要な環境

1. 建议使用64位操作系统,Linux / Unix / Mac;
2. 64位JDK 1.8+;
3. Maven 3.2.x;
4. Git的;
5. 4g +免费磁盘用于Broker服务器

同時に、また、ドッキングウィンドウ-コンをインストールする必要がドッカ-compose.ymlを実行する必要があります

図2に示すように、取付ドッカー-COMPOSE

あなたはGitHubの公式についての紹介を見ることができます:https://github.com/docker/compose

インストールのドッキングウィンドウ、コン

curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

インストールが成功したかどうかを確認するには

[root@izbp13196wp34obmnd4avdz ~]# docker-compose --version
docker-compose version 1.24.1, build 4667896b

3、重要なステップ

フロントすべての操作は、を通じて、このステップのための道を切り開いているdocker-compose执行docker-compose.yml設定ファイル

docker-compose -f docker-compose.yml up -d

あなたがそれを見た場合、それはあなたが行われていることを意味します!

視覚的なインターフェースを見ます

パーフェクト!

注意 これは、アリが戻って開いて行く覚えておくことは、関連するポートを必要とします!


参照

1、ApacheのRocketMQ

2、ドッキングウィンドウ、コン

3、ドッカー展開RocketMQクラスター(どうもありがとうございました)




只要自己变优秀了,其他的事情才会跟着好起来(中将9)

おすすめ

転載: www.cnblogs.com/qdhxhz/p/11096682.html