Virtualização

A virtualização é a criação de um ou mais ambientes virtuais em uma mesma máquina física, com o intuito de cumprir o mesmo papel de um computador físico.

Categoria de Tecnologia

Postado em 24 agosto 2022

Atualizado em 24 agosto 2022

Palavras-chave: infraestrutura,hardware,maquina,virtual,software

Visualizações: 2795



A infraestrutura de máquinas disponíveis no mercado hoje, possibilitou uma série de capacidades para a ciência da computação. Computação em nuvem é um exemplo disso.

A computação em nuvem permite que um usuário final possa acessar múltiplos computadores através da internet, sem a presença de infraestrutura extra. Assim como o fornecedor desses serviços não precisa necessariamente ter múltiplos computadores disponíveis para fornecimento.

Em outras palavras, um único computador pode abrigar múltiplos computadores dentro dele. Isso se chama virtualização.

O que é a virtualização?

A virtualização é o uso de determinados softwares para criar ambientes virtuais isolados em uma mesma máquina. Esses ambientes virtuais são praticamente idênticos a um computador convencional.

O ambiente virtual compartilha os mesmos recursos da máquina hospedeira, como CPU, memória e internet.

A virtualização pode ser parcial ou total, sendo respectivamente chamada de para-virtualização ou virtualização total. Na maioria dos casos, a virtualização total é adotada e normalmente é chamada apenas de virtualização.

O ambiente virtual é chamado de máquina virtual, que frequentemente é representado pela sigla VM (Virtual machine). Um computador pode hospedar múltiplas VMs, que serão gerenciadas pelo VMM (Virtual machine monitor).

Computador
MVV
VM 1
VM 2
VM 3

A virtualização pode ser efetuada por um hipervisor (hypervisor) como no exemplo acima ou por um contentor (container).

O que é o hipervisor na virtualização?

O hipervisor é o intermediário entre a máquina hospedeira e as máquinas virtuais.

Esse software representa uma camada na virtualização, responsável por balancear a distribuição de recursos físicos da máquina hospedeira entre as VMs, portanto sendo um VMM.

virtualização hipervisor

Ao todo, existem 2 tipos de hipervisores, o tipo 1 (bare-metal architecture) e o tipo 2 (hosted architecture).

O que é o hipervisor tipo 1 na virtualização?

No tipo 1, o hipervisor é diretamente instalado no hardware do computador, ou seja, de forma independente do sistema operacional (OS).

Nesse caso, ao mesmo tempo que utilizamos esse computador, a máquina virtual estará rodando em segundo plano, podendo ser usada como servidor.

O hipervisor tipo 1 é o mais eficiente, pelo fato de ter acesso direto aos recursos da máquina física.

Exemplos de softwares hipervisor tipo 1:

  • VMware vSphere
  • Citrix XenServer
  • Microsoft Hyper-V

O que é o hipervisor tipo 2 na virtualização?

No caso do hipervisor tipo 2, a camada de VMM é instalada acima do sistema operacional, idêntico a um aplicativo executável.

O hipervisor tipo 2 é de fácil gerenciamento e acesso, sendo bastante conveniente para testes.

Apesar de ter uma performance mais baixa do que o tipo 1, ainda é o tipo mais utilizado, pois apresenta bastante facilidade na instalação.

Exemplos de softwares hipervisor tipo 2:

  • Oracle VM VirtualBox
  • Microsoft Virtual PC
  • VMware Fusion

virtualização hipervisor tipo 1 e 2

A máquina virtual é segura?

Máquinas virtuais podem ser utilizadas como um computador convencional, seja para rodar aplicativos específicos ou disponibilizar serviços para terceiros.

Caso, uma máquina seja contaminada por algum tipo de vírus, a máquina hospedeira (máquina física) não sofre riscos de ser contaminada, assim como as outras máquinas virtuais também não sofrem nem um tipo de dano.

A máquina virtual pode ser restaurada facilmente em casos de ataque, recuperando o mesmo estado antes da contaminação.

O que é o container na virtualização?

O contentor não utiliza hipervisor, sendo gerenciado por um software de containers e sofrendo influência do sistema operacional instalado.

virtualização containers

Os containers compartilham o mesmo kernel do sistema operacional.

Exemplos de serviços de container:

  • Docker
  • LXC
  • Podman
  • Solaris containers

Qual a diferença entre container e máquina virtual?

A grande diferença é como os recursos físicos são utilizados. Além disso, contentores e VMs são usados para propósitos diferentes.

