I've noticed that a lot of people run vCenter Server on a VM hosted on Vsphere / ESXi. This seems odd to me, because if there is an issue with the host then you will lose both the host and the management capabilities to switch hosts etc.
Should I provision a physical machine (eg. Microserver) to run VM management tools such as vCenter and Veeam or run them from a VM? What is best practice here?
EDIT: - I work in a SMB environment and almost exclusively use the VMware Essentials packs, so no more than 5 or so hosts, so setting up some sort of redundant or clustered vcenter setup is pretty much unrealistic
We have over 100 separate vCenters and every one of them is a VM, it means we get all the usual virtualisation benefits and because we run them on a specific management cluster in the event of one crashing or whatever we can just connect directly to the host they're running on and restart or whatever as needed. We're something like the 4th or 5th biggest VMWare customer and we wouldn't consider using a physical for this, especially a bottom-end box like you've suggested.
VMware best practice now is to install vCenter on a VM with HA. That's from a VMware training class when 5 originally came out. HA doesn't require vCenter to actually be working once set up, as the hosts know what to do.
I have Essentials Plus, use this setup, and can attest that it works well for us. Just make sure that you have enough capacity on your hosts to accommodate HA.
actually, most of the time, management tools are also virtualised, basically because they don't need enough resources that would advise to use a physical server.
virtualized these tools can also benefit from HA/FT/DRS (in vmware environment) .
so my answer would be no, you don't have to provide a physical server for these management tools.
We use Essentials Plus and also run our vCenter in a VM. Your concerns about clustering the thing that sets up the clustering have been covered in other answers and comments. We take a couple of additional precautions to ensure recoverability of the environment:
We use OSPF as our IGP, so the routers on the out-of-band host are set with slightly higher interface costs (lower bandwidth) than their production counterparts so that they can be kept running all the time but do not serve production traffic unless there is a cluster outage.