how to make GeoEvent Clusters work

5331
4
01-22-2014 08:52 PM
chenjun
New Contributor
hi:
      just one GeoEvent is too simple, i want to make a GeoEvent clusters. in the com.esri.ges.messaging.jms.cfg i see some things.
com.esri.ges.messaging.jms.destinationPolicy.queue.memoryLimit=100 mb
com.esri.ges.messaging.jms.destinationPolicy.topic.memoryLimit=100 mb
com.esri.ges.messaging.jms.systemUsage.memoryUsage.limit=128 mb
com.esri.ges.messaging.jms.systemUsage.storeUsage.limit=100 gb
com.esri.ges.messaging.jms.systemUsage.tempUsage.limit=10 gb
com.esri.ges.messaging.jms.brokerNamed=192.168.110.111
com.esri.ges.messaging.jms.dataDirectory=\\chenjun\data\activemq\localhost
com.esri.ges.messaging.jms.kahadbDirectory=\\chenjun\data\activemq\localhost\kahadb
com.esri.ges.messaging.jms.openwire.uri=tcp://localhost:61616
com.esri.ges.messaging.jms.stomp.uri=stomp://localhost:61613

brokerNamed is the master node?
dataDirectory is the ActiveMQ Directory?
kahadbDirectory is the kahadb Directory?
i see some paper about the ActiveMQ,maybe the GeoEvent Architecture is Msater-Slave+Broker Cluster mode.
is the geoEvent now support Cluster?
if so, how can i modify the com.esri.ges.messaging.jms.cfg file??
i try to modify the file like this:
in master  i do nothing,but i shared a folder(C:\Program Files\ArcGIS\Server\GeoEventProcessor\data)
in slave i modify the com.esri.ges.messaging.jms.cfg file
com.esri.ges.messaging.jms.brokerNamed=192.168.110.111
com.esri.ges.messaging.jms.dataDirectory=\\chenjun\data\activemq\localhost
com.esri.ges.messaging.jms.kahadbDirectory=\\chenjun\data\activemq\localhost\kahadb

then, i send many messages to the master node. all messages is being Processed by the master machine, no messages is being blanced to the slave machine.
i want this:
when messages is too much, master and slave machine can process it together. one message only being processed once. like the arcgis web adaptor .

so,how to do?
thanks
0 Kudos
4 Replies
RJSunderman
Esri Regular Contributor
Hello Chen -

I'd like to make sure that I understand your question. Are you working with a single data stream and need advice on how to manually configure a cluster of GeoEvent Processor instances which will work collectively to pull and processing individual events from the high volume data being received?  Support for high-availability and clustering are concepts being developed for the "11" product release which will feature a new type of stream service input. We are working to make this functionality available later this year.

It may be possible to manually configure high-availability and clustering for the current 10.2.1 product release - but it depends on what exactly you are trying to accomplish.

If you are working with several different (independent) data feeds, you can scale your site architecture by installing additional instances of GeoEvent Processor onto the GIS Servers in your ArcGIS for Server site. You would simply need to make sure that each instance of GeoEvent Processor had its own Inputs, Outputs, and GeoEvent Services.

- RJ
0 Kudos
chenjun
New Contributor
Hello Chen -

I'd like to make sure that I understand your question. Are you working with a single data stream and need advice on how to manually configure a cluster of GeoEvent Processor instances which will work collectively to pull and processing individual events from the high volume data being received?  Support for high-availability and clustering are concepts being developed for the "11" product release which will feature a new type of stream service input. We are working to make this functionality available later this year.

It may be possible to manually configure high-availability and clustering for the current 10.2.1 product release - but it depends on what exactly you are trying to accomplish.

If you are working with several different (independent) data feeds, you can scale your site architecture by installing additional instances of GeoEvent Processor onto the GIS Servers in your ArcGIS for Server site. You would simply need to make sure that each instance of GeoEvent Processor had its own Inputs, Outputs, and GeoEvent Services.

- RJ

sorry,my english is just so so.you understand what i said. sorry again.currently users are not satisfied with the GeoEvent,because  it not support for high-availability and clusters. i am from esriChina a agent of ArcGIS. i have some idea
1,when messges come from ,it will be Scratched in the kahaDB by the activeMQ.
2,if the size of kahaDB is bigger than a number that user  specify in the com.esri.ges.messaging.jms.cfg ,then the activeMQ send the other messages to the slave machine. but master how to know the slave machine? in slave it can config a file that specify the master machine's IP and the kahaDB's shared file location.
3,ActiveMQ is using a network boker architecture
thanks ,i am look forward to the "11" product.
0 Kudos
VladislavPlechnoy
New Contributor III
Dear Chen Jun,
Currently GeoEvent processor architecture doesn�??t support clustering. This capability will be released in the next major version of the product.

Embedded JMS broker instance of ActiveMQ currently used by GeoEvent processor is not intended for external use. If you would like you can setup a cluster of ActiveMQ brokers as outlined here and configure GeoEvent processor to produce/consume messages to/from there by means of ActiveMQ input/output connectors that are available here along with a sample tutorial that provides details on how to set them up.

Modification of the configuration file you are enquiring about is out of scope of what is recommended by GeoEvent processor team. This will not produce a desired effect because clustering of ActiveMQ is not the same thing as clustering of GeoEvent processing framework. There are many other components that require change in order to support clustering.

I hope this explanation helps.
0 Kudos
Katheryn_ZulayPeraza
Esri Contributor

Hello  all,

Do you have some documentation for correct installation and set up to Geoevent in  ArcGIS Server cluster?

All machines are in the same cluster in ArcGIS server and are  running and have geoevent extension installed, but when any machine try  to start the geovenet manager ( https://localhost:6443/geoevent/manager), the display show this message: No services have been found.

Thanks in advance

0 Kudos