As vCPUs são versões vir­tu­a­li­za­das de CPUs físicas e de­sem­pe­nham um papel fun­da­men­tal na com­pu­ta­ção em nuvem. Entre as vantagens das unidades de pro­ces­sa­mento vir­tu­a­li­za­das destaca-se a sua excelente es­ca­la­bi­li­dade, o que as torna um com­po­nente essencial do alo­ja­mento em nuvem, por exemplo.

O que é uma vCPU?

Uma vCPU (Unidade Central de Pro­ces­sa­mento Virtual) é uma versão vir­tu­a­li­zada de uma CPU física. Em outras palavras, as vCPUs são as unidades centrais de pro­ces­sa­mento das máquinas virtuais (VM) e dos ambientes em nuvem. Os pro­ces­sa­do­res mul­ti­nú­cleo (multicore) atuais podem ser usados não apenas como uma única vCPU, mas como base para várias CPUs virtuais. A quan­ti­dade de vCPUs po­ten­ci­ais não está vinculada ao número de núcleos e threads (ver mul­tith­re­a­ding), mas depende do resultado desta fórmula:

(threads x núcleos) x CPU física = número de vCPU

Tec­ni­ca­mente, as vCPUs são im­ple­men­ta­ções de software que o sistema operativo respetivo percebe como núcleos de pro­ces­sa­dor reais. Cada máquina virtual requer pelo menos uma vCPU. No entanto, de­pen­dendo do cenário de aplicação, também é possível atribuir várias unidades centrais de pro­ces­sa­mento virtuais, se os trabalhos em execução assim o exigirem.

Quais são as vantagens das vCPUs?

As vCPUs oferecem vantagens im­por­tan­tes em com­pa­ra­ção com as CPUs físicas, entre as quais se destacam:

  • maior es­ca­la­bi­li­dade
  • maior eficácia
  • maior fle­xi­bi­li­dade
  • menores custos

A principal vantagem da vir­tu­a­li­za­ção é a sua excelente es­ca­la­bi­li­dade de recursos de hardware. As vCPUs numa máquina virtual podem vir de vários hosts físicos di­fe­ren­tes, o que permite uma fácil es­ca­la­bi­li­dade do de­sem­pe­nho do pro­ces­sa­dor à medida que a carga de trabalho aumenta.

Quando as vCPUs deixam de ser ne­ces­sá­rias, podem ser fa­cil­mente re­a­tri­buí­das a outras máquinas virtuais. Essa fle­xi­bi­li­dade é es­pe­ci­al­mente valiosa para for­ne­ce­do­res de ambientes de alo­ja­mento, pois permite-lhes partilhar a in­fra­es­tru­tura sub­ja­cente entre os seus clientes de forma eficiente. Além disso, como uti­li­za­dor, beneficia da ca­pa­ci­dade de ajustar de forma flexível a vCPU de que necessita. Como não há uma con­fi­gu­ra­ção fixa de hardware, é mais fácil aumentar ou reduzir a potência do pro­ces­sa­dor de acordo com as suas ne­ces­si­da­des, tanto em soluções como um servidor na nuvem ou um VPS.

A efi­ci­ên­cia e es­ca­la­bi­li­dade das vCPUs oferecem vantagens em termos de custos. Num único sistema host, é possível executar vários sistemas ope­ra­ti­vos e o software de aplicação cor­res­pon­dente, oti­mi­zando a potência de com­pu­ta­ção dis­po­ní­vel e, em muitos casos, poupando hardware adicional.

Dica

Descubra mais di­fe­ren­ças entre as unidades centrais de pro­ces­sa­mento vir­tu­a­li­za­das e físicas no nosso artigo“CPU vs. vCPU”.

Quando se utilizam as vCPUs?

As vCPUs são es­sen­ci­ais para a com­pu­ta­ção em nuvem. Elas são uti­li­za­das em todas as áreas em que hardware e software são for­ne­ci­dos na nuvem, como ar­ma­ze­na­mento em nuvem, hos­pe­da­gem de ser­vi­do­res e soluções como o Windows 365. O número ne­ces­sá­rio de vCPUs varia de acordo com a carga de trabalho, assim como no caso das unidades de pro­ces­sa­mento físicas. Nor­mal­mente, uma ou duas vCPUs são su­fi­ci­en­tes. Por outro lado, os re­qui­si­tos são maiores para cargas de trabalho mais exigentes, como ser­vi­do­res de bases de dados, e-mail ou jogos.

As pla­ta­for­mas de con­ten­to­res, como o Docker, também se baseiam na tec­no­lo­gia de vir­tu­a­li­za­ção de vCPU. Ao contrário das máquinas virtuais, os con­ten­to­res não vir­tu­a­li­zam sistemas completos, mas sim apli­ca­ções in­di­vi­du­ais.

Como se calcula o número ne­ces­sá­rio de vCPU?

Para apro­vei­tar ao máximo as vantagens, o grande desafio em um ambiente vir­tu­a­li­zado é fornecer vCPUs su­fi­ci­en­tes sem des­per­di­çar poder de com­pu­ta­ção. Pode basear-se nos re­qui­si­tos de ins­ta­la­ção de hardware físico para de­ter­mi­nar a quan­ti­dade de vCPUs ne­ces­sá­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 re­qui­si­tos au­men­ta­rem pos­te­ri­or­mente porque executa mais apli­ca­çõ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 re­qui­si­tos diminuem e, portanto, precisa de menos ca­pa­ci­dade de pro­ces­sa­mento.

Para cargas de trabalho in­ten­si­vas em pro­ces­sa­mento, é crucial atribuir vCPU de di­fe­ren­tes CPUs físicas. Por exemplo, se tiver hardware com uma CPU dual-core (2 núcleos físicos e 4 pro­ces­sa­do­res lógicos) como ponto de partida, deve dividir os quatro pro­ces­sa­do­res lógicos da seguinte forma para melhorar o de­sem­pe­nho:

  • Atribua os pro­ces­sa­do­res lógicos 0 e 2 à primeira máquina virtual, que cor­res­ponde ao primeiro núcleo da CPU física Dual Core. Os recursos atri­buí­dos à primeira máquina virtual devem ser su­fi­ci­en­tes para executar a carga de trabalho ne­ces­sá­ria.
  • Da mesma forma, pode atribuir os pro­ces­sa­do­res 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.
Ir para o menu principal