e essa tal virtualização?
DESCRIPTION
Palestra ministrada no IV Jornada Integrada de Cursos, UNIMEO, Assis Chateaubriand, PR, em 07/06/2011.TRANSCRIPT
2
O que diz o DICIONÁRIO?
Prof. Fabio Alexandre Spanhol, M.Sc.
Em TI ◦ Virtualização é simulação em software de um hardware/software não
disponível
◦ Virtualização é a capacidade de se executar simultaneamente, mais de um SO em um único servidor físico
Servidor Físico
SO #1 SO #2 SO #3 SO #4
Prof. Fabio Alexandre Spanhol, M.Sc. 3
Servidor Físico
Isso é possível em função da utilização de um Hypervisor, responsável por fornecer ao SO “guest”, a abstração da máquina real
...SO #1 SO #2 SO #3 SO #4
Hypervisor(processador, memória, disco, rede)
Prof. Fabio Alexandre Spanhol, M.Sc. 4
Todo lugar!◦ Desenvolvedores utilizam para testar seu
software em diferentes SO ◦ Profissionais de TI usam para testar
diferentes configurações ◦ Empresas utilizam para rodar TODA a
infraestrutura de TI ◦ Universidades usam em seus laboratórios ◦ Brevemente seu computador/telefone será
virtualizado...
Prof. Fabio Alexandre Spanhol, M.Sc. 5
6
Fortune Magazine◦ 100% das top100 ◦ 96% das top1000◦ 95% das top 500 Global
Usam Virtualização!
Prof. Fabio Alexandre Spanhol, M.Sc.
Prof. Fabio Alexandre Spanhol, M.Sc. 7
Emulador◦ é o oposto da máquina real Implementa todas as instruções
realizadas pela máquina real em um ambiente abstrato de software “Engana”, fazendo com que todas as
operações da máquina real sejam implementadas em um software Interpreta um código desenvolvido para
outra plataforma
Emulador◦ Primeiro criado por Larry Moss (IBM, 1964)
para rodar programas do 7070 no System/360
Prof. Fabio Alexandre Spanhol, M.Sc. 8
Prof. Fabio Alexandre Spanhol, M.Sc. 9
Emulador◦ Popularizou-se com a Internet e a
emulação de video games Plataformas antigas Atari, SNES, PS1, etc.
◦ Também aplicado para Executarsoftware legado Cross-compiling
Open Source 68k Macintosh Emulator
Prof. Fabio Alexandre Spanhol, M.Sc. 10
Até 2008 a Emulators Inc. vendia emuladores MAC para rodar no Windows◦ Rodar aplicativos Mac (até 8.1) no PC
Prof. Fabio Alexandre Spanhol, M.Sc. 11
Emulador Sony PlayStation
Prof. Fabio Alexandre Spanhol, M.Sc. 12
Emulador Super Nintendo
Prof. Fabio Alexandre Spanhol, M.Sc. 13
Microsoft◦ XBOX 360 emula XBOX
Sony◦ PS3 emula PS1
Nintendo◦ Wii Virtual Console emula NES, Super Nintendo,
Mega Drive, Neo-Geo, PC Engine e Nintendo 64
Prof. Fabio Alexandre Spanhol, M.Sc. 14
Prof. Fabio Alexandre Spanhol, M.Sc. 15
Hypervisor◦ VMM - Virtual Machine Monitor
Fornece uma interface (através da multiplexação do hardware) que é idêntica ao hardware subjacente e controla uma ou mais máquinas virtuais
Pode ser implementado entre o hardwaree o SO hospedeiro ou como um processo do SO hospedeiro
Mais utilizadas◦ VMware◦ Citrix◦ Microsoft◦ Xen◦ KVM◦ z/VM
Prof. Fabio Alexandre Spanhol, M.Sc. 16
Prof. Fabio Alexandre Spanhol, M.Sc. 17
Virtualização Total (Full Virtualization)◦ Hardware completo virtualizado◦ Compatibilidade total◦ Perda de desempenho
Paravirtualização (Paravirtualization)◦ SO virtualizado deve ser alterado◦ Perda de compatibilidade◦ Desempenho melhorado
Simulação completa do hardwaresubjacente oferecida aos SO◦ Conjunto de instruções◦ Operações de I/O◦ Acesso à memória◦ Interrupções◦ Etc.
Todo software que roda no hardware real roda no hardware virtualizado
SO não “sabe” que está virtualizadoProf. Fabio Alexandre Spanhol, M.Sc. 18
Prof. Fabio Alexandre Spanhol, M.Sc. 19
Necessita hardware e software adequados◦ Na plataforma x86 até 2006/2007 não havia
suporte nativo◦ Extensões nos processadores AMD-V Intel VT-x◦ Tradução binária Instruções críticas são descobertas (estaticamente ou
em run-time) e substituídas com traps para a VMM emulada em software
◦ VMWare, MS-Virtual PC, Sun VirtualBox
Execução direta x Tradução Binária◦ Hypervisor traduz on the fly as chamadas do SO Permite execução direta para melhorar performance
Prof. Fabio Alexandre Spanhol, M.Sc. 20
Apresenta uma abstração de máquina virtual que é similar, mas não idêntica ao hardware subjacente◦ Necessita modificações no SO convidado SO “sabe” que está rodando sob um hypervisor◦ Nenhuma alteração na Application Binary Interface
(ABI) Aplicações não precisam ser alteradas
Prof. Fabio Alexandre Spanhol, M.Sc. 21
Xen Hypervisor◦ •
Domain 0◦ Domínio privilegiado (Dom0) Convidado rodando no hypervisor com acesso direto
ao hardware e responsabilidades de gerenciamento
Multiple DomainU◦ Não privilegiados (DomU) Convidados não privilegiados rodando no hypervisor Sem acesso direto ao hardware (memória, discos, etc.)
Prof. Fabio Alexandre Spanhol, M.Sc. 22
Prof. Fabio Alexandre Spanhol, M.Sc. 23
DomUs◦ SO modificado (paravirtualização) ◦ SO não-modificado Depende da virtualização do hardware (Intel VT e
AMD-V) chamado Hardware Virtual Machine (HVM) MS Windows precisa de um ambiente HVM
Prof. Fabio Alexandre Spanhol, M.Sc. 24
Kernel-based Virtual Machine◦ Primeiramente surgiu no kernel Linux 2.6.20
(Fev/2007)◦ Melhor performance◦ Suporta virtualização nativa x86◦ Não faz emulação por si só Fornece interface em /dev/kvm para programas
rodando em user-space criarem VM Ex.: QEmu
Prof. Fabio Alexandre Spanhol, M.Sc. 25
Particionamento◦ Múltiplas aplicações e SO podem ser executados em
um único sistema físico
◦ Servidores podem ser consolidados em máquinas virtuais, escalando arquiteturas
◦ Recursos computacionais são tratados em uma política uniforme para que sejam alocadas máquinas virtuais de maneira controlada
Prof. Fabio Alexandre Spanhol, M.Sc. 26
Isolamento◦ MV são completamente isoladas da máquina
hospedeira e de outras máquinas virtuais Se uma MV tem problemas, as outras não são afetadas
◦ Dados não vazam entre máquinas virtuais aplicativos comunicam-se apenas por conexões de
rede configuradas
Prof. Fabio Alexandre Spanhol, M.Sc. 27
Encapsulamento◦ Um ambiente completo de uma MV em execução é
salvo em um simples arquivo fácil fazer backup, Mover/copiado
◦ Padronização de hardware virtualizado é fornecida para a aplicação Garantia de compatibilidade
Prof. Fabio Alexandre Spanhol, M.Sc. 28
Economia!◦ TI verde Pressões por responsabilidade ambiental Economia de recursos (incluindo
energéticos)
Prof. Fabio Alexandre Spanhol, M.Sc. 29
TI tem emissão de Carbonoequivalente ao setor aéreo◦ E a emissão continua subindo
vertiginosamente Durante seu ciclo de vida, um PC típico
consome 10 vezes seu próprio pesoem combustíveis fósseis 80% na sua produção e transporte
◦ TI é responsável por 2% de todas as emissões anuais de CO2 na atmosfera
Transmissãoperde 35
100 unidades de energia na
matéria-prima
33unidadesentregues
Data Center
Ar Condicionado, Nobreak, etc.
Servidores
Processador
30%70%
Fontes, Ventiladores, Discos, Memória, etc.
TI
45%55%
Desempenho e capacidade porWatt.
Cargas do ServidorTaxas Típicas de Uso
x86: 5 – 12%
Unix/Risc: 10 – 20%
Mainframe: 80 – 100%
Recursosaté 95% inativos
(idle)
Usandosó 5 a 20% da capacidade!!!
Prof. Fabio Alexandre Spanhol, M.Sc. 30
Geração perde 32
Prof. Fabio Alexandre Spanhol, M.Sc. 31
Flexibilidade e agilidade para criação/manutenção de ambientes
Facilidade na administração/gerenciamento de ambientes de testes ou produção
Diminuição de custos com TI (hardware/software)
Diminuição de custos com energia elétrica
Diminuição do lixo tecnológico
32Prof. Fabio Alexandre Spanhol, M.Sc.