CentOS는 7 사육사 + ActiveMQ를 클러스터 설치

원칙

사육사 달성을 사용하여 마스터 - 슬레이브 구현은, ActiveMQ를 효과적인 해결책이 될 매우 사용할 수 있습니다.

가용성 원리 :

  • 사육사 (클러스터)를 사용하여 모든의 ActiveMQ 브로커 등록합니다.
  • 오직 하나의 브로커 (즉, 마스터 노드) 외부에서 서비스를 제공 할 수있는, 다른 브로커가 슬레이브로 간주하는 대기 상태에있다.
  • 주인이 오류로 인해 서비스를 제공 할 수없는 경우, 내부 메커니즘 사육사 선거의 사용은 마스터 브로커가 슬레이브에서 노드 역할을 선출 서비스를 제공 할 것입니다.

환경 준비

호스트 이름 체계 IP 주소 ZK 포트 MQ 버전 MQ 메시징 포트 MQ 콘솔 포트
node01 Centos7.5 172.16.1.11 2,181 5.15.6 61616 8161
node02 Centos7.5 172.16.1.12 2,181 5.15.6 61616 8161
node03 Centos7.5 172.16.1.13 2,181 5.15.6 61616 8161

사육사 클러스터

설치 기사가 도입되기 전에 클러스터를 사육사 CentOS는 7 사육사 프리젠 테이션 및 클러스터 설치를 이것은 또한 환경의 사용이다;

ActiveMQ를 설치

다운로드 :

다음 작업은 세 개의 서버의 운영에 필요합니다 :

cd /opt/soft/

tar xf apache-activemq-5.15.6-bin.tar.gz 

mv apache-activemq-5.15.6 /opt/activemq-5.16.6

ln -s /opt/activemq-5.16.6 /opt/activemq

ls -ld /opt/activemq*

# lrwxrwxrwx  1 root root  20 Mar  1 14:22 /opt/activemq -> /opt/activemq-5.16.6
# drwxr-xr-x 10 root root 193 Sep  4  2018 /opt/activemq-5.16.6

구성

의 개정,

다음과 같은 라인 brokerNameactivemq-cluster, 또는 여기에 사용자 정의 값은 두 개의 추가 같은 캔 클러스터를 표시해야합니다.

<broker xmlns="http://activemq.apache.org/schema/core" brokerName="activemq-cluster" dataDirectory="${activemq.data}">

수정 II.

다음과 같이 요구 등 정보 사육사를 추가, 클러스터 관련 정보를 증가 :

당신은 소스 파일에 persistenceAdapter 태그를 삭제할 수 있습니다, 다음 포트 관련 변경 사항 아래에 직접 내용을 복사합니다.

이러한 구성에 따라, 나머지 두 구성 될 필요가있는 유일한 차이에 필요하다 hostname각 컴퓨터 변형의 이름 값에 상응한다.

        <persistenceAdapter>
            <!--<kahaDB directory="${activemq.data}/kahadb"/> -->
            <replicatedLevelDB
                directory="${activemq.data}/leveldb"
                replicas="3"
                bind="tcp://0.0.0.0:62222"
                zkAddress="172.16.1.11:2181,172.16.1.12:2181,172.16.1.13:2181"
                hostname="node01"
                sync="local_disk"
                zkPath="/activemq/leveldb-stores"
            />
        </persistenceAdapter>

테스트 시작

좋은 후 세 개의 서버의 위의 구성에 따라 수정 테스트를 시작

/opt/activemq/bin/activemq start

# INFO: Loading '/opt/activemq-5.16.6//bin/env'
# INFO: Using java '/opt/jdk/bin/java'
# INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
# INFO: pidfile created : '/opt/activemq-5.16.6//data/activemq.pid' (pid '12405')

참고 : 세 가지 서비스가 시작 후에는 것을 주목해야한다, 클러스터는 정상이며, 하나의 기계가 서비스를 제공하기 위해, 나머지 두 개의 포트를 수신하지 않습니다

보기 :

node01 :

[root@node01 conf]# netstat -lntup | egrep '61616|8161|62222'
tcp6       0      0 :::8161                 :::*                    LISTEN      12405/java          
tcp6       0      0 :::62222                :::*                    LISTEN      12405/java          
tcp6       0      0 :::61616                :::*                    LISTEN      12405/java

node02 :

[root@node02 data]# netstat -lntup | egrep '61616|8161|62222'
[root@node02 data]#

node03 :

[root@node03 data]# netstat -lntup | egrep '61616|8161|62222'
[root@node03 data]#

추천

출처www.cnblogs.com/winstom/p/12390077.html