Topology for HTML5 based UI

Introduction

All nodes must use the same:

  • context root
  • proxy
  • session cookie name

The topology that is described here runs behind a proxy for higher security and uses a 3rd party load balancer (software or hardware) for dispatching client requests.

Install the cluster

Description

In this environment:

  • the PN and RNs are accessed through a unique proxy
  • chosen client browser requests sent to the RNs are dispatched by a real load balancer (software or hardware). If an RN becomes unavailable, it is the responsibility of the load balancer to transfer the requests to another RN.

The IP addresses displayed in the diagram are only examples in order to ease comprehension; you can use any network as long as the IP addresses are different.

Limitations

  • The PN and the proxy/load balancer must use either HTTP or HTTPS, they cannot be mixed.
  • All nodes must use the same host and port in the proxy URL.
  • All nodes must use the same context root.
  • Any new RNs must be declared in the load balancer.

Installation

Install each node (Install a node) by defining the following settings:

  • through the installer or,
  • manually inside the conf/platform.properties file.
Primary node Replica node
platform.properties
com.systar.electron.type=PRIMARY
com.systar.electron.host=<Primary host/IP address on internode network, eg: 172.16.5.10>
com.systar.gluon.clusterId=<Generated cluster id, like 00000007-001-000>

In this topology, you must configure proxy URL and context root on the default network:

platform.properties
com.systar.boson.http.proxyUrl=<Proxy URL on default network, eg: 10.0.0.1>
com.systar.boson.http.contextRoot=<Common context root>

In this topology, you must configure the session cookie name:

platform.properties
com.systar.photon.application.sessionCookieName=<Common session cookie name>

To disable the distributed computing feature on the PN:

platform.properties
com.systar.krypton.distributedcomputing.primaryComputingEnable=false

Database encryption should be shared:

platform.properties
com.systar.titanium.encryptionKeyFile=${com.systar.platform.conf.dir}/encryption.key
platform.properties
com.systar.electron.type=REPLICA
com.systar.electron.host=<Primary host/IP address on internode network, eg: 172.16.5.10>
com.systar.electron.localhost=<Replica host/IP address on internode network, eg: 172.16.5.1X>
com.systar.gluon.clusterId=<Primary cluster id, like 00000007-001-000>

In this topology, you must configure proxy URL and context root on the default network:

platform.properties
com.systar.boson.http.proxyUrl=<Proxy URL on default network, eg: http://10.0.0.1>
com.systar.boson.http.contextRoot=<Common context root>

In this topology, you must configure the session cookie name:

platform.properties
com.systar.photon.application.sessionCookieName=<Common session cookie name>

To disable computings on an RN:

platform.properties
com.systar.krypton.distributedcomputing.replicaComputingEnable=false

To totally disable distributed computing, this parameter must be set to false on all replicas.

Database encryption should be shared:

platform.properties
com.systar.titanium.encryptionKeyFile=<Copy of primary encryption.key>

Example

You can find an example of the NGINX configuration for this topology in the page Proxy and loadbalancer example with NGINX.

Related Links