Overview
High Availability refers to the continuous operation of any given system, in this case Quality Management System (QMS). The continuous operation of the system is measured in up-time. A 100% operational system is one that never fails. The industry standard measurement for uptime is known as five 9s, or operational 99.999% of the time. That relates to a down time of about 5 minutes a year. For QMS High Availability the downtime is in reference to unscheduled down time. Scheduled maintenance events are not factored in to the operational uptime of QMS.
There are several components that make QMS highly available and all of them must be made redundant. There must be at least two of everything. There are also components on the peripheral of QMS that should also be made Highly Available, but are outside the control and scope of QMS. Specifically, this would be the PBX and the File System Storage that QMS relies upon.
Another aspect of High Availability is Geographical Redundancy. Not only should there be at least two of every component in a Highly Available system, but those components should run in geographically separate locations. Typically, the farther apart the better the redundancy. This is to account for natural disasters or power outages. If the servers are located in the same lab, for example, a simple flood or power outage could bring down both servers. So, geographic location of the servers is a factor.
Related to High Availability are the concepts of failover and load-balancing. Failover indicates that as soon as a primary component goes down or a server fails, the system will automatically failover to the secondary component. This failover should be seamless and occur with the least amount of data loss or down time as possible. Load-balancing also attempts to utilize all available resources equally to spread out resources. This is typically handled in a round-robin fashion where one service or request is sent to each redundant component. This can also referred to as clustering. For the most part, QMS does not support load-balancing, although some versions of Database Clustering can be implemented within QMS.
The final concept involved with High Availability is Disaster Recovery. What happens in the event of human error, technology failure, or natural disaster where systems or components fail? Recovery time refers to the amount of time it takes for the systems to come back up to a fully redundant, highly available system. This is primarily accomplished through organizational policies and procedures set in place to ensure the fastest recovery time. The policies involve geographical redundancy, database backups and replication, system mirroring, hot swappable systems, uninterruptable power supplies (UPS), and various disaster mitigation systems such as fire prevention and alarms. These organizational policies and procedures are outside the scope of QMS but worthy of mention.
QMS is fully redundant and capable of being geographically redundant. It also provides automatic failover from primary components to secondary components. In QMS, all requests will go to the primary component until there is a failure at which time, requests will be automatically be sent to the secondary component. When combined with redundant and highly available peripheral systems and quality disaster recovery procedures, QMS supports industry standard High Availability.