High Availability
High Availability (HA) in cloud infrastructure broadly refers to a robust pool of resources that can maintain operations if a subset of the pool goes offline.
This page explores HA at each layer on the OrionVM stack.
Storage
Storage on the OrionVM platform is transparently HA by default, without extra costs or any configuration.
The hyperconverged stack exports storage to a shared SAN over InfiniBand, which facilitates synchronous replication of all disks for a minimum n+1 redundancy.
In the event a node goes offline, the unaffected replica is automatically and transparently used to resilver the disk elsewhere in the cluster, to return each disk to a minimum n+1 redundancy.
Instances
Clusters in each region automatically load balance based on node utilisation, which may result in two instances booting onto the same node.
To mitigate this, instances can be pooled into HA groups, to enforce separate nodes for each running instance. In the event a node goes offline, only a subset of instances will be impacted.
To create an add instances to an HA group:
- Navigate to the end-user portal
- Navigate to the Instances screen under Compute
- Hold down [SHIFT] and click a range of Instances
- Right-click and select Group for High Availability
To remove instances from an HA group, perform the same actions and select Ungroup.
NOTE: By design, running instances cannot be added to an HA group, as they may already be sharing a node. Powering down instances before adding them to an HA group enforces separate nodes for when they're started.
IP Addresses
Instances can be created to share one or more IP addresses in a Heartbeat-like configuration. To create instances with shared IPs:
- Navigate to the end-user portal
- Navigate to the Instances screen under Compute
- Click New Instance
- Click Advanced... in the System column
- Choose One or Two under H/A duplicates
Note the Networking column now shows a New shared public IP address.
Applications and File Systems
Applications such as databases, groupware, and web servers can be configured to run HA, and other clusters can be built at the file system level for efficiency and speed.
These configurations are beyond the scope of this documentation, but can be easily achieved using private networks between instances to build a robust cluster.
Refer to the documentation for your application stack on deploying them in a high availability configuration. If they can be deployed on physical servers, they can generally be deployed on instances, with the same automatic storage replication.