1. 程式人生 > >Centos7下部署ActiveMQ叢集

Centos7下部署ActiveMQ叢集

三臺centos7伺服器。

1.開始前的準備ZK

必須安裝zookeeper群集才能實現三臺MQ連結。具體ZK群集搭建網上有很多 這裡就不詳談 簡單說下過程:

在zk1,zk2,zk3的目錄下,建立data目錄。

修改zk1,zk2,zk3的配置檔案。cp zoo_sample.cfg zoo.cfg

然後進入配置檔案zoo.cfg 將dataDir=/*/*/*/data改成data目錄

然後在最後加入

server.1=ip:2888:3888

server.2=ip:2888:3888

server.3=ip:2888:3888

還有一步,就是在zk1,zk2,zk3的data(這個data目錄也是自己建立的)下面建立一個檔案myid,內容就是zoo.cfg中的伺服器server.x中的數字1,2,3。


最後啟動即可。。

這個比較簡單,在三臺機器上安裝active MQ。
主要的修改配置檔案,就是activemq.xml。

下面以操作mq1為例

2.然後開始配置active MQ群集:


這個比較簡單,我在三臺機器上安裝AMQ。
主要的修改配置檔案,就是activemq.xml

進入mq1目錄,vim activemq.xml檔案。我們這裡amq的叢集是基於zk的,所以,不要預設的持久化方案。即將原始的

<persistenceAdapter>
      <kahaDB directory="${activemq.data}/kahadb"/>
</persistenceAdapter>

註釋掉,採用下面的新內容:

<persistenceAdapter>
    <replicatedLevelDB 
  directory="${activemq.data}/leveldb"
  replicas="3"
  bind="tcp://0.0.0.0:0"
  zkAddress="10.90.7.10:2181,10.90.7.10:2182,10.90.7.10:2183"
  hostname="10.90.7.10"
  sync="local_disk"
  zkPath="/activemq/leveldb-stores"
  />
</persistenceAdapter>

這裡,hostname要修改為amq所在機器的IP地址,或者是能夠解析的域名。zkAddress是zk叢集的地址,即每個zk的IP:port對,之間用逗號分隔。zkPath這裡是指定的,所以,在上面的zkCli.sh中可以ls命令看到的內容。

還有,broker這個節點中的brokerName,必須三個amq例項配置都要一樣。這裡,我配置為tkcss了。
。。。。。。
    <broker xmlns="http://activemq.apache.org/schema/core" brokerName="tkcss" dataDirectory="${activemq.data}">

        <destinationPolicy>
            <policyMap>
              <policyEntries>
                <policyEntry topic=">" >
                    <!-- The constantPendingMessageLimitStrategy is used to prevent
                         slow topic consumers to block producers and affect other consumers
                         by limiting the number of messages that are retained
                         For more information, see:

                         http://activemq.apache.org/slow-consumer-handling.html

                    -->
                  <pendingMessageLimitStrategy>
                    <constantPendingMessageLimitStrategy limit="1000"/>
                  </pendingMessageLimitStrategy>
                </policyEntry>
              </policyEntries>
            </policyMap>
        </destinationPolicy>


        <!--
            The managementContext is used to configure how ActiveMQ is exposed in
            JMX. By default, ActiveMQ uses the MBean server that is started by
            the JVM. For more information, see:

            http://activemq.apache.org/jmx.html
        -->
        <managementContext>
            <managementContext createConnector="false"/>
        </managementContext>

        <!--
            Configure message persistence for the broker. The default persistence
            mechanism is the KahaDB store (identified by the kahaDB tag).
            For more information, see:

            http://activemq.apache.org/persistence.html
        -->
        <!--
        <persistenceAdapter>
            <kahaDB directory="${activemq.data}/kahadb"/>
        </persistenceAdapter>
        -->

        <persistenceAdapter>
            <replicatedLevelDB 
                directory="${activemq.data}/leveldb"
                replicas="3"
                bind="tcp://0.0.0.0:0"
                zkAddress="10.90.7.10:2181,10.90.7.10:2182,10.90.7.10:2183"
                hostname="10.90.7.10"
                sync="local_disk"
               zkPath="/activemq/leveldb-stores"
           />
        </persistenceAdapter>
。。。。。。
複製程式碼

配置完成後,即可啟動amq。

[[email protected] bin]# ./activemq start

啟動後,如果正常的話 會啟動一個MQ 而另外兩個沒顯示啟動  等啟動MQ死掉後 另外兩個會自動選舉

相關推薦

Centos7部署ActiveMQ叢集

三臺centos7伺服器。 1.開始前的準備ZK 必須安裝zookeeper群集才能實現三臺MQ連結。具體ZK群集搭建網上有很多 這裡就不詳談 簡單說下過程: 在zk1,zk2,zk3的目錄下,建立data目錄。 修改zk1,zk2,zk3的配置檔案。cp zo

centos7部署mariadb+galera資料庫高可用叢集

