Stretched vSAN Cluster on Ravello

Stretched clustering has been something that I have wanted to set up for my home lab for a while, but it would not be feasible with my current hardware.  Recently I was selected to be a part of the vExpert program for the third year.  One of the perks of this is the use of Ravello cloud.  They have recently made a lot of advancements that has greatly increased the performance.  Now they have also added a bare metal option which which makes the performance even greater.  I am skipping most of the steps to setup vSAN, and trying to only include what is different for a stretched cluster.

The high level architecture of a stretched vSAN cluster is simple.

21640548292_faf47a713e_o

  • Two physically separated clusters.  This is accomplished using Ravello Availability grouping.
  • A vCenter to manage it all.
  • External witness.  This is needed for the quorum.  Which allows for an entire site to fail with it and the vm’s to fail over.
  • Less than 5ms latency between the two site.  This is needed because all writes need to be acknowledged at the second site.
  • 200ms RTT max latency between clusters and witness.

If this was a production setup there would be a few things to keep in mind.

  • All writes will need to be acknowledged at second site.  So that could be an added 5ms of latency for all writes.
  • You can use layer 2 and 3 networks between the clusters.  You would want at least 10gb for the connection between sites.
  • You can use layer 2 and 3 networks with at least 100mbs for the witness.

Deploying on Ravello

blueprint

For the architecture of this deployment we will need 3 sections

  • Management
  • Cluster Group 1 (Availability groups simulate separate data center)
  • Cluster Group 2 (Availability groups simulate separate data center)
  • vSAN network and Management/Data Network

Management

There needs to be a DNS server and a vCenter.  I used Server 2016 to setup both the DNS server and Domain Controller.  I used the vCenter appliance 6.5 which I then deployed to an separate mangement ESXi hosts.

Cluster Groups

These consist of 2 ESXi 6.5 hosts each.  They use Availability Groups to keep them physically separated to simulate the stretched cluster.  Group 1 used AG1 and Group 2 used AG2

AG

Network

 

I manually setup the DNS entries on the Server 2016 DNS, and the two networks consists of the following.

  • 10.0.0.0/16 Data/Management
  • 10.10.0.0/16 vSAN

Witness

The witness is an easy to deploy OVF.  It creates a nested ESXi host that runs on top of a physical host.  The networking consists of the following

  • vmk0 Management Traffic
  • vmk1 vSAN Traffic

Once the OVF is deployed add the new witness host into vCenter.  You will see it in vCenter as a blue ESXi host.

4

Creating the Cluster

Now that every is setup and online it is time to create the cluster.  All four hosts need to be in one cluster in vCenter.  Go to the cluster settings and start the setup of vSAN.  Choose configure stretched cluster.

stretched cluster

Now break out the two fault domains to correspond to the availability groups setup on Ravello

1

After the disk are claimed you now have a stretched vSAN cluster that provides high availability across two data centers.  One cluster or one node can go down, and your VM’s can fail over and keep on running.

 

VSAN on Ravello

First off I would like to thank Ravello for making this happen.  As being part of the vExpert Community Ravello has give us free use of their services.  Which allows me to design and build Software Defined Data Centers all in the cloud running on AWS, Google or Oracle.  I would also like to thank VMware for their vExpert program.  Because of this I have licenses to be able to setup all these labs and grow my knowledge.

This article is going to be a high level overview of setting up VSAN on Ravello.  In future articles I will go deeper into how to actually set it all up.

For this design I was wanting to setup a Proof of Concept for VSAN.  I had only used Ravello a few times so I was not exactly sure how to use Ravello to accomplish what I wanted.  My Design consisted of 5 instances on Ravello.

  1. Domain Controller using Server 2012 and DNS.
  2. 3 ESXi Host each one configured with a 100gb drive for VSAN cache and a 1TB drive for data.  With VSAN your cache drive should be 10% of the total datastore.  So if you have 3 host each with 1TB then the cache should be 100gb.  If you turn on FTT of 1 (RAID 1) or mirroring you will lose half your storage so 1.5tb usuable.
  3. A jump VM running Windows 7 for RDP from my home computer.
  4. vCenter

design

First came the network design.  I wanted to seperate out the traffic for each layer of networking.

  1. Management – Traffic for the ESX host itself.
  2. Data/VM – Traffic for running VM’s
  3. Storage – Traffic for VSAN
  4. vMotion- vMotion Traffic

Now its time to build everything.

  1. Setup Domain Controller
  2. Add each ESX host to domain
  3. Add the jump VM to the domain
  4. Deploy vCenter  and join domain

Deploying vCenter on Ravello can be tricky.  Ravello is essential virtualization on top of virtualization.  I am running an ESX host on top of Ravello virtualization, which is a layer of virtualization running on top of AWS or Google.  They are also running a layer of virtualization on top of there physical hardware.  I had some issues trying to get the appliance to work with Ravello.  For now I will have to stick with the Windows version.

cluster

Notice from the above image the yellow signs.  They are there because there is not any shared storage and HA will not work.  You must also turn off HA before you can enable VSAN. Now that I have setup all 5 of my instances and applied all the networking settings it is not time to deploy it.  It takes about 10-15 minutes to get all the instances up and running. Now come the cool part of setting up VSAN.

  1. Setup the VMKernel port on your vswitch for each host.  Make sure to check the VSAN setting and use the same name.
  2. Go to each host and mark the cache disk ad SSD.  This will allow the host to use is for cache.
  3. Right click on the cluster and enable VSAN and choose manual mode for adding disk.
  4. Now claim the disk.
  5. VSAN is now Setup!!!!

Notice now the yellow icons are gone?   Now the host have shared storage, and can utilize HA.

vsan-on

Sometime soon I plan on building up a SDDC lab on ravello.  This will use most of the VMware products and utilize Veeam for backup.  Thanks for reading and leave a comment if you have any questions.

Blog at WordPress.com.

Up ↑