You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by "frederic.gendebien" <fr...@gmail.com> on 2014/02/21 14:53:48 UTC
Replicated LevelDB working example
Hello guys,
I am trying to set up a Replicated LevelDB store for ActiveMQ 5.9.0, but I
am facing a lot of issues and I am a bit feed up I have to admit...
I have 3 zookeepers running :
- blabla2
- blabla3
- blabla4
I have 3 ActiveMQ instances configured that way for each :
----
<beans
xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://activemq.apache.org/schema/core
http://activemq.apache.org/schema/core/activemq-core.xsd">
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<value>file:${activemq.conf}/credentials.properties</value>
</property>
</bean>
<bean id="logQuery"
class="org.fusesource.insight.log.log4j.Log4jLogQuery"
lazy-init="false" scope="singleton"
init-method="start" destroy-method="stop">
</bean>
<broker xmlns="http://activemq.apache.org/schema/core"
brokerName="localhost" dataDirectory="${activemq.data}">
<destinationPolicy>
<policyMap>
<policyEntries>
<policyEntry topic=">" >
<pendingMessageLimitStrategy>
<constantPendingMessageLimitStrategy limit="1000"/>
</pendingMessageLimitStrategy>
</policyEntry>
</policyEntries>
</policyMap>
</destinationPolicy>
<managementContext>
<managementContext createConnector="false"/>
</managementContext>
<persistenceAdapter>
<replicatedLevelDB
directory="broker/data"
replicas="3"
bind="tcp://0.0.0.0:41414"
zkAddress="blabla2:2181,blabla3:2181,blabla4:2181"
zkPassword=""
zkPath="/activemq/leveldb-stores"
/>
<systemUsage>
<systemUsage>
<memoryUsage>
<memoryUsage percentOfJvmHeap="70" />
</memoryUsage>
<storeUsage>
<storeUsage limit="10 gb"/>
</storeUsage>
<tempUsage>
<tempUsage limit="5 gb"/>
</tempUsage>
</systemUsage>
</systemUsage>
<transportConnectors>
<transportConnector name="openwire"
uri="tcp://0.0.0.0:51515?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
</transportConnectors>
<shutdownHooks>
<bean xmlns="http://www.springframework.org/schema/beans"
class="org.apache.activemq.hooks.SpringContextHook" />
</shutdownHooks>
</broker>
<import resource="jetty.xml"/>
</beans>
----
When I start those ActiveMQ they don't listen to their port 51515 and I
receive a lot of log :
"Store update waiting on 1 replica(s) to catch up to log position 0."
Of course when I try to connect to ActiveMQ : could not connect...
Please help me or tell me a working product,
Kind regards
--
View this message in context: http://activemq.2283324.n4.nabble.com/Replicated-LevelDB-working-example-tp4678239.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
Re: Replicated LevelDB working example
Posted by Noel OConnor <no...@gmail.com>.
I've used this config in the past...
<persistenceAdapter>
<replicatedLevelDB directory="../data/leveldb/amq"
replicas="4"
zkAddress="10.64.132.40:2182,10.64.132.40:2183,
10.64.132.40:2184"
zkPassword="admin"
zkPath="/fabric/registry/clusters/fusemq-replication-elections/default"
securityToken="admin"
sync="quorum_disk"
weight="90"
hostname="10.64.132.148"
bind="tcp://10.64.132.148:61619"
/>
</persistenceAdapter>
On Sat, Feb 22, 2014 at 12:53 AM, frederic.gendebien <
frederic.gendebien@gmail.com> wrote:
> Hello guys,
>
> I am trying to set up a Replicated LevelDB store for ActiveMQ 5.9.0, but I
> am facing a lot of issues and I am a bit feed up I have to admit...
>
> I have 3 zookeepers running :
> - blabla2
> - blabla3
> - blabla4
>
> I have 3 ActiveMQ instances configured that way for each :
>
> ----
> <beans
> xmlns="http://www.springframework.org/schema/beans"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="
> http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans.xsd
> http://activemq.apache.org/schema/core
> http://activemq.apache.org/schema/core/activemq-core.xsd">
>
>
> <bean
>
> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
> <property name="locations">
> <value>file:${activemq.conf}/credentials.properties</value>
> </property>
> </bean>
>
>
> <bean id="logQuery"
> class="org.fusesource.insight.log.log4j.Log4jLogQuery"
> lazy-init="false" scope="singleton"
> init-method="start" destroy-method="stop">
> </bean>
>
>
> <broker xmlns="http://activemq.apache.org/schema/core"
> brokerName="localhost" dataDirectory="${activemq.data}">
>
> <destinationPolicy>
> <policyMap>
> <policyEntries>
> <policyEntry topic=">" >
>
> <pendingMessageLimitStrategy>
> <constantPendingMessageLimitStrategy limit="1000"/>
> </pendingMessageLimitStrategy>
> </policyEntry>
> </policyEntries>
> </policyMap>
> </destinationPolicy>
>
>
>
> <managementContext>
> <managementContext createConnector="false"/>
> </managementContext>
>
>
> <persistenceAdapter>
> <replicatedLevelDB
> directory="broker/data"
> replicas="3"
> bind="tcp://0.0.0.0:41414"
> zkAddress="blabla2:2181,blabla3:2181,blabla4:2181"
> zkPassword=""
> zkPath="/activemq/leveldb-stores"
> />
>
>
> <systemUsage>
> <systemUsage>
> <memoryUsage>
> <memoryUsage percentOfJvmHeap="70" />
> </memoryUsage>
> <storeUsage>
> <storeUsage limit="10 gb"/>
> </storeUsage>
> <tempUsage>
> <tempUsage limit="5 gb"/>
> </tempUsage>
> </systemUsage>
> </systemUsage>
>
>
> <transportConnectors>
>
> <transportConnector name="openwire"
> uri="tcp://
> 0.0.0.0:51515?maximumConnections=1000&wireFormat.maxFrameSize=104857600
> "/>
>
> </transportConnectors>
>
>
> <shutdownHooks>
> <bean xmlns="http://www.springframework.org/schema/beans"
> class="org.apache.activemq.hooks.SpringContextHook" />
> </shutdownHooks>
>
> </broker>
>
>
> <import resource="jetty.xml"/>
>
> </beans>
> ----
>
> When I start those ActiveMQ they don't listen to their port 51515 and I
> receive a lot of log :
> "Store update waiting on 1 replica(s) to catch up to log position 0."
>
> Of course when I try to connect to ActiveMQ : could not connect...
>
> Please help me or tell me a working product,
>
> Kind regards
>
>
>
> --
> View this message in context:
> http://activemq.2283324.n4.nabble.com/Replicated-LevelDB-working-example-tp4678239.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
Re: Replicated LevelDB working example
Posted by Christian Posta <ch...@gmail.com>.
Get it working with one zookeeper first, make things a little simpler.
Then determine:
* Can the master broker (machine) see/connect up to zookeeper? ie,
are there any firewalls in the way or blocking the zookeeper port?
* Can the slave machines see zookeeper?
* Turn logging to DEBUG and post those (pastebin/gist, not directly in email)
On Fri, Feb 21, 2014 at 6:53 AM, frederic.gendebien
<fr...@gmail.com> wrote:
> Hello guys,
>
> I am trying to set up a Replicated LevelDB store for ActiveMQ 5.9.0, but I
> am facing a lot of issues and I am a bit feed up I have to admit...
>
> I have 3 zookeepers running :
> - blabla2
> - blabla3
> - blabla4
>
> I have 3 ActiveMQ instances configured that way for each :
>
> ----
> <beans
> xmlns="http://www.springframework.org/schema/beans"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="
> http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans.xsd
> http://activemq.apache.org/schema/core
> http://activemq.apache.org/schema/core/activemq-core.xsd">
>
>
> <bean
> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
> <property name="locations">
> <value>file:${activemq.conf}/credentials.properties</value>
> </property>
> </bean>
>
>
> <bean id="logQuery"
> class="org.fusesource.insight.log.log4j.Log4jLogQuery"
> lazy-init="false" scope="singleton"
> init-method="start" destroy-method="stop">
> </bean>
>
>
> <broker xmlns="http://activemq.apache.org/schema/core"
> brokerName="localhost" dataDirectory="${activemq.data}">
>
> <destinationPolicy>
> <policyMap>
> <policyEntries>
> <policyEntry topic=">" >
>
> <pendingMessageLimitStrategy>
> <constantPendingMessageLimitStrategy limit="1000"/>
> </pendingMessageLimitStrategy>
> </policyEntry>
> </policyEntries>
> </policyMap>
> </destinationPolicy>
>
>
>
> <managementContext>
> <managementContext createConnector="false"/>
> </managementContext>
>
>
> <persistenceAdapter>
> <replicatedLevelDB
> directory="broker/data"
> replicas="3"
> bind="tcp://0.0.0.0:41414"
> zkAddress="blabla2:2181,blabla3:2181,blabla4:2181"
> zkPassword=""
> zkPath="/activemq/leveldb-stores"
> />
>
>
> <systemUsage>
> <systemUsage>
> <memoryUsage>
> <memoryUsage percentOfJvmHeap="70" />
> </memoryUsage>
> <storeUsage>
> <storeUsage limit="10 gb"/>
> </storeUsage>
> <tempUsage>
> <tempUsage limit="5 gb"/>
> </tempUsage>
> </systemUsage>
> </systemUsage>
>
>
> <transportConnectors>
>
> <transportConnector name="openwire"
> uri="tcp://0.0.0.0:51515?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>
>
> </transportConnectors>
>
>
> <shutdownHooks>
> <bean xmlns="http://www.springframework.org/schema/beans"
> class="org.apache.activemq.hooks.SpringContextHook" />
> </shutdownHooks>
>
> </broker>
>
>
> <import resource="jetty.xml"/>
>
> </beans>
> ----
>
> When I start those ActiveMQ they don't listen to their port 51515 and I
> receive a lot of log :
> "Store update waiting on 1 replica(s) to catch up to log position 0."
>
> Of course when I try to connect to ActiveMQ : could not connect...
>
> Please help me or tell me a working product,
>
> Kind regards
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/Replicated-LevelDB-working-example-tp4678239.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
--
Christian Posta
http://www.christianposta.com/blog
twitter: @christianposta