環境準備: centos7;關閉selinux和firewalld;hosts檔案解析;時間同步;root互信;三節點、 環境部署: 設定mariadb的yum源並安裝(所有節點都要)(下載包的時

centos7部署iptables環境紀錄(關閉默認的firewalle)

配置 highlight pad localhost custom -a 記錄 ont fire CentOS7默認的防火墻不是iptables,而是firewall.由於習慣了用iptables作為防火墻,所以在安裝好centos7系統後,會將默認的firewall關

centos7部署Django(nginx+uWSGI+Python3+Django)

sbin socket `` onf upload SQ fig 目錄 down 部署代碼後uWSGI需要重新啟動,關閉系統防火墻或者開放端口 系統版本:CentOS7.0 Python版本:Python3.6.3 Django版本:2.0.5 uWSGI版本:2.0

centos7部署node應用程序

http nbsp load ali 需要 執行 error etc www 一、安裝node 二、安裝nginx 三、使用express寫一個簡單的demo,並且使用pm2部署 四、錯誤 invalid PID number "" in "/run/nginx.pid"

CentOS7部署Python3+Django+uwsgi+Nginx

ade pen centos 編寫 b- mark pre 命令行 entos 1,首先在部署項目時,需要安裝好系統的環境,那我們首先來安裝依賴yum -y install gcc gcc-c++yum -y groupinstall “Development tool

centos7redis哨兵叢集配置

redis作為一個高效能記憶體資料庫,也常用於系統的快取資料庫,與memcache類似,再生產環境中,當然需要做高可用的結構,即主從複製,替換等功能,可以實現主資料庫掛掉,從庫自動補上,不影響正常使用。 redis的主從,哨兵配置也非常簡單,一主N從,N哨兵都可以。具體的配置方法下面記錄一下: 預設

如何在CentOS7部署Hadoop

1.前言 “大雲物移”是當年很火熱的一個話題,分別指大資料、雲端計算、物聯網和移動網際網路,其中大資料領域談論得多就是Hadoop。當然Hadoop不代表大資料,而是大資料處理領域的一個比較有名的開源框架而已,通常說的大資料包含了大資料的存放、大資料的分析處理及大資料的查詢展示,本篇提到的Ha

centos7部署Django(nginx+uwsgi+django+python3)

參考文獻: https://blog.csdn.net/anifans9350/article/details/80145535 https://www.cnblogs.com/dalanjing/p/8636338.html   0.安裝步驟預覽(1)系統預設自帶python2.x,所以需

CentOS7部署Django專案詳細操作步驟

嚴格按下面步驟 一、更新系統軟體包 yum update -y 二、安裝軟體管理包和可能使用的依賴 yum -y groupinstall "Development tools" yum install openssl-devel bzip2-devel expat-devel gdbm-deve

centos7部署Django

centos7下部署Django(nginx+uwsgi+python3+django) 系統版本 centos7 python版本 使用官方python3.6.3正式版 django版本 使用本文釋出時最新的1.11.7 uwsgi版本 使用本文釋出時最新的2.0.

centos7 部署Git以及git的使用(如需配置dns則需要提前配置好)

1.要生成新的SSH金鑰對,請使用以下命令: ssh-keygen -t rsa -C "[email protected]" -b 4096 查詢生產密匙 cat ~/.ssh/id_rsa.pub 複製密匙 貼上到gitlab的ssh密匙上,新增密

centos7hadoop的叢集安裝

通過前面https://www.bilibili.com/video/av31184748/的課程,我們已經配好了jdk、hosts、免密登陸等。 下面我們來進行hadoop叢集的安裝與部署 注:文章中的qipao請修改為自己的主機名或者ip地址 1.1首先我們

Centos7部署oracle資料庫server端

一、安裝Oracle前準備 1.建立執行oracle資料庫的系統使用者和使用者組[[email protected] ~]$ su root  #切換到rootPassword: [[email&

centos7 部署yapi 詳細教程

1.下載並按照nodejs和mongodb 解壓 cd /usr/local/allen tar -xf mongodb-linux-x86_64-3.0.6.tgz tar -xf node-v8.12.0-linux-x64.tar.xz chmod -R 77

centos7部署nginx與php

背景介紹 相信讀者在看這篇文章之前已經fastcgi,php-fpm有所瞭解。大概來講php語言需要fastcgi程式,即php直譯器解釋,而php直譯器需要php-fpm管理器進行排程。 以下對CGI、FastCGI、php-fpm之間關係進行通俗解釋(來源於知乎使用者Journey Lin): 講Fa

centos7部署執行一個php專案

因為要做web方向的測試,所以選擇了一個測試網站addressbook. 這個網站是用php開發的,以前沒有接觸過php,那麼就那這個專案開刀,先將它部署,也記錄一下我遇到的問題,大家少走彎路。 Nginx + php-fpm +centos7 首先我先要在ch

centos7部署redis2.6.14版本

1.下載redis 2.6.14版本 2.練習環境 [[email protected] ~]# scp -r /root/桌面/redis/redis-2.6.14/ 192.168.4.2:/root/ 3.安裝環境的準: [[email

CentOS環境部署kafka叢集

CentOS下部署kakfa叢集 zookeeper版本:zookeeper-3.4.13 kakfa版本:kafka_2.11-2.0.0 1 環境準備 在已有zookeeper叢集上,部署kakfa叢集。 zookeeper叢集主機資訊如下:

centos7部署rsync+innotify實現數據同步

業務 只需要 客戶 name 服務器 innotify configure system mat 一、文檔目的隨著應用系統規模的不斷擴大,對數據的安全性和可靠性也提出的更好的要求,rsync在高端業務系統中也逐漸暴露出了很多不足。首先,rsync在同步數據時,需要掃描所有文