Características e objetivos da máquina virtual

A máquina virtual é um computador virtual que utiliza uma porção física do computador hospedeiro, sendo considerada uma máquina totalmente separada do computador físico. Mesmo se um usuário acessar um servidor virtual, não é possível saber se de fato essa máquina é virtual ou física. Além disso, ainda é possível selecionar os recursos de hardware, como memória RAM.

Vantagens da máquina virtual

Algumas das vantagens da máquina virtual são:

  • Melhor aproveitamento dos recursos do computador físico, uma vez que um computador não utiliza grande parte desses recursos como memória e processador
  • Corte de custos com estrutura física, pelo fato de não precisar adquirir uma outra máquina para obter um ambiente requerido
  • Ambiente totalmente isolado e seguro, mesmo contaminado por malwares pode ser facilmente restaurado sem danos para a máquina hospedeira
  • Pode ser utilizado para testes de segurança cibernética, pois na prática não diferencia de um computador normal

Características e objetivos do container (contentor)

O container também é um ambiente virtual isolado, porém é um isolamento parcial e não é considerado uma máquina virtual. A virtualização por containers é usada para simular múltiplos ambientes que empacotam determinados aplicativos, simulando futuros ambientes onde aplicativos em desenvolvimento serão implantados (deployed). Porém, isso não significa que containers não podem ser utilizados no modo de produção.

O container roda em cima do sistema operacional atual do computador, por isso dependendo do sistema operacional instalado na máquina, diferentes configurações podem ser necessárias na construção de containers.

Vantagens do container

Algumas vantagens do container são:

  • Fácil gerenciamento de ambientes em um único arquivo
  • Principal meio utilizado na arquitetura de microsserviços
  • Fácil integração de containers
  • Menos espaço de armazenamento ocupado

Conclusão

A virtualização é a criação de um ou mais ambientes virtuais em uma mesma máquina física, com o intuito de cumprir o mesmo papel de um computador físico.

Existem vários modos de virtualização, com suas respectivas vantagens. A virtualização é principalmente utilizada para cortar custos de infraestrutura e ocupação espaço físico.

Projetos práticos

Criando artes de texto usando imagens

Convertendo imagens para ascii art usando o valor da intensidade das cores cinzentas.

Integrando o PHP com Elasticsearch no desenvolvimento de um sistema de busca

Projeto de criação de um sistema de busca usando o framework Symfony e Elasticsearch. A integração com Kibana também é feito de modo remoto com um raspberrypi.

Criando um jogo de guerra nas estrelas em javascript usando a biblioteca p5.js

Jogo simples de guerra espacial desenvolvido em javascript. Esse jogo usa cálculos de física para simular efeitos de atrito e inércia.

Integrando Laravel com o protocolo MQTT para comunicação entre dispositivos

Projeto de comunicação entre dois dispositivos ESP8266 e Raspberrypi4. Laravel irá funcionar como servidor e receptor de dados de temperatura e umidade coletados com o DHT11.

Usando dados fornecidos pelo TSE para simular o gráfico das eleições presidenciais de 2022

Simulação dos gráficos do segundo turno das eleições presidenciais, utilizando python e ferramentas de análise de dados, pandas e jupyter.

Veja também

A subclasse não deve estender a superclasse que não representa consistência em relação as suas características

No passado existiam girafas com pescoço comprido e as girafas com pescoço curto. Isso resultou em um comportamento inesperado, a seleção natural. Não queremos isso no nosso algoritmo...

A internet é uma terra sem lei. O que vai proteger a nossa rede interna da internet é o firewall

Uma rede interna sem um firewall é como se fosse uma casa com a porta destrancada. Um indivíduo com más intenções pode se aproveitar para a invadir quando menos esperamos.

Hub, Switch e Roteador

Se destacam o hub, switch e o roteador como dispositivos que possibilitam o estabelecimento de uma rede local. Cada dispositivo possui suas vantagens.

Blockchain Parte2

PoW atua como um intermediário não-humano entre os negociadores de criptomoedas. Em média, uma transação em bitcoin dura 10 minutos.

Computação em nuvem

Computação em nuvem oferece serviços através da internet que possibilitam hospedagem de sites, armazenamento de arquivos, compartilhamento de dados, etc.

IaaS (Infrastructure as a Service)

Computador virtual. Fornece infraestrutura de computação básica distribuída em vários locais, oferecendo mais flexibilidade e escalabilidade.