Buscar

A virtualização - definições

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

A virtualização pode ser realizada em diferentes contextos e de 
diferentes formas, incluindo: 
 
 Virtualização de servidores: é a forma mais corriqueira de virtualização que 
atualmente é bastante difundida em virtude da predominância de servidores x86. A 
virtualização de servidores será o foco de nossa aula. 
 
 Virtualização de desktops: também é uma forma de virtualização, porém focada 
nos desktops dos usuários finais. As aplicações de desktop também passam a ser 
executadas em um datacenter, sob a forma de máquinas virtuais, surgindo o conceito 
de Virtual Desktop Infrastructure (VDI). 
 
 Virtualização dos dispositivos de armazenamento (storage): permite que 
as diversas unidades heterogêneas de armazenamento (discos físicos) sejam vistas 
como um conjunto homogêneo de recursos de armazenamento, mas apesar de suas 
vantagens não é tão popular quanto à virtualização de servidores. Atualmente, tem 
ganhado força a virtualização e a “tierização” de storage. 
 
 Virtualização das aplicações: é a execução dos programas ou aplicativos em 
um repositório central, permitindo melhorar seu gerenciamento e configuração, que 
passa a ser feito em um único lugar. 
 
 Virtualização de redes: é a separação ou segmentação da rede da organização 
por áreas ou unidade, utilizando uma única infraestrutura compartilhada de rede, 
aparentando ao usuário final que ele tem acesso a uma rede própria, com recursos 
dedicados e de segurança independentes. Um conceito relacionado é o de rede 
definida por software (Software Defined Network). 
 
As soluções de virtualização podem ser classificadas em três categorias: 
 
 Nível do hardware: a camada de virtualização é posta diretamente sobre a 
máquina física e a apresenta às camadas superiores como uma abstração do 
hardware, mas guardando similaridade com o hardware original, são exemplos o 
VMware ESX, Xen e Hyper-V.No nível do hardware, a virtualização mais comum é a 
de servidores. A virtualização de servidores consolida vários servidores físicos, em 
geral com processamento subutilizado, em um servidor físico com alto grau de 
utilização. Reduz a complexidade do gerenciamento, o espaço físico e o consumo de 
energia e refrigeração. 
 
 Nível do sistema operacional: essa estratégia de virtualização insere a camada 
de virtualização entre o sistema operacional e as aplicações. Ela permite a criação de 
partições lógicas que aparentam máquinas isoladas, mas compartilham o mesmo 
sistema operacional. São exemplos: Jails, Containers, Linux-VServer, SandBox, KVM 
e Sun VirtualBox. 
 
 Nível da linguagem de programação: a camada de virtualização é executada 
sobre o sistema operacional da plataforma. É estabelecida uma máquina abstrata 
sobre a qual executa uma aplicação desenvolvida em uma aplicação de alto nível. A 
máquina virtual Java (JVM) é o exemplo mais marcante de virtualização ao nível da 
linguagem de programação. 
 
A virtualização ocorre quando coexistem três elementos. Um ambiente virtualizado 
consiste de três partes básicas, que podem são detalhadas abaixo: 
 
 sistema hospedeiro, real, ou nativo (host system) contém os recursos reais 
de hardware e software do sistema; É o sistema operacional que é executado por 
uma máquina física. 
 
 camada de virtualização, chamada hipervisor ou monitor (VMM – Virtual 
Machine Monitor) - surgiram para resolver as desvantagens das máquinas virtuais de 
processo. 
Também conhecidos como hipervisores (hypervisors), os monitores de máquinas 
virtuais são implementados como uma camada de software entre o hardware e o 
sistema operacional, e oferecem uma máquina virtual para o Sistema Operacional 
(SO). 
 
 sistema virtualizado, também denominado sistema convidado (guest 
system), executa sobre o sistema virtualizado; vários sistemas virtuais podem 
coexistir, simultaneamente sobre o mesmo sistema real; O hóspede é o sistema 
virtualizado que deve ser executado pelo hospedeiro. 
 
Máquina Virtual de Processo é que uma aplicação que executa sobre um sistema 
operacional A e emula o comportamento de um sistema operacional B. 
 
Os hipervisores podem utilizar duas técnicas: virtualização total ou 
paravirtualização: 
 
Na paravirtualização o sistema operacional hóspede precisar ser modificado. O 
sistema operacional do hóspede roda em uma máquina virtual similar ao hardware 
físico, mas não equivalente. 
 
Como este método, o hóspede é modificado para recorrer ao hypervisor quando 
necessitar de qualquer instrução privilegiada e, não, diretamente ao processador. 
Assim, o VMM não precisa interceptar estas solicitações e testá-las, como acontece 
na virtualização total. 
 
Além disso, a paravirtualização diminui expressivamente os problemas com 
compatibilidade de hardware, porque o sistema operacional do hóspede acaba 
podendo utilizar drivers adequados - na virtualização total, os drives disponíveis são 
genéricos, isto é, criados para suportar o máximo possível de dispositivos, mas sem 
considerar as particularidades de cada componente. 
 
A principal desvantagem da paravirtualização é a necessidade de o sistema operacional 
ter que sofrer modificações para saber que está sendo virtualizado, podendo gerar 
custos com adaptação e atualização ou limitações referentes à migração para um 
novo conjunto de hardware, por exemplo. Pessoal, convenhamos que custo alto pode 
ser uma desvantagem considerável. 
 
