A virtualização está presente tanto no desktop de um entusiasta pelo assunto quanto no ambiente de TI de uma infinidade de empresas das mais variadas áreas.
Podemos
definir o conceito como soluções computacionais que permitem a execução de
vários sistemas operacionais e seus respectivos softwares a partir de uma única
máquina, seja ela um desktop convencional ou um potente servidor.
É
como se você se deparasse com um ou mais computadores distintos dentro de um
só. A diferença é que estas máquinas são virtuais:
na prática, elas oferecem resultados como qualquer outro computador, mas
existem apenas logicamente, não fisicamente.
Cada máquina virtual se traduz em um ambiente computacional completo: praticamente todos os recursos de seu sistema operacional podem ser utilizados, é possível conectá-las em rede, consegue-se instalar aplicativos, enfim.
Pode-se aproveitar um computador já existente para executar
dois ou mais sistemas distintos, já que cada um roda dentro de sua própria
máquina virtual. Evita-se, assim, gastos com novos equipamentos e aproveita-se
os possíveis recursos ociosos do computador.
Vantagens
-
Melhor aproveitamento da infraestrutura existente: ao executar vários serviços em um servidor ou conjunto de
máquinas, por exemplo, pode-se aproveitar a capacidade de processamento destes
equipamentos o mais próximo possível de sua totalidade;
- O
parque de máquinas é menor: com o
melhor aproveitamento dos recursos já existentes, a necessidade de aquisição de
novos equipamentos diminui, assim como os consequentes gastos com instalação,
espaço físico, refrigeração, manutenção, consumo de energia, entre outros.
Imagine o impacto que esta vantagem pode ter em um data center, por exemplo;
- Gerenciamento
centralizado: dependendo
da solução de virtualização utilizada, fica mais fácil monitorar os serviços em
execução, já que o seu gerenciamento é feito de maneira centralizada;
-
Implementação mais rápida: dependendo
da aplicação, a virtualização pode permitir sua implementação mais rápida, uma
vez que a infraestrutura já está instalada;
- Uso
de sistemas legados: pode-se
manter em uso um sistema legado, isto é, antigo, mas ainda essencial às
atividades da companhia, bastando destinar a ele uma máquina virtual compatível
com o seu ambiente;
-
Diversidade de plataformas: pode-se
ter uma grande diversidade de plataformas e, assim, realizar testes de
desempenho de determinada aplicação em cada uma delas, por exemplo;
-
Ambiente de testes: é
possível avaliar um novo sistema ou uma atualização antes de efetivamente
implementá-la, diminuindo significativamente os riscos inerentes a
procedimentos do tipo;
-
Segurança e confiabilidade: como
cada máquina virtual funciona de maneira independente das outras, um problema
que surgir em uma delas - como uma vulnerabilidade de segurança - não afetará
as demais;
-
Migração e ampliação mais fácil: mudar o serviço de ambiente de virtualização é uma tarefa
que pode ser feita rapidamente, assim como a ampliação da infraestrutura.
Desvantagens
- Sobrecarga
afeta a todas as máquinas virtuais: para começar, a quantidade
de máquinas virtuais que um computador pode suportar não é ilimitada, razão
pela qual é necessário encontrar um equilíbrio para evitar sobrecarga, do contrário,
o desempenho de todas as máquinas virtuais será afetado;
- Segurança:
se houver uma vulnerabilidade de segurança no VMM, por exemplo, todas as
máquinas virtuais poderão ser afetadas pelo problema;
- Portabilidade:
dependendo da solução em uso, migrar uma máquina virtual pode ser um problema.
Um exemplo hipotético: quando um sistema utiliza instruções AMD-V, mas precisa
ser transferido para uma máquina Intel;
- Contingência:
em aplicações críticas, é importante ter um computador que possa atuar imediatamente
no lugar da máquina principal (como um servidor), pois se esta parar de
funcionar, todos os sistemas virtualizados que rodam nela também serão
interrompidos;
- Desempenho:
a virtualização pode não ter bom desempenho em todas as aplicações, por isso é
importante avaliar muito bem a solução antes de sua efetiva implementação;
- Gastos:
pode haver gastos não previstos com manutenção, mão-de-obra, treinamento,
implementação e outros.
AMD-V
AMD
Virtualization permite que sistemas operacionais rodando em modo virtual
terão sua performance próxima, ou até igual, a performance alcançada quando
estes sistemas são rodados em modo nativo.
- Extensões da virtualização para o conjunto de instruções x86
Permite ao software criar máquinas virtuais de maneira mais eficiente, de modo que vários sistemas operacionais e seus aplicativos possam ser executados simultaneamente no mesmo computador.
- TLB marcado
Recursos de hardware que facilitam a comutação eficiente entre máquinas virtuais para melhorar a capacidade de resposta do aplicativo.
- RVI (Rapid Virtualization Indexing)
Ajuda a acelerar o desempenho de muitos aplicativos virtualizados, pois permite o gerenciamento da memória das máquinas virtuais baseadas em hardware
- Migração Ampliada AMD-V
Ajuda o software de virtualização com migrações ao vivo de máquinas virtuais entre todas as gerações de processadores AMD Opteron
- Virtualização de E/S
Permite o acesso direto ao dispositivo por uma máquina virtual, contornando o hipervisor para melhorar o desempenho dos aplicativos e aumentar o isolamento das máquinas virtuais, o que proporciona maior integridade e segurança
Intel VT-D
Intel VT-d é a última parte da arquitetura de hardware
Intel Virtualization Technology. VT-d ajuda o VMM (Monitor Virtual de Máquina, que atua como um
host e tem o controle total do hardware plataforma.) utilizar melhor hardware, melhorando a compatibilidade e
confiabilidade do aplicativo, e fornecendo níveis adicionais de gerenciamento,
segurança, isolamento e desempenho de I / O. Ao usar a assistência hardware VT-d
construído em chipsets da Intel o VMM pode alcançar níveis mais elevados de
desempenho, disponibilidade, confiabilidade, segurança e confiança.
VT-d é o suporte de hardware para o
isolamento e dispositivo de restrição de acessos para o proprietário da
partição gestão do dispositivo.
Essa tecnologia é
pra otimizar o desempenho do processador quando ele está executando
multi-sistemas operacionais, isso é, quando ele "virtualiza" um
sistema operacional dentro de um sistema operacional através de um software.
Se você não for usar multi-sistemas operacionais, a ativação ou a desabilitação desse recurso não faz nenhuma diferença. Deixar habilitada pro processador dissipar menos calor (ajuda no overclock).
Se você não for usar multi-sistemas operacionais, a ativação ou a desabilitação desse recurso não faz nenhuma diferença. Deixar habilitada pro processador dissipar menos calor (ajuda no overclock).