Requirements for third party load balancer
The solution must be based on software or hardware load balancer in the customer's network (black box Failover and Load balancing on the job release side). The unit of failover and load balancing is one SafeQ server cluster. Each unit is represented from the perspective of MFPs by one and only one virtual IP address or FQDN (reverse lookups have to be configured) which is held by the load balancer. This virtual address will be used by MFPs and YSoft SafeQ Terminals.
Following requirements are expected to be delivered by the load balancer:
it shall make failover decision based on the state of appropriate Windows Services as reported by Service Control Manager of individual servers running CML/TS services or based on the availability of selected TCP ports. If TCP based monitor is in place, required ports for monitoring are 4096 (for CML service) and 5012 (for TS service). The TCP monitor must finish connection after SYN - ACK with RST, not with FIN. Our recommendation for monitoring period is 5 seconds with node considered down after 3 unsuccessful attempts. Node shall not be considered up immediately but after defined time which must be based on real time required for CML server to start.
The load balancer shall honor affinity between MFPs and particular CML/TS service instances in the SafeQ cluster based on the prior decisions made by the load balancer and configurable timeout window. I.e., when the load balancer decides to connect an MFP with a particular CML/TS service, it must connect the MFP to the same CML/TS service if connection (incl. DNS lookup) attempts are made by the MFP before the configurable timeout elapses. Affinity needs to be set for a minimum of 30 minutes.
The load balancer shall distribute requests among CML/TS nodes in the SafeQ cluster uniformly.
The load balancer shall distribute requests from MFDs to CML/TS based on Network communication overview (typically TCP ports 5011 - 5025 and ports for FTP/WebDAV).
The load balancer shall handle monitoring and reporting of the service failures on its own.