Recently we’ve visited the Storage Expo (http://www.storage-expo.nl/), to get the latest news on storage and related products. There we visited the stand of Zerto and got a demo of Zerto’s Virtual Replication for VMware product, which looked very promising, but of course we had to test that for ourself in our robertverdam.nl labs.
This article gives a short overview of the installation and configuration process and what you can do with the product once the replications are set-up.
Zerto Virtual Replication needs a routed connection between both sites which isn’t NAT’ed, so we created a OpenVPN connection between two of our lab sites (Lab Verdam & Lab Hagoort). To be exact, we’ve created two tunnels, one from Lab Verdam to a OpenVPN server running on a machine hosted on a DigitalOcean droplet (as a VPN concentrator) and one from Lab Hagoort to this same VPN concentrator.
Setting up Zerto Virtual Replication for VMware is a very straight forward process. First you deploy two windows machines, one on both the sites you want to replicate between and you install the Zerto Virtual Manager (ZVM) software on both of them. During the install you will be asked to enter the information of the vCenter the ZVM will be attached to. This can be the same vCenter server for both sites, if they are managed by the same vCenter server.
- Windows Server 2003 SP2 and up
- 2 vCPU
- 4 GB RAM
- Microsoft .NET Framework 4 or 4.5
When you have the ZVM’s set-up you deploying the actual VRA’s (Virtual Replication Appliance), which do the actual heavy lifting like the journaling, checkpointing, bitmap-sync and WAN-compression. The VRA has to be installed on every ESX-host so the VM’s are always protected on whatever ESX host they run.
(Minimal) Requirements VRA:
- 12,5GB disk space
- 1GB RAM (reserved), up to 3GB (recommended for bigger buffer pool size, for buffering write I/O)
- ESX 4.0U1 and up
- Ports 22 and 443 to the ESX host have to be opened during the installation.
If both sites are set-up, the sites have to be paired so they can start using each other as a replication partner. If the site is managed by the same VC, no pairing is needed at this point and we can continue setting up the replication.
To get an estimate of the WAN-bandwidth needed to keep a low RPO, Zerto provides an excel sheet which you can fill out manually with data retrieved from vCenter, which gives you an indication of the needed bandwidth. We would like to see this feature automated in a next version of the product (Perhaps at the creation of a VM/VPG-replication).
Now we have both sites ready to start replicating VM’s, we can start replicating:
- Individual VM’s
- VPG’s (Virtual Protection Group) in which we group similar VM’s, which can represent VM’s needed for a certain application/service wuth similar SLA-requirements
For setting up the replica’s we can mainly define the following variables:
- Recovery Policy
- Disaster Recovery
Only do replication for DR-purposes.
- Extended Recovery.
To also do a backup of the VM’s to a remote site repositiory (CIFS or local storage attached to the ZVM) for backup & recovery purposes.
- Disaster Recovery
- Priority (QoS): High, Medium, Low
Determines in a case of congestion, which replication traffic of VM’s or VPG’s have priority. First all high priority I/O’s are priority, next Medium priority is handled and finally what’s left is used for Low priority protected VM’s/VPG’s.
- Default Journal History
Defines how much history to maintain for doing Point-In-Time recovery for a certain VM/VPG. This defaults to 4 hours, so it’s possible to go back a maximum of 4 hours for a certain VM/VPG. Maximum journal history is 120 hours (5 days)
- Target RPO Alert
Alert when the defined SLA RPO is exceeded.
- Destination Host/Cluster, Datastore, Failover Network, Failover Test Network, VM Folder
Defines where the replica should be located and which networks to use for resp. failover and failover testing. In the individual VM-settings we can define which IP to use on the remote site if we’re not using a stretched network connection over the two sites. We can also define a seperate datastore which contains the journal for replicated VM’s.
- Pre-/Post Scripts
Scripts to run prior and after failover, which have to reside on the ZRM on the failover site.
Short summary of what happens after we set-up the parameters for the replication and hit save:
- Initial Sync for which the VM has to be turned on, because a write-stack is needed to be active to do the replication.
- After the initial sync is complete, all writes are async copied to recovery site and stored in the journal
- If journal history time is reached, journal is flushed to the mirrored disk (in recovery datatore)
Instead of relying on the initial seed process, we can also do a pre-seed on the DR-site to on board applications faster and become protected avoiding the mentioned initial sync.
Live Failover & Failover testing
Zerto allows us to do failover testing for the protected VM/VPG, which allows us to test if the VM/VPG can be successfully started at the replication site. We can choose to connect the VM’s to another network for testing purposes so we can prevent the VM from entering the production network. When we’re done with additional failover testing we can stop the failover test and everything is cleaned up automatically.
Besides testing the failover, failover testing also allows for upgrades in a safe environment while maintaining SLA and RPO.
Actual Live failover allows us to :
- Automatically shutdown protected VM
- Failover VM to other site
- Change IP/MAC/Network if needed
- Reverse the protection
- Automatic/Manual commit/rollback of failover (so accepting or discarding the failover).
We can do a failover, if we find the failover to be working, we can commit the failover, which makes it permanent. If we choose to rollback, the failover is reverted and the machines restarted in the protected site. We can choose do to this automatically (after x minutes) or manually (so Zerto waits for user input to commit/rollback the failover).
To see how easy it is to failover test a VM with Zerto, watch the following video:
Doing a live failover is just as simple, but it gives you some extra options as mentioned above.
Moving VM / Offsite Clone
Zerto has added a bunch of flexibility which we can use to do special operations based on it’s replicated VM’s/VPG:
- Move VM to replication site without changing anything, very useful in moving VM’s to an other datacenter en decomissioning the old datacenter.
- Create a offsite clone (for OTAP purposes)
Besides doing disaster recovery we can also configure a remote backup repository , we can do this by defining a local repository on the ZVM or by a CIFS share. We can then use this repostory to backup and build retention and if needed, restore a VM/VPG to a point in time further back then the defined replication history.
We really love the user-experience using the Zerto Virtual Replication product for VMware. The product is very easy to set-up and easy to use, it just does what it has to do in a very understandable manner. And if you’re looking for more information on a certain function you can always look in the very well written documentation. Can’t wait to have a look at the next version of the product. (@Zerto: Maybe we at CloudFix could do a sneak-preview? 🙂 )
So in short:
- Easy to install
- Easy to operate
- Good additional functionality (Moving VM/VPG, Offsite Clones, Offsite backups)
- Well written user documentation
What’s up next?
Zerto is busy in becoming hyper visor agnostic allowing you to replicate from Hyper-V to VMware and vice versa, but also with replication in to the cloud (AWS). Zerto is also expecting their Version 4.0 (cross hyper visor replication also) next Quarter which features a HTML 5 interface with a much improved GUI and also some key features around the back up and scale.
http://www.zerto.com/blog/general/5-questions-zerto-virtual-replication-amazon-aws/ – AWS blog post with Zerto
http://www.zerto.com/blog/general/zerto-for-microsoft-hyper-v-features-requirements-cross-hypervisor-replication/ – Zerto with Hyper-V and VMware replication
http://www.zerto.com/blog/general/sneak-peek-zerto-virtual-replication-4-0/ – Sneak peak into Zerto 4.0