Example of 2 Node Cluster Configuration

This section contains examples of CloverETL cluster nodes configuration. We assume that the user "clover" is running the JVM process and the license will be uploaded manually in the web GUI. In addition it is necessary to configure:

Basic 2-nodes Cluster Configuration

This example describes the simple cluster: each node has direct connection to database.

Configuration of 2-nodes cluster, each node has access to database

Figure 30.1. Configuration of 2-nodes cluster, each node has access to database


configuration of node on 192.168.1.131

	jdbc.driverClassName=org.postgresql.Driver
	jdbc.url=jdbc:postgresql://192.168.1.200/clover?charSet=UTF-8
	jdbc.dialect=org.hibernate.dialect.PostgreSQLDialect
	jdbc.username=clover
	jdbc.password=clover

	cluster.enabled=true
	cluster.node.id=node01
	cluster.http.url=http://192.168.1.131:8080/clover
	cluster.jgroups.bind_address=192.168.1.131
	
	cluster.group.name=TheCloverCluster1
	      

Configuration of node on 192.168.1.132

	jdbc.driverClassName=org.postgresql.Driver
	jdbc.url=jdbc:postgresql://192.168.1.200/clover?charSet=UTF-8
	jdbc.dialect=org.hibernate.dialect.PostgreSQLDialect
	jdbc.username=clover
	jdbc.password=clover

	cluster.enabled=true
	cluster.node.id=node02
	cluster.http.url=http://192.168.1.132:8080/clover
	cluster.jgroups.bind_address=192.168.1.132
	
	cluster.group.name=TheCloverCluster1
	

The configuration is done in a properties file. The file can be placed either on a default, or specified location.

2-nodes Cluster with Proxied Access to Database

This cluster configuration is similar to previous one, but only one node has direct access to database. The node2 has to use node1 as a proxy.

Configuration of 2-nodes cluster, one node without direct access to database

Figure 30.2. Configuration of 2-nodes cluster, one node without direct access to database


Configuration of node on 192.168.1.131

	jdbc.driverClassName=org.postgresql.Driver
	jdbc.url=jdbc:postgresql://192.168.1.200/clover?charSet=UTF-8
	jdbc.dialect=org.hibernate.dialect.PostgreSQLDialect
	jdbc.username=clover
	jdbc.password=clover

	cluster.enabled=true
	cluster.node.id=node01
	cluster.http.url=http://192.168.1.131:8080/clover
	cluster.jgroups.bind_address=192.168.1.131
	
	cluster.group.name=TheCloverCluster2
	      

Configuration of node on 192.168.1.132

	cluster.datasource.type=remote                            (1)
	cluster.datasource.delegate.nodeIds=node01

	cluster.enabled=true
	cluster.node.id=node02
	cluster.http.url=http://192.168.1.132:8080/clover
	cluster.jgroups.bind_address=192.168.1.132
	
	cluster.group.name=TheCloverCluster2
	

(1)

These two lines describe access to database via another node.

2-nodes cluster with load balancer

If you use any external load balancer, the configuration of CloverETL Cluster will be same as in the first example.

Configuration of 2-nodes cluster, one node without direct access to database

Figure 30.3. Configuration of 2-nodes cluster, one node without direct access to database


The cluster.http.url and cluster.jgroups.bind_address are urls of particular cluster nodes even if you use load balancer.