Middleware de mensajes ActiveMQ + Zookeeper

imagen

Enlace original: https://blog.51cto.com/4259679

El clúster de Kafka se ha implementado antes, se ha instalado Zookeeper, verifique los registros anteriores

dirección IP nombre de host instalar software

192.168.20.40 k8s-master zookeeper 、 ActiveMQ

192.168.20.43 k8s-node2 zookeeper zoo ActiveMQ

192.168.20.39 k8s-node3 guardián del zoológico 、 ActiveMQ

Reinicie el servicio de cuidador del zoológico en los tres servidores.

[root @ k8s-master ~] # cd / data / zookeeper / bin /

[root @ k8s-master bin] # ls

README.txt zkCleanup.sh zkCli.cmd zkCli.sh zkEnv.cmd zkEnv.sh zkServer.cmd zkServer.sh zkServer.sh.back

[root @ k8s-master bin] # ./zkServer.sh start

ZooKeeper JMX habilitado por defecto

Usando config: /data/zookeeper/bin/../conf/zoo.cfg

Iniciando guardián del zoológico ... COMENZADO

imagen

[root @ k8s-node2 ~] # cd / data / zookeeper / bin /

[root @ k8s-node2 bin] # ls

README.txt zkCleanup.sh zkCli.cmd zkCli.sh zkEnv.cmd zkEnv.sh zkServer.cmd zkServer.sh

[root @ k8s-node2 bin] # ./zkServer.sh start

ZooKeeper JMX habilitado por defecto

Usando config: /data/zookeeper/bin/../conf/zoo.cfg

Iniciando guardián del zoológico ... COMENZADO

imagen

[root @ k8s-node3 ~] # cd / data / zookeeper / bin /

[root @ k8s-node3 bin] # ./zkServer.sh inicio

ZooKeeper JMX habilitado por defecto

Usando config: /data/zookeeper/bin/../conf/zoo.cfg

Iniciando guardián del zoológico ... COMENZADO

[root @ k8s-node3 bin] # ps -ef | grep guardián del zoológico

imagen

Tres servidores instalan ActiveMQ


[root @ k8s-master ~] # tar -zxvf apache-activemq-5.15.14-bin.tar.gz 

[root @ k8s-master ~] # mv apache-activemq-5.15.14 / data / activemq

[root @ k8s-master ~] # cd / data / activemq / conf /

[root @ k8s-master conf] # vim activemq.xml

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

Comenta aquí

 <! -

        <persistenceAdapter>

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

        </persistenceAdapter>

        ->

Agregar configuración a continuación

 <persistenceAdapter>

          <replicatedLevelDB  

              directorio = "$ {activemq.data} / leveldb" 

              réplicas = "3"            

              bind = "tcp: //0.0.0.0: 0"         

              zkAddress = "192.168.20.40:2181,192.168.20.43:2181,192.168.20.39:2181" 

              zkPassword = "" 

              hostname = "192.168.20.40" se modifica a la ip de cada servidor

              sync = "disco_local" 

              zkPath = "/ activemq / leveldb-stores" /> Cambiar a una ruta diferente

Modifique la IP a continuación

  <transportConnector name = "openwire" uri = "tcp: //192.168.20.40: 61616? maximumConnections = 1000 & amp; wireFormat.maxFrameSize = 104857600" />

Inicie ActiveMQ

[root @ k8s-master conf] # / data / activemq / bin / activemq start

INFO: Cargando '/ data / activemq // bin / env'

INFORMACIÓN: Usando java '/ usr / local / java / bin / java'

INFO: Iniciando: inspeccione los archivos de registro especificados en logging.properties y log4j.properties para obtener detalles

INFORMACIÓN: archivo pid creado: '/data/activemq//data/activemq.pid' (pid '7865')

imagen

imagen

imagen

Implementación completa

Al usar zookeeper para el equilibrio de carga, solo uno de los tres servidores será el maestro y los otros dos estarán en estado de espera, por lo que solo uno de ellos brindará servicios.

Por lo tanto, aunque se inicia el programa activo de los otros dos servidores, el puerto de servicio 61616 y el puerto de administración 8161 están cerrados y esperando.

----------------------fin---------------------

Lectura recomendada:


Supongo que te gusta

Origin blog.51cto.com/15127516/2657628
Recomendado
Clasificación