Search code examples
gridgain

Gridgain discovery via a shared database instead of multicast or seed IPs


Many of our applications are 5-15 nodes, not 100s. They have shared databases which are highly available and our customers are well versed at their care and feeding. Looks like the out of the box options for Gridgain discovery are multicast, seed IPs, or EC2 (not applicable). I was hoping to find a JDBC discovery mechanism as well. Since we always have an HA database that is a "shared" artifact in our architecture, it would be nice to remove the configuration of gridgain discovery and just let it use some table with the IPs, ports, and heartbeats of all of the nodes in the topology (or at least some seed ones). Then I would only have to configure the database URL (which I'm already doing) and wouldn't need to complicate things further with IP addresses or multicast.

Is this possible today? I see http://www.gridgain.com/sdk/6.5.6/javadoc/org/gridgain/grid/spi/discovery/tcp/ipfinder/jdbc/GridTcpDiscoveryJdbcIpFinder.html is that what I'm looking for? Anyone have an example of how to use it?


Solution

  • Yes, it is supported and you can use GridTcpDiscoveryJdbcIpFinder to configure it. Looks like the only configuration parameter it requires is the DataSource (setDataSource(...) method).

    It is also documented in Apache Ignite project (which is the new GridGain open source edition): JDBC Based Discovery.