首页 > 代码库 > 【跟我学Puppet】1.7 mco 配置amq的集群

【跟我学Puppet】1.7 mco 配置amq的集群

  在之前的1.2 Puppet 3.7 Mcollective+SSL加密和权限验证 中大家可以成功的部署mco。并且结合ssl证书做权限管理....

   通过mco自带的failover可以很简单的去做一个高可用...那么问题来了....这个简单的高可用是...

   当有a、b两个mq。一堆server和client现在连接在mq a,当一个网络抖动,部分的机器到了mq b。

   这个时候你用client 在mq a中是看不到在mq b中的主机...这..怎么办。。


配置ActiveMQ

     MQ的配置如下...

     

#保证每个mq的brokerName的名字不重复
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="puppet1" dataDirectory="${activemq.data}" >

<networkConnectors> 
  <networkConnector 
    name="sina-topics" 
    uri="static:(tcp://172.16.43.20:61616)" 
    userName="mcollective" 
    password="secret" 
    duplex="true" 
    ecreaseNetworkConsumerPriority="true" 
    networkTTL="2" 
    dynamicOnly="true"> 
    <excludedDestinations> 
      <queue physicalName=">" /> 
    </excludedDestinations> 
  </networkConnector> 
  <networkConnector 
    name="sina-queues" 
    uri="static:(tcp://172.16.43.20:61616)" 
    userName="mcollective" 
    password="secret" 
    duplex="true" 
    decreaseNetworkConsumerPriority="true" 
    
    networkTTL="5" 
    dynamicOnly="true" 
    conduitSubscriptions="false"> 
    <excludedDestinations> 
      <topic physicalName=">" /> 
    </excludedDestinations> 
  </networkConnector> 
</networkConnectors>

#必须配置,AMQ集群需要使用openwire
<transportConnectors>
  <transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
</transportConnectors>

#配置reply信息的删除
<destinationPolicy>
  <policyMap>
    <policyEntries>
      <policyEntry queue="*.reply.>" gcInactiveDestinations="true" inactiveTimoutBeforeGC="300000" />
      <policyEntry topic=">" producerFlowControl="false"/>
    </policyEntries>
  </policyMap>
</destinationPolicy>



本文出自 “晓风残月” 博客,请务必保留此出处http://kinda22.blog.51cto.com/2969503/1589438

【跟我学Puppet】1.7 mco 配置amq的集群