eviden-logo

Evidian > Products > High Availability Software - Zero Extra Hardware > Clustering software with load balancing, mirroring and failover

Clustering software with load balancing, mirroring and failover

Evidian SafeKit

High availability and scalability of critical web and database applications with the SafeKit clustering software

Load balancing, mirroring and failover

SafeKit clustering with load balancing and mirroring

Example with the SafeKit clustering software

For example, with the SafeKit clustering software, you can implement IIS load balancing and Microsoft SQL Server mirroring.

For that, you have to deploy a farm module for IIS and a mirror module for Microsoft SQL server. Each farm and mirror module is configured with its own virtual IP address and its own restart scripts.

Both mirror and farm modules can be deployed on a single cluster of two servers. IIS and Microsoft SQL Server will run on these two servers. Or, the two modules can be deployed on two clusters with different servers.

With the SafeKit clustering software, there is no difference between a deployment on the same servers or on different servers.

High availability and scalability solution

The SafeKit clustering software provides a simple high availability and scalability solution for critical web and database applications.

As a result, network load balancing, real time data mirroring and application failover are managed coherently in a same product.

When comparing the SafeKit clustering software with hardware clustering, you do not need shared disk, replicated SAN, load balancers, Enterprise editions of OS or database.

Partners, the success with SafeKit

This platform agnostic solution is ideal for a partner reselling a critical application and who wants to provide a redundancy and high availability option easy to deploy to many customers.

With many references in many countries won by partners, SafeKit has proven to be the easiest solution to implement for redundancy and high availability of building management, video management, access control, SCADA software...

Building Management Software (BMS)

Video Management Software (VMS)

Electronic Access Control Software (EACS)

SCADA Software (Industry)

How the SafeKit mirror cluster works with Windows or Linux?

Step 1. Real-time replication

Server 1 (PRIM) runs the Windows or Linux application. Clients are connected to a virtual IP address. SafeKit replicates in real time modifications made inside files through the network. 

File replication at byte level in a mirror Windows or Linux cluster

The replication is synchronous with no data loss on failure contrary to asynchronous replication.

You just have to configure the names of directories to replicate in SafeKit. There are no pre-requisites on disk organization. Directories may be located in the system disk.

Step 2. Automatic failover

When Server 1 fails, Server 2 takes over. SafeKit switches the virtual IP address and restarts the Windows or Linux application automatically on Server 2.

The application finds the files replicated by SafeKit uptodate on Server 2. The application continues to run on Server 2 by locally modifying its files that are no longer replicated to Server 1.

Failover of Windows or Linux in a mirror cluster

The failover time is equal to the fault-detection time (30 seconds by default) plus the application start-up time.

Step 3. Automatic failback

Failback involves restarting Server 1 after fixing the problem that caused it to fail.

SafeKit automatically resynchronizes the files, updating only the files modified on Server 2 while Server 1 was halted.

Failback in a mirror Windows or Linux cluster

Failback takes place without disturbing the Windows or Linux application, which can continue running on Server 2.

Step 4. Back to normal

After reintegration, the files are once again in mirror mode, as in step 1. The system is back in high-availability mode, with the Windows or Linux application running on Server 2 and SafeKit replicating file updates to Server 1.

Return to normal operation in a mirror Windows or Linux cluster

If the administrator wishes the application to run on Server 1, he/she can execute a "swap" command either manually at an appropriate time, or automatically through configuration.

How the SafeKit farm cluster works with Windows or Linux?

Virtual IP address in a farm cluster

How the Evidian SafeKit farm cluster implements Windows or Linux network load balancing and failover

On the previous figure, the Windows or Linux application is running on the 3 servers (3 is an example, it can be 2 or more). Users are connected to a virtual IP address.

The virtual IP address is configured locally on each server in the farm cluster.

The input traffic to the virtual IP address is received by all the servers and split among them by a network filter inside each server's kernel.

