Add highly available NFS option #151
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
(@rgardler -- Just an informational PR, no need to review. I manually validated that this feature works.)
Implements the highly available NFS cluster as a file server type option. Uses DRBD and Pacemaker/Corosync to implement active-passive (master-slave) failover NFS cluster. Usual/non-cloud way is to use a fixed secondary IP address that can fail over from one machine to the other, but on clouds (at least Azure), even secondary IP address must be assigned to a specific VM on the cloud platform, so we had to use a load balancer-based solution like implemented here.
Huge thanks to @kermat from LINBIT who helped tremendously (even with an Azure dedicated guide document) while I was struggling with getting the HA clustering right.
There are a few things to address in the future:
I tried to make the added templates as independent as possible so that they can be added to the Azure quick start templates repo without any modification. I'll do that once we have a few more working test deployment experiences.