High Availability
High availability of the VMs is achieved by creating two separate VMs in different availability zones. The Azure Load Balancer will route the traffic to the two VMs in an active/active configuration. This configuration qualifies for the Azure 99.99% SLA for virtual machines.
The Azure Load Balancer will evenly distribute the traffic between the two VMs. he Load Balancer will use Health Probes to determine if there is failure in the backend application in order to divert traffic elsewhere. The interval and threshold of the Health Probes is configurable.
The Health Probe configuration for the Load Balancer will perform heart beat checks on the 8080 port using the TCP protocol. The 8080 port is the service port for Mirth® Connect by NextGen Healthcare, therefore the health of the resource is determined on the Mirth® Connect by NextGen Healthcare application level and not the health of the Operating System or VM.
The managed Azure SQL database has a minimum 99.99% uptime SLA. This is achieved by redundancy between three different availability zones. The Azure SQL database does not have a direct alerting mechanism to indicate when the database is down. But there are ways to determine the health of the database by monitoring metrics and setting alerts based on those metrics. The SQL instance monitors CPU usage, disk IO, disk usage, successful/failed connections, deadlocks, and so on. Alerts can be configured to trigger based on the metrics. In this way, you can determine the health of the database based on your usage. The metrics and alerting details can be found in the following link:
https://docs.microsoft.com/en-us/azure/azure-sql/database/alerts-insights-configure-portal
Azure's site recovery can be implemented. It is important to note when using site recovery, that each VM running Mirth® Connect by NextGen Healthcare should have its own VM replication process. Each instance of Mirth® Connect by NextGen Healthcare has a server ID that is generated, unique to to that instance. If multiple instances of Mirth® Connect by NextGen Healthcare with the same server ID is stood up in a cluster, this can cause issues.