Pelo que entendi, quando uma VM precisa de um pouco de tempo de CPU, o agendador só dá tempo de CPU quando há núcleos livres suficientes no host iguais à contagem de vCPUs dessa VM. Portanto, se você tiver uma VM de 4 vCPU, só terá tempo de CPU se 4 núcleos em seu host estiverem disponíveis naquele momento. Portanto, as VMs com menos núcleos têm uma mudança maior de tempo de CPU.
Então, acho que existem várias soluções para isso:
- Aumente o número total de núcleos no seu host para que as chances de ter núcleos suficientes livres sejam maiores. Portanto, especifique um servidor de 2 x 6 núcleos ou um 4 x 4 núcleos em vez de um 2 x 4 núcleos.
- Dedique alguns núcleos no host inteiramente para uma VM específica (não tenho certeza se isso é possível).
- Diminua a contagem de vCPUs na sua VM (e execute várias instâncias de VMs se a carga de trabalho puder ser dimensionada horizontalmente).
- Compre hosts com altas velocidades de clock para fazer mais com menos núcleos.
Para os serviços de terminal, minha intuição seria de que a implantação de várias instâncias do Virtual TS é sua melhor aposta, com o balanceamento de carga do TS.