Disaster Recovery is one of the most complex exercises IT will endeavor. From infra and data replication to applications and orchestration, it is hard! In this 2nd video, I show how to easily failback VMs from VMware Cloud on AWS.
I recently released a set of Python components that make Datrium take pro-active virtual machine snapshots and replicate them upon detection of high winds, high temperature, or earthquakes in a defined region.
The reason I built the tool is to enable real-time weather and geological monitoring using real-time data from the U.S. Geological Survey and to trigger actions under certain conditions.
While it is simple to use the tool, it does require Python knowledge and the creation of an environment to run the scripts and modules.
For this reason, I converted the tool into a Docker container that can be instantiated and updated on-demand without the need to know anything about Python.
Before starting, make sure Docker and Docker-Compose are both installed in your system.
mkdir datrium_natural_hazard_protection
cd datrium_natural_hazard_protection
touch docker-compose.yml
vi docker-compose.yml
Copy/Paste the content below into docker-compose.yml, replacing and adding values where necessary. You must register for a free API key with OpenWeather at https://home.openweathermap.org/users/sign_up and add to the pyowm_api_key value.
version: "3"
services:
com.myvirtualcloud.dvx.automation:
image: andreleibovici/datrium_natural_hazard_protection:latest
environment:
# Location (City)
- prod_location_city=Auckland
# Country Abbreviation (2-digit)
- prod_location_country=NZ
# DVX Fully-Qualified-Domain-Name
- prod_dvx_fqdn=DVX_FQDN
# DVX Admin username
- prod_dvx_username=admin
# DVX Admin Password
- prod_dvx_password=PASSWORD
# Choose true or false to enable snapshots replication
- repl_replicate=false
# Replication site target as configures in DVX
- repl_location=DVX_NAME
# Retain snapshot for the specified amount of time (in seconds) from current time.
# Use 'forever' to retain the snapshot forever.
- snapshot_retention=3600
# Filename containing list of vms to protect
- vms_to_protect_filename=vms_to_protect.txt
# Frequency to check for natural hazard events (seconds) and snapshot/replicate
- frequency_check=300
# Km/h
- wind_speed_max=40
# Celsius
- temperature_max=45
# Richter scale minimum earthquaque magnitude
- quake_magnitude_min=4
# "hour", "day", "week", "month"
- quake_period=hour
# You MUST provide a valid public API key from pyowm
- pyowm_api_key=YOUR_PYOWM_API_KEY
volumes:
- /path/vms_to_protect.txt:/vms_to_protect.txt
You will need to make sure a file name vms_to_protect.txt is available in the directory, and this file must have the VMs to be protected. Here is an example:
Disaster Recovery is one of the most complex exercises IT will endeavor. From infra and data replication to applications and orchestration, it is hard! See how I executed DR for a couple of VMware VMs to the VMware Cloud in 4 minutes.
I’m not saving an entire datacenter, but the video gives you a good idea of how this can be easily accomplished.
I saved my datacenter in 4 minutes
This article was first published by Andre Leibovici (@andreleibovici) at myvirtualcloud.net