- 15 Nov 2021
- 4 Minutes to read
Best Practices Guide for VDC
- Updated on 15 Nov 2021
- 4 Minutes to read
The following article describes best practices, general guidelines, time-savers, and hints and tips for making the most of the Servers Australia Virtual Data Centre platform (VDC).
Make sure VMware tools is installed and running
It's important to ensure that VMware tools (or open-vm-tools on Linux) is installed and running correctly. VMware tools provides essential drivers (network, disk, graphics, etc) and also helps VDC with its guest customization automation.
For a full overview of VMware tools, its features, and how to install it, please see the following VMware KB article https://kb.vmware.com/s/article/340.
For Windows VMs, you can use the 'Install VMware Tools' option, which is under the 'Actions' menu on the Virtual Machine.
Using the 'Install VMware Tools' button will mount an ISO to your VM allowing you to run the installer (navigate to the mounted ISO via Windows Explorer).
Define your VM's operating system correctly
VMware handles each operating system differently, especially when it comes to OS automatic customization. To ensure your VM runs smoothly, make sure you choose the correct (or closest possible match) to the operating system you're running in a VM.
To set this, navigate to the virtual machines page, and click 'Details' on the VM you'd like to update.
Then on the 'General' page, click 'Edit'.
Then click on the 'Operating System' list and choose the correct OS then click save.
Unmount un-used ISO media
Having an ISO mounted to your VM will prevent certain features from working correctly. It can prevent a VM from being migrated to other hypervisors in the cluster, which means the VM may not be able to be booted in the event of a HA failover event. It can also stop Veeam backups or replications from running correctly.
As such, it's important to un-mount ISO media as soon as you're finished using it!
Snapshots are not backups
You can create snapshots of your VMs which will 'freeze' the current state of a VM and then all new changes will be written to a snapshot file. The longer this snapshot exists, the more and more data your snapshot will consume. This also slows down the VM considerably over time.
Snapshots are designed for short-term use only. A perfect use of snapshots is to take a snapshot before any large OS or Application updates. As soon as you verify the update was successful, make sure you delete the snapshot.
If a snapshot is left active for too long, the resulting disk consolidation could take hours or even days depending on the size of the VM. We have also seen cases where VMs can become corrupted or experience data loss in the case of snapshots being open too long.
Additionally, VMs with snapshots may not be able to be backed up properly using Veeam, as well.
Our general recommendation is to make sure your snapshots are deleted after 24 hours.
CPU and RAM Hot-Add feature
Although it seems tempting to be able to scale CPU and RAM of your VMs on the fly, without requiring a VM reboot, it's important to note that VMs with these features enabled may suffer a performance penalty of between 5% to 10%, so it's not recommended for use on high-performance VMs.
There are also several known bugs in Windows server which are caused by hot-add being enabled.
Linux VMs also have a limitation where hot-add will not work correctly unless the VM already has at least 4GB of RAM assigned to it.
We recommend only enabling hot-add on Linux virtual machines with more than 4GB of RAM. A good example would be an apache web server VM, but not on the MySQL database VM counterpart where performance is more important.
Use the IP-Pool feature of Org Networks
When adding a network adapter to your VM we recommend using the IP-Pool feature which will automatically assign an IP address from your configured IP pool. This saves you having to manually record IP addresses, and ensures you will always get an un-used IP address for your new network adapter. This IP will be automatically configured on your VM on first boot, or when using 'Force Recustomization' on the VM actions menu, as long as guest customization is enabled in the VM settings.
Make use of the App Launchpad
The VDC platform has a number of pre-built vApp templates available for you to get started quickly. We’ve provided a combination of SAU-built images running common operating systems such as CentOS and Alma Linux, as well as common Bitnami images such as OpenVPN Access Server, Magento, MySQL and Node.js. Can’t find the image you are after? Let us know!
From here you can search or select from a wide variety of available applications ready-to-deploy.
For an in-depth example, check out our Using App Launchpad with VDC guide.
Terraform (Infrastructure as Code)
Terraform, by Hashicorp, is a powerful utility to create an infrastructure based on code. In a sense, you tell Terraform what infrastructure (including VMs, vApps, Networks and more) you want, it then goes and builds it. Changes to the environment can be processed easily, such as upgrading or downgrading resources like CPU or RAM.
For more information on using Terraform including a ready-made example, refer to our Terraform with VDC guide.