SafeKit detects hardware and software failures, reconfigures network filters in the event of a failure, and offers configurable application checkers and recovery scripts.

Load balancing in a network filter

The network load balancing algorithm inside the network filter is based on the identity of the client packets (client IP address, client TCP port). Depending on the identity of the client packet input, only one filter in a server accepts the packet; the other filters in other servers reject it.

Once a packet is accepted by the filter on a server, only the CPU and memory of this server are used by the Windows or Linux application that responds to the request of the client. The output messages are sent directly from the application server to the client.

If a server fails, the SafeKit membership protocol reconfigures the filters in the network load balancing cluster to re-balance the traffic on the remaining available servers.

Stateful or stateless applications

With a stateful Windows or Linux application, there is session affinity. The same client must be connected to the same server on multiple TCP sessions to retrieve its context on the server. In this case, the SafeKit load balancing rule is configured on the client IP address. Thus, the same client is always connected to the same server on multiple TCP sessions. And different clients are distributed across different servers in the farm.

With a stateless Windows or Linux application, there is no session affinity. The same client can be connected to different servers in the farm on multiple TCP sessions. There is no context stored locally on a server from one session to another. In this case, the SafeKit load balancing rule is configured on the TCP client session identity. This configuration is the one which is the best for distributing sessions between servers, but it requires a TCP service without session affinity.

SafeKit Modules for Plug&Play Redundancy and High Availability Solutions

Advanced clustering architectures

Several modules can be deployed on the same cluster. Thus, advanced clustering architectures can be implemented:

Evidian SafeKit Webinar

Evidian SafeKit Overview Slides

  • Demonstration
  • Examples of redundancy and high availability solution
  • Evidian SafeKit sold in many different countries with Milestone
  • 2 solutions: virtual machine cluster or application cluster
  • Distinctive advantages
  • More information on the web site

More slides

SafeKit High Availability Differentiators against Competition

Evidian SafeKit 8.2

All new features compared to 7.5 described in the release notes

Packages

One-month license key

Technical documentation

Training

Modules and quick installation

SafeKit 8.2 Training

Introduction

  1. Overview / pptx

    • Demonstration
    • Examples of redundancy and high availability solution
    • Evidian SafeKit sold in many different countries with Milestone
    • 2 solutions: virtual machine or application cluster
    • Distinctive advantages
    • More information on the web site
  2. Competition / pptx

    • Cluster of virtual machines
    • Mirror cluster
    • Farm cluster

Installation, Console, CLI

  1. Install and setup / pptx
    • Package installation
    • Nodes setup
    • Upgrade
  2. Web console / pptx
    • Configuration of the cluster
    • Configuration of a new module
    • Advanced usage
    • Securing the web console
  3. Command line / pptx
    • Configure the SafeKit cluster
    • Configure a SafeKit module
    • Control and monitor

Advanced configuration

  1. Mirror module / pptx
    • start_prim / stop_prim scripts
    • userconfig.xml
    • Heartbeat (<hearbeat>)
    • Virtual IP address (<vip>)
    • Real-time file replication (<rfs>)
    • How real-time file replication works?
    • Mirror's states in action
  2. Farm  module / pptx
    • start_both / stop_both scripts
    • userconfig.xml
    • Farm heartbeats (<farm>)
    • Virtual IP address (<vip>)
    • Farm's states in action
  1. Checkers / pptx
    • userconfig.xml
    • errd checker
    • intf and ip checkers
    • custom checker
    • splitbrain checker for a mirror module
    • tcp, ping, module checkers
    • Checkers in action

Troubleshooting

  1. Troubleshooting / pptx
    • Analyze yourself the logs
    • Take snapshots for support
    • Boot / shutdown
    • Web console / Command lines
    • Mirror / Farm / Checkers
    • Running an application without SafeKit

Support

  1. Evidian support / pptx
    • Get permanent license key
    • Register on support.evidian.com
    • Call desk