I was thinking about building a lab at home to play, test and learn certain topics. But as my free time is very limited and I didn't want to ruin our power costs, I came to the idea to run a lab in the cloud.
Advantages:
- low entry costs: you pay what you use/need
- flexible/scalable: resources are only a few clicks away
- ability to create different scenarios: offsite, DR, ...
- new technologies = more knowledge
Disadvantages:
- long term costs: as long as you're using/reserving resources you need to pay for them
Being a VMware guy I've looked for ways to deploy a vSphere environment or at least an ESXi host, but unfortunately the costs were much to high. Either I would have to go with VMware Cloud or rent a bare-metal machine to install ESXi myself; both are very costly.
Hyper-V on the other side is easier to deploy in the cloud, without spending too much; as long as the base system support Nested Virtualization. So I've decided to give it a try and went with Microsoft Azure.
Microsoft has published a guide on how to enable Hyper-V in their Azure machines: How to enable nested virtualization in an Azure VM
The following overview shows which compute types/SKUs support nested virtualization: Azure compute unit
While computing isn't that expensive, storage can massively increase the costs of such a lab. Storage is paid per allocation, so as long as you consume the disk, you're paying for it. And the prices are also a bit high (from my point of view); for example a 128GiB "HDD Standard Managed Disk" costs about 5,88$/month. So this it the part where I only configured minimal resources and removed them if not needed.
All together the first system (Hyper-V + Veeam Server) didn't take much time to setup. I've started with a "D4s" machine with 4 vCPUs and 16GB RAM, which was sufficient for my purposes and affordable (0,24$/hour). There's nothing special in setting up the Hyper-V, as it works out of the box. Special care has to be taken when setting up the network; I somehow managed to kill the network of my server and had to rebuild it (easier then debugging ).
I have installed Veeam, deployed a small VM and was able to start my first backup in about an hour. I later added a second Hyper-V as a replication target and some more/faster disks to play with.
Conclusion
It was very cool to build this lab, especially because of the use of Nested Virtualization. I always wanted to increase my cloud skills, so this was/is the perfect opportunity. If you want to try out something new or create a certain scenario, the cloud is the perfect place.
On the other hand, if you want to run the lab 24/7 with a certain amount of storage, the cloud will cost too much.
At next I will try to decrease the storage costs or look for better alternatives. I also want to look at automation; that way I could automatically deploy the lab with Hyper-V, Veeam and VMs if needed and destroy it afterwards.