Evidian > Products > High Availability Software - Zero Extra Hardware > Difference between High Availability and Fault Tolerance

Difference between High Availability and Fault Tolerance

Evidian SafeKit

What is the difference between high availability and fault tolerance?


This article explores the pros and cons of a high availability cluster versus a fault tolerant system by looking at hardware constraints, software failures, RTO, RPO...

The following comparative tables explain in detail the difference between a fault tolerant system and SafeKit, a software high availability cluster.

What is high availability?

A high availability cluster is based on two servers with restart of the critical application in the event of hardware or software failures. There are 2 types of clusters: hardware clusters and software clusters.

Hardware clusters are based on shared disks resulting in dependencies between servers and their connections to shared disk arrays.

Software clusters like Evidian SafeKit are based on real-time data replication and are hardware-agnostic: they can be deployed on physical or virtual servers or in the cloud.

What is fault tolerance?

A fault tolerant system relies on either specialized hardware or specialized hypervisor to detect a hardware failure and instantly switch to a redundant hardware component without application restart.

Fault-tolerant systems only deal with hardware failures and not software failures, by far the most common reason for system downtime.

Pros and cons of high availability and fault tolerance

Software high availability cluster

Active active high availability

Fault-tolerant system

Fault tolerance with lockstep CPU

SafeKit on Windows and Linux Fault tolerant products
Hardware / hypervisor
No dedicated server, no dedicated hypervisor.

Works with the standard and free hypervisor of Windows, Hyper-V, included in Windows kernel for servers and PCs.

Works with the standard and free hypervisor KVM (Kernel-based Virtual Machine) integrated in mainline Linux kernel.

Each server can be the failover server of the other one for multiple applications.

Dedicated hardware or dedicated hypervisor.

The secondary server is dedicated to the execution of the same application synchronized at the instruction level.

Software failure
Software failure supported with restart in another OS environment. Software exception on both servers at the same time on the same OS.
Smooth upgrage/fix of application and OS

Smooth upgrade/fix of application and OS possible server by server.

N and N+1 versions can coexist.


Same application and OS image on both servers.

The recovery time with SafeKit (RTO) depends on the time to detect and to restart the application (about 1 minute).

The data loss with SafeKit (RPO) is zero as the replication is synchronous.

The recovery time (RTO) of a fault tolerant system is zero.

The application is not restarted in case of failure and continue its execution on the secondary server.

The data loss (RPO) is also zero.

Can run on any type of server with standard Windows and Linux OS Depends on specific hardware or on specific hypervisors
Suited for
Software editors which want to add a simple high availability option to their application Environment where hardware failures is the main concern

SafeKit High Availability Differentiators against Competition

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)

Demonstrations of Redundancy and High Availability Solutions

SafeKit Overview

Examples of redundancy and high availability solutions with SafeKit.

Full training here

Microsoft SQL Server Cluster

This video shows a mirror module configuration with synchronous real-time replication and failover.

The file replication and the failover are configured for Microsoft SQL Server but it works in the same manner for other databases.

Free trial here

Apache Cluster

This video shows a farm module configuration with load balancing and failover.

The load balancing and the failover are configured for Apache but it works in the same manner for other web services.

Free trial here

Hyper-V Cluster

This video shows a Hyper-V cluster with full replications of virtual machines.

Virtual machines can run on both Hyper-V servers and they are restarted in case of failure.

Free trial here

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:

SafeKit Technical Documentation

SafeKit Training


  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
    • SafeKit training
  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
    • Cluster configuration
    • Configuration tab
    • Control tab
    • Monitor tab
    • Advanced Configuration tab
    • Troubleshooting
  3. Command line / pptx
    • Cluster administration
    • Module administration
    • Control commands
    • Troubleshooting

Advanced configuration

  1. Mirror module / pptx
    • Mirror's states in action
    • start_prim / stop_prim scripts
    • userconfig.xml
    • Heartbeat (<hearbeat>)
    • Virtual IP address (<vip>)
    • Real-time file replication (<rfs>)
    • How real-time file replication works?
    • Troubleshooting
  2. Farm  module / pptx
    • Farm's states in action
    • start_both / stop_both scripts
    • userconfig.xml
    • Farm heartbeats (<farm>)
    • Virtual IP address (<vip>)
    • Troubleshooting

Advanced configuration

  1. Checkers / pptx
    • Checkers in action
    • userconfig.xml
    • errd checker
    • intf and ip checkers
    • custom checker
    • splitbrain checker for a mirror module
    • tcp, ping, module checkers
    • Troubleshooting


  1. Support tools / pptx
    • How to analyze snapshots?
    • Best practises
  2. Evidian support / pptx
    • Get permanent license key
    • Register on support.evidian.com
    • Call desk