vCPU: o que é uma CPU virtual?
As vCPUs são versões virtualizadas de CPUs físicas e desempenham um papel fundamental na computação em nuvem. Entre as vantagens das unidades de processamento virtualizadas destaca-se a sua excelente escalabilidade, o que as torna um componente essencial do alojamento em nuvem, por exemplo.
O que é uma vCPU?
Uma vCPU (Unidade Central de Processamento Virtual) é uma versão virtualizada de uma CPU física. Em outras palavras, as vCPUs são as unidades centrais de processamento das máquinas virtuais (VM) e dos ambientes em nuvem. Os processadores multinúcleo (multicore) atuais podem ser usados não apenas como uma única vCPU, mas como base para várias CPUs virtuais. A quantidade de vCPUs potenciais não está vinculada ao número de núcleos e threads (ver multithreading), mas depende do resultado desta fórmula:
(threads x núcleos) x CPU física = número de vCPU
Tecnicamente, as vCPUs são implementações de software que o sistema operativo respetivo percebe como núcleos de processador reais. Cada máquina virtual requer pelo menos uma vCPU. No entanto, dependendo do cenário de aplicação, também é possível atribuir várias unidades centrais de processamento virtuais, se os trabalhos em execução assim o exigirem.
Quais são as vantagens das vCPUs?
As vCPUs oferecem vantagens importantes em comparação com as CPUs físicas, entre as quais se destacam:
- maior escalabilidade
- maior eficácia
- maior flexibilidade
- menores custos
A principal vantagem da virtualização é a sua excelente escalabilidade de recursos de hardware. As vCPUs numa máquina virtual podem vir de vários hosts físicos diferentes, o que permite uma fácil escalabilidade do desempenho do processador à medida que a carga de trabalho aumenta.
Quando as vCPUs deixam de ser necessárias, podem ser facilmente reatribuídas a outras máquinas virtuais. Essa flexibilidade é especialmente valiosa para fornecedores de ambientes de alojamento, pois permite-lhes partilhar a infraestrutura subjacente entre os seus clientes de forma eficiente. Além disso, como utilizador, beneficia da capacidade de ajustar de forma flexível a vCPU de que necessita. Como não há uma configuração fixa de hardware, é mais fácil aumentar ou reduzir a potência do processador de acordo com as suas necessidades, tanto em soluções como um servidor na nuvem ou um VPS.
A eficiência e escalabilidade das vCPUs oferecem vantagens em termos de custos. Num único sistema host, é possível executar vários sistemas operativos e o software de aplicação correspondente, otimizando a potência de computação disponível e, em muitos casos, poupando hardware adicional.
Descubra mais diferenças entre as unidades centrais de processamento virtualizadas e físicas no nosso artigo“CPU vs. vCPU”.
Quando se utilizam as vCPUs?
As vCPUs são essenciais para a computação em nuvem. Elas são utilizadas em todas as áreas em que hardware e software são fornecidos na nuvem, como armazenamento em nuvem, hospedagem de servidores e soluções como o Windows 365. O número necessário de vCPUs varia de acordo com a carga de trabalho, assim como no caso das unidades de processamento físicas. Normalmente, uma ou duas vCPUs são suficientes. Por outro lado, os requisitos são maiores para cargas de trabalho mais exigentes, como servidores de bases de dados, e-mail ou jogos.
As plataformas de contentores, como o Docker, também se baseiam na tecnologia de virtualização de vCPU. Ao contrário das máquinas virtuais, os contentores não virtualizam sistemas completos, mas sim aplicações individuais.
Como se calcula o número necessário de vCPU?
Para aproveitar ao máximo as vantagens, o grande desafio em um ambiente virtualizado é fornecer vCPUs suficientes sem desperdiçar poder de computação. Pode basear-se nos requisitos de instalação de hardware físico para determinar a quantidade de vCPUs necessárias: por exemplo, se o software (incluindo o sistema operativo) requer oito núcleos físicos, deve atribuir oito vCPUs à máquina virtual.
Se os requisitos aumentarem posteriormente porque executa mais aplicações em paralelo ou o seu projeto se torna mais complexo, basta aumentar o número de vCPU. O mesmo se aplica no caso contrário, ou seja, quando os requisitos diminuem e, portanto, precisa de menos capacidade de processamento.
Para cargas de trabalho intensivas em processamento, é crucial atribuir vCPU de diferentes CPUs físicas. Por exemplo, se tiver hardware com uma CPU dual-core (2 núcleos físicos e 4 processadores lógicos) como ponto de partida, deve dividir os quatro processadores lógicos da seguinte forma para melhorar o desempenho:
- Atribua os processadores lógicos 0 e 2 à primeira máquina virtual, que corresponde ao primeiro núcleo da CPU física Dual Core. Os recursos atribuídos à primeira máquina virtual devem ser suficientes para executar a carga de trabalho necessária.
- Da mesma forma, pode atribuir os processadores lógicos 1 e 3, ou seja, o segundo núcleo da CPU Dual Core física, a outras cargas de trabalho que não exijam tantos recursos, como um servidor DNS.