I would imagine the licenses are per VM, but speak to your Microsoft reseller for clarification. You should be fine putting a few infrastructure VMs in your cluster, we do that too.
We’ve been doing desktop virtualisation since 2011, starting with VMware Horizon View, and if you have fast storage and lots of RAM your bottleneck will always be CPU. We went with AMD for the View VDI solution with 64 core boxes but found the performance to be poor, Xeon boxes were a lot better even with fewer cores. Granted this was a while ago so I’m sure AMD have improved.
IE and Chrome processes can eat CPU, and don’t even think about putting something like the Impero classroom management app on there. It can eat 5-15% of CPU per user session.
There is nothing wrong with Broadberry’s proposed model, but you risk the all “eggs in one basket“ scenario - over the last few months we’ve had various issues with our RDS farm caused by Microsoft bugs. One issue was caused by a botched cumulative update which would prevent users logging on after a random period of time, we’ve also had “black screen of death” at login which turned out to be a bug in Microsoft Firewall creating over 100,000 firewall rules on each host (acknowledged by Microsoft, no fix yet and bodge fixed by us with a nightly powershell script), we also have intermittent issues with Start Menu not working (still waiting on a fix from Microsoft on that one)
So as you can see, if you come across an issue like this that Microsoft introduce in a cumulative update you could potentially have a third or two thirds of your provision down by no fault of your own. Spreading the load over more VMs means you can easily isolate and contain issues that arise. Something to think about.