Na virtualização total o sistema operacional hóspede não precisa ser modificado para 
executar sob o hipervisor. Essa é a diferença essencial entre os tipos de hipervisores. 
 
Na virtualização total, vale relembrar, não há necessidade de alteração do sistema, por 
outro lado o procedimento fica sujeito aos problemas já mencionados. Assim, a 
adoção de um modo ou outro depende de análises e testes que possam determinar 
qual é mais vantajoso para determinado serviço. 
 
Na virtualização total, o sistema operacional do hóspede trabalha como se de fato 
houvesse uma máquina física inteiramente a sua disposição. Dessa forma, o sistema 
não precisa sofrer nenhuma adaptação e trabalha como se não houvesse 
virtualização ali. 
 
O problema é que esta abordagem pode ter algumas limitações. Uma delas é o risco 
de algumas solicitações do hóspede não serem atendidas da maneira esperada. 
 
Isso acontece, por exemplo, quando o hypervisor não consegue lidar com 
determinada instrução privilegiada ou quando um recurso de hardware não pode ser 
plenamente acessado por não haver drivers na virtualização capazes de garantir sua 
plena compatibilidade. 
 
Virtualização por container 
 
Um container é uma forma de virtualização no nível do sistema operacional, um 
ambiente totalmente isolado, simulando um sistema independente no mesmo host. 
 
A virtualização baseada em conteineres ou virtualização a nível de sistema operacional 
utiliza uma camada para as chamadas do sistema (system calls), o que permite o 
isolamento entre o sistema hospedeiro e a máquina virtual. O principal benefício da 
virtualização baseada em containers é a performance nativa do sistema. 
 
Existem dois tipos de máquinas virtuais: as máquinas virtuais de sistemas e as 
máquinas virtuais de aplicação (ou processo). 
 
As máquinas virtuais de sistemas fornecem uma plataforma de sistemas completa que 
suporta a execução de um sistema operacional completo. Geralmente, eles emulam 
uma arquitetura existente e são construídas com o propósito de prover uma 
plataforma para rodar programas em que o hardware real não está disponível para 
uso. 
 
Outro propósito é ter múltiplas instâncias de máquinas virtuais levando ao uso mais 
eficiente de recursos computacionais, ambos em termos de consumo de energia, 
efetividade de custo ou ambos (Ex: VMWare). 
 
Já as máquinas virtuais de aplicação (ou processo) são projetadas para rodar um 
programa único, o que significa que ela suporta um único processo (Ex: JVM). 
 
As máquinas virtuaisde aplicação são geralmente mais adequadas a uma ou mais 
linguagens de programação e são construídas com a finalidade de fornecer a 
portabilidade e flexibilidade do programa, entre outras coisas. 
 
Uma característica essencial de uma máquina virtual é que o software rodando dentro 
dela é limitado aos recursos e abstrações providas pela máquina virtual – ele não 
pode sair do ambiente virtual. 
 
Os hipervisores são classificados em dois tipos: Hipervisor Tipo I: Esse hipervisor 
executa diretamente no hardware do servidor e controla o hardware e o acesso do 
sistema operacional convidado. Também é conhecido como metal nu, bare-metal, 
nativo ou supervisor. 
 
O hipervisor nativo compartilha os recursos de hardware entre as máquinas virtuais, 
de forma que cada uma delas imagina ter recursos exclusivos. São exemplos de 
hipervisor nativo o VMware ESX Server, Microsoft Hyper-V e Xen Server. 
 
Hipervisor Tipo II (hóspede ou hosted): Nesse tipo, o hipervisor é uma aplicação que 
fornece um ambiente de execução para outras aplicações. Executa sob um sistema 
operacional nativo como se fosse um processo. 
 
No hipervisor tipo II, a camada de virtualização é composta por um sistema 
operacional hóspede e um hardware virtual. Ambos são criados sobre os recursos de 
hardware reais, que são gerenciados pelo Sistema Operacional nativo. 
 
Nessa arquitetura, implementa-se o monitor de máquina virtual sobre o sistema 
operacional instalado no hardware anfitrião e opera como um processo desse sistema 
operacional. Vale observar que as operações que seriam controladas pelo sistema 
operacional do hospedeiro são simuladas pelo monitor para as máquinas virtuais. 
 
São exemplos de hipervisor tipo II, o VMware player, Virtualbox e Virtual PC. 
 
O Hipervisor pode ser executado no Modo Supervisor, enquanto programas 
comuns (aplicativos) normalmente rodam no Modo Usuário. 
 
No Modo Supervisor, o software pode requisitar instruções que lidam diretamente 
com certos recursos de hardware, como funcionalidades específicas do processador. 
 
No Modo Usuário, os recursos mais críticos não podem ser acessados diretamente. 
Como assim, professor? Nesse caso, o sistema operacional faz uma espécie de 
intermediação quando necessário. 
Nesse modo, o Hipervisor é que tem acesso privilegiado porque cabe a ele alocar os 
recursos a serem utilizados por cada máquina virtual sob sua responsabilidade, assim 
como determinar a ordem pela qual cada solicitação destas será atendida.

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes