2

We want HA of ActiveMQ. I explored the option of database and with Zookeeper. I wanted to check the option with Shared storage. In the documentation its mentioned about Storage Area Network. However I do not have access to SAN.

Can I use the message store to be on Shared folder on NAS ? or some shared directory on the file system ?

Regards, JE

java_enthu
  • 2,279
  • 7
  • 44
  • 74

3 Answers3

2

You could set up an NFSv4 file share and mount that directory in the kahadb persistence adapter.

Consider following in activemq.xml:

<persistenceAdapter>
            <kahaDB directory="{YOUR_SHARED_STORAGE_DIRECTORY}" lockKeepAlivePeriod="5000">
                <locker>
                        <shared-file-locker lockAcquireSleepInterval="10000" />
                </locker>
            </kahaDB>
</persistenceAdapter>
Nikolay Kostov
  • 16,433
  • 23
  • 85
  • 123
Zoheb Nawaz
  • 117
  • 1
  • 12
0

KahaDB works as well!

The documentation doesn't say that KahaDB also can be used,but have tried it myself KahaDB also supports locking and works well.

As KahaDB is already provided with activeMQ it will be easy to use as nothing extra will be needed.

Hope it helps, Thanks!

Vihar
  • 3,626
  • 2
  • 24
  • 47
  • KahaDB is a "type" of message storage "technique". It could be backed by file system. SAN or Local FS on which MQ is running. I want to know if instead of SAN, can I use NAS or shared directory ? – java_enthu Nov 18 '14 at 05:42
  • shared directory can be used,make sure you give write access as well. – Vihar Nov 19 '14 at 08:17
0

You need a file system that supports file locking (ie NFS4) as described in the documentation and your filesystem needs to be very reliable. I'm not a filesystem expert, so I'm not sure what all is out there to meet that requirement, but I know that more than "SAN" does. I believe that SAN is mentioned due to the reliability, but there other options for reliable network storage out there.

Erik Williams
  • 933
  • 6
  • 5