A virtualização permite transformar hardware em software, agrupando vários servidores físicos em uma única máquina virtual através de uma camada de software. Isso melhora a gestão e reduz custos, permitindo isolar e mover sistemas operacionais entre servidores rapidamente. A virtualização suporta diversos tipos como servidores, desktops, armazenamento, aplicações e redes.
1. Virtualização
A Primeira definição que podemos utilizar quando falamos em virtualização pode ser a
seguinte “transformar hardware em software”
Com a evolução dos processadores e o aumento da capacidade de processamento e
armazenamento dos computadores, a ideia de virtualização passou a fazer mais sentido, o
agrupamento de vários servidores em uma única maquina utilizando um sistema de
virtualização faz parte da nossa realidade.
A virtualização pode ser obtida inserindo uma camada de software entre o sistema
operacional rodando dentro da maquina virtual e o hardware da maquina, simulando um
computador completo.
Sendo assim, o software de virtualização fica responsável por fazer a gerencia de todo
o hardware, de forma que os sistemas dentro das maquinas virtuais ou VM’s possam
trabalhar como se cada um tivesse uma maquina inteira reservada para si.
Virtualização permite múltiplas maquinas virtuais, com sistemas operacionais
heterogêneos executando isoladamente, lado a lado na mesma maquina física. Cada maquina
virtual tem seu próprio hardware virtual (por exemplo RAM, CPU, NIC, ETC) em cima do qual
um sistema operacional e aplicações são carregados.
Máquinas virtuais são encapsuladas em arquivas, as tornando, as tornando fácil de
serem salvas ou copiadas. Sistemas completos (com aplicações totalmente configuradas,
sistema operacional, BIOS e hardware virtual) podem ser movidos, em questão de segundos,
de um servidor físico a outro.
O sistema principal pode ser chamado de host (hospedeiro) e os sistemas virtuais de
guests (convidados).
Um sistema de virtualização permite dividir um servidor em diversos servidores
virtuais independentes, cada um rodando um sistema operacional diferente. Os servidores
virtuais compartilham os recursos do servidor real, dentro dos limites estabelecidos por você.
Isso permite reduzir os custos, e melhora consideravelmente a gerencia dos
servidores, pois como os arquivos referentes as maquinas virtuais podem estar em uma única
pasta, e fácil fazer backups regulares, as maquinas virtuais podem ser movida de um servidor
para outro por motivos como:
Demanda;
Manutenção;
Atualização;
Agrupamento de servidores de baixa demanda (DNS, E-mail, e outros.)
Ambientes de virtualização também evitam a migração de plataforma somente por conta de
um software.
2. Os maiores fabricantes de processadores do mercado Intel e AMD desenvolveram otimizações
no hardware com novas instruções de CPU para uso específico de virtualização de Sistemas
operacionais. Ambas permitem que um processador funcione como se fossem vários
processadores trabalhando em paralelo de modo a permitir que vários sistemas operacionais
sejam executados ao mesmo tempo em uma mesma máquina.
Tipos de Virtualização
Virtualização de Servidores: é a mais comum e fácil de ser justificada basicamente e a
virtualização de mais de um servidor em um único servidor físico.
Virtualização de Desktops: Basicamente é a Configuração e a configuração dos desktops dos
usuários finais em uma infraestrutura virtual centralizada. Isso significa que as aplicações de
usuários passam a ser executadas em um datacenter, sob forma de maquinas virtuais. Esse
tipo de virtualização se parece com a virtualização de aplicações.
Virtualização do Armazenamento: a ideia permite que as diversas unidades de armazenamento
(discos físicos) sejam vistas como um conjunto homogêneo de recursos de armazenamento.
Algumas tecnologias que podem ser considerados são (NAS e SAN). Esses exemplos de redes
de armazenamento distribuído são apresentados ao usuário final como um único bloco de
armazenamento ou como chamamos uma unidade de disco.
Virtualização de aplicações: Isso é a execução de um programa por completo em um
repositório centralizado, permitindo configuração centralizada o que melhora o seu
gerenciamento. Um bom exemplo de virtualização de aplicação e a Microsoft word que pode
agora ser utilizado sem instalação local.
A maquina local apenas empresta seu processamento ao software que possui sua lógica,
gerencia e armazenamento em algum local remoto.
Virtualização de redes: é a arquitetura que proporciona um ambiente de rede separada para
cada grupo ou organização. Esses ambientes lógicos são criados sobre uma única
infraestrutura compartilhada de rede. Na perspectiva do usuário final ele tem acesso a uma
rede própria com recursos e políticas de segurança independentes. Um exemplo a se
considerar é o recurso de VLAN disponível em alguns equipamentos. Com esse recurso você
pode fazer com que uma interface de rede suporte múltiplas conexões virtuais vindas de redes
diferentes.
Categorias de virtualização
Nível de Hardware: a camada de virtualização é posta diretamente sobre a máquina
física e é apresentada as camadas superiores como como um hardware abstrato, similar ao
original. Esse é o processo da maioria dos hypervisores (VMware ESX, XEN, XCP e Hyper-V).
3. Virtualização Completa: é uma técnica utilizada para permitir que qualquer software possa ser
executado sem alterações. Para isso, essa técnica realiza uma simulação completa do
hardware da maquina de modo que qualquer sistema sistema operacional possa ser
executado. Na virtualização completa (full virtualization), toda uma infraestrutura do hardware
Podem ocorrer entretanto, penalidades em relação ao desempenho da máquina virtual, uma
vez, já que a hardware é virtualização, as instruções devem ser interpretadas, pelo VMM. Uma
desvantagem dessa técnica na arquitetura x86 é que a mesma não foi projetada tendo em
vista a virtuazliação, mas sim teve uma evolução a partir de versões anteriores.
Assim, algumas instruções privilegiadas que executam em modos diferentes geram
resultados diferentes.
Paravirtualização: na paravirtualização o sistema que será virtualizado (Sistema Convidado)
sofre alterações no Kernel para a interação com o VMM seja mais eficiente.
Embora se perda em portabilidade devido a modificação do sistema a ser virtualizado,
é permitido ao mesmo acesso diretamente os recursos do Hardware. O Acesso é monitorado
pelo monitor de maquinas virtuais, que fornece ao sistema convidado todos os “limites”, tais
como endereços de memória que podem ser utilizados e endereçamento de disco, por
exemplo.
Assim, a paravirtualização reduz a complexidade do desenvolvimento das maquinas
virtuais. Historicamente os processadores não suportavam a virtualização nativo.
Sendo que a principal razão para utilizar a paravirtualização é a performance obtida,
que compensa as odificações que devem ser implementadas nos sistemas convidados.
Tendências da Virtualização
Datacenter Dinâmico
A Virtualização muda a maneira como um datacenter é gerenciado.
4. O Conceito de virtualização quebra o paradigma de que cada serviço tem que ter
exclusivamente uma maquina específica. A virtualização permite melhorar a utilização dos
servidores que tradicionalmente utilizam 10 a 13% da sua capacidade.
A execução de varias maquinas virtuais faz com que sejam ocupados vários ciclos ociosos do
processador e seja eliminada a necessidade de outro servidor físico, reduzindo o consumo de
energia e o espaço físico utilizado.
Computação em nuvem
A ideia principal é que as aplicações que rodam em datacenters isolados possam rodar na
nuvem, ou seja, na internet em um ambiente em larga escala de recursos e disponibilidade.
Virtualização é o elemento central desta visão e a sua importância pode ser entendida
facilmente.
Uma característica na maioria das aplicações que funcionam em nuvem é o poder de
execução sem instalação de software.
O usuário pode tirar proveito dos recursos da nuvem através de um navegador,
encontrado em qualquer sistema operacional.
Um dos atrativos da computação nas nuvens para as empresas é a possibilidade de
terceirizar parte da sua estrutura de TI. Isso faz com que as empresas deixem de se preocupar,
por exemplo, com hardware, manutenção, atualização, backup, segurança entre outros.
Podendo voltar seu foco diretamente para o negócio.
Termos associados a tecnologia: Software como serviço (saas).
Plataform as a servisse (paas), Database as a servisse (daas), infrastructure as a servisse (iaas),
Testing as a servisse (taas) entre outros “aas”.