By Dave Bermingham
A video management system (VMS) can enable a small team of operators to secure a large physical space — be it a building, a manufacturing facility, even an entire sports arena. But what happens if the underlying infrastructure upon which the VMS depends unexpectedly goes offline? Your video cameras may be operating perfectly, but if the video server collecting the video feeds goes down, your security team is blind, and the building, the manufacturing floor, or whatever you are intent on protecting becomes vulnerable.
Configuring your VMS infrastructure for high availability (HA) — here meaning that your systems remain available and operational at least 99.99% of the time — is key to minimizing this vulnerability.
Configuring for high availability
So how and where to start on the path to high availability? The first consideration should address which parts of your VMS infrastructure need HA. If you are using a VMs solution such as Milestone’s XProtect, to name just one example, you may have a recording server that captures input from still and video cameras, sensors, and other sources throughout a building or campus. You’ll also have a management server that controls the entire environment as well as a server running the SQL Server database. There may be additional servers running partner applications, mobile applications, and more. Beyond that, you’ll have firewalls and client applications — from the smart clients to web clients, mobile clients, and management clients, each of which presents different information to authorized users with different needs.
The critical systems in this picture are those that are streaming the images from the cameras — so the event server, the management server, SQL Server, and perhaps the server supporting select partner applications. To run those servers in a high availability configuration, you’ll need to duplicate the server infrastructure itself in a separate and geographically distinct location. That could be a physically separate on-premises data center or a separate availability zone (AZ) in the cloud. Then, you’ll rely on software that monitors the integrity of the production servers. If the HA monitoring software detects that some aspect of the system is not working properly, it automatically takes steps to fix the problem or, if the problem cannot be fixed immediately, to bring online the appropriate server in the secondary location to take over the activities of the server that has stopped working properly. Because the process of bringing that secondary server online takes only seconds, there is virtually no interruption in coverage, and you avoid the security vulnerabilities that could arise if your VMS goes offline for any extended period.
Ensuring access to current data
Regardless of whether you choose to replicate the primary infrastructure in the cloud or on-premises, the more important question is how you’ll connect those environments. That’s more than a question of a high-speed network, though that is critical. To ensure that a server in the secondary infrastructure can immediately take over for a server in the primary infrastructure that has just gone dark, you’ll need to ensure that that secondary server has access to the same data that the primary server was using. And because you’ll want to avoid a shared storage solution such as a SAN, which creates a single point of failure vulnerability, you’ll need a way to replicate data – in real time – between storage attached to each of the servers in the primary and secondary infrastructures.
Some servers in the VMS may have data replication services built in. The availability groups (AG) feature of Microsoft SQL Server, for example, will automatically replicate the VMS database from one instance of SQL Server to another. The AG services in SQL Server will also orchestrate failover from the primary instance of SQL Server to the secondary instance if the primary instance goes offline.
However, other important servers in your VMS may lack such built-in data replication and failover services, so you’ll need to rely on a third-party product. HA products designed to create what are known as SANless clusters can not only provide the monitoring and automated failover features described above but also provide the synchronous data replication services that ensure full synchronization of data between the primary and secondary infrastructures. If your primary VMS event server or management server fails, the SANless clustering tools will have replicated the data those systems to their counterparts in the secondary infrastructure, and the SANless clustering software will orchestrate the automatic failover to those secondary servers. Indeed, the SANless clustering approach can replicate any server in your VMS — including SQL Server, should you want to manage your entire HA infrastructure using one tool.
Ensuring HA without initiating a failover
While a central feature of services ensuring HA is the ability to orchestrate a failover to a server standing ready in the secondary infrastructure, failover is, at times, an unnecessarily large hammer with which to address a problem. If the issue causing a performance degradation in a server is a stalled queue, for example, it might be easier and less intrusive to restart the queue rather than failing over to the secondary server.
Some SANless clustering products incorporate this approach to HA through what are known as application recovery kits (ARKs). While they will always execute a failover when failover is called for, solutions that incorporate ARKs can also respond to smaller problems with smaller hammers. Some ARKs are application-aware, which is to say that they are designed to monitor specific aspects of an application or server and know what to do to resolve specific issues associated with that application/server. That awareness enables them to return a server to a healthy, high-performance state without forcing a failover.
Uninterrupted insight
Ultimately, if you want uninterrupted insight to ensure the security of your building, your shop floor, your campus – whatever you are tasked with protecting – you need to ensure uninterrupted access to the VMS that provides that insight. Configuring your VMS infrastructure for high availability is key — whether your infrastructure is on-prem or in the cloud, whether is physical or virtualized. You can configure a solution cost-efficiently by replicating only those aspects of your VMS that are critical to continued monitoring, and by doing so you eliminate the vulnerabilities that could arise if critical components of your system were to go offline unexpectedly.
The author
Dave Bermingham is the Senior Technical Evangelist at SIOS Technology. He is recognized within the technology community as a high availability expert and has been honored by his peers by being elected to be a Microsoft MVP in Clustering six times and seven times as a Cloud and Datacenter MVP. Dave is a frequent speaker at technical conferences, including SQL Saturdays, Pass Summit, and MSSQL Tips, and is the author of Clustering for Mere Mortals blog. Dave holds numerous technical certifications and has more than thirty years of IT experience, including in finance, healthcare, and education.






