Introdução a Introdução a Virtualização Virtualização Prof. Eduardo Maroñas Monks Prof. Eduardo Maroñas Monks
Introdução a Introdução a VirtualizaçãoVirtualização
Prof. Eduardo Maroñas MonksProf. Eduardo Maroñas Monks
SumárioSumário
ApresentaçãoApresentação
VirtualizaçãoVirtualização
Cenários de aplicaçãoCenários de aplicação
SoluçõesSoluções
HospedeirosHospedeiros
Armazenamento (Armazenamento (StorageStorage))
ReferênciasReferências
Virtualização com o OpenVZ Virtualização com o OpenVZ 22
VirtualizaçãoVirtualização
Breve histórico Breve histórico
Anos 60s - IBM S/360 Modelo 67Anos 60s - IBM S/360 Modelo 67
Anos 70s – IBM VM370Anos 70s – IBM VM370
Anos 90s – VmwareAnos 90s – Vmware
Anos 2000s – Xen, Virtual PC,Anos 2000s – Xen, Virtual PC,
extensões da Intel/AMDextensões da Intel/AMD
VirtualBox, OpenVZ,...VirtualBox, OpenVZ,...
•TimesharingTimesharing
•Memória VirtualMemória VirtualIntrodução a Virtualização Introdução a Virtualização 33
VirtualizaçãoVirtualização
Componentes básicosComponentes básicos
Sistema Hospedeiro (Sistema Hospedeiro (HostHost))Responsável por gerenciar o hardware Responsável por gerenciar o hardware físico e as máquinas virtuaisfísico e as máquinas virtuais
Sistema Convidado (Sistema Convidado (GuestGuest))Sistemas operacionais virtualizadosSistemas operacionais virtualizados
Armazenamento (Armazenamento (StorageStorage))Hospedagem centralizada das VMsHospedagem centralizada das VMs
Introdução a Virtualização Introdução a Virtualização 44
Introdução a Virtualização Introdução a Virtualização 55
Aproveitamento da capacidade do Aproveitamento da capacidade do hardwarehardware Diminuição drástica no valor do hardware ao longo dos Diminuição drástica no valor do hardware ao longo dos
anosanos
Economia no consumo de energia, Economia no consumo de energia, climatização, espaço físicoclimatização, espaço físico Diminuição de fontes de alimentaçãoDiminuição de fontes de alimentação
Agilidade na administração de servidoresAgilidade na administração de servidores Instalação de servidores em muito menor tempoInstalação de servidores em muito menor tempo
Uso de sistemas legadosUso de sistemas legados Windows 98, XP, IBM OS/2, Novell Netware 4.11...Windows 98, XP, IBM OS/2, Novell Netware 4.11...
Uso acadêmicoUso acadêmico Facilidade no estudo de diversos sistemas operacionais e Facilidade no estudo de diversos sistemas operacionais e
aplicações, com variação de recursosaplicações, com variação de recursos
Cenários de aplicaçãoCenários de aplicação VantagensVantagens
Introdução a Virtualização Introdução a Virtualização 66
Na falha de um servidor hospedeiro, Na falha de um servidor hospedeiro, diversos serviços podem parardiversos serviços podem parar Provavelmente, a rede como um todo ficará indisponívelProvavelmente, a rede como um todo ficará indisponível
Aumento no custo de soluções que Aumento no custo de soluções que forneçam redundânciaforneçam redundância Duplicação de armazenamento e sistemas hospedeirosDuplicação de armazenamento e sistemas hospedeiros
Complexidade para o gerenciamento da Complexidade para o gerenciamento da infraestruturainfraestrutura Com o uso de Com o uso de storagesstorages, a infraestutrura de rede deve , a infraestutrura de rede deve
fornecer alta vazão para não afetar o desempenho dos fornecer alta vazão para não afetar o desempenho dos serviçosserviços
DesempenhoDesempenho Acesso ao hardware é compartilhado com diversos Acesso ao hardware é compartilhado com diversos
sistemas convidados o que pode gerar problemas de sistemas convidados o que pode gerar problemas de desempenhodesempenho
Cenários de aplicaçãoCenários de aplicação DesvantagensDesvantagens
SoluçõesSoluções
Algumas soluções populares de Algumas soluções populares de virtualização: virtualização:
XenXen
VmwareVmware
Hyper-VHyper-V
VirtualBoxVirtualBox
OpenVZOpenVZ
Proxmox (OpenVZ/KVM)Proxmox (OpenVZ/KVM)
Introdução a Virtualização Introdução a Virtualização 77
SoluçõesSoluções
XenXenProjeto originado na Cambridge University no final Projeto originado na Cambridge University no final dos anos 90dos anos 90
Paravirtualização (necessidade de modificações Paravirtualização (necessidade de modificações no SO convidado)no SO convidado)
Código-fonte aberto em 2002, desenvolvimento Código-fonte aberto em 2002, desenvolvimento intenso da comunidadeintenso da comunidade
Adquirido em 2007 pela Citrix Systems (U$ 500 Adquirido em 2007 pela Citrix Systems (U$ 500 milhões)milhões)
XenServer (comercial)XenServer (comercial)
XenOpenSource (código-fonte aberto)XenOpenSource (código-fonte aberto)
Projeto XCP (Projeto XCP (Xen Cloud ComputingXen Cloud Computing) em 2009, ) em 2009, XenServer em código-fonte abertoXenServer em código-fonte aberto
Sem algumas funcionalidades da versão Sem algumas funcionalidades da versão comercialcomercial
Em 2013, o XenServer passou Em 2013, o XenServer passou a ser código-fonte aberto!a ser código-fonte aberto!
Introdução a Virtualização Introdução a Virtualização 88
SoluçõesSoluções
XenXenConsoleConsole
Acesso por SSHAcesso por SSH
XenCenter XenCenter
Somente para Microsoft WindowsSomente para Microsoft Windows
Introdução a Virtualização Introdução a Virtualização 99
SoluçõesSoluções
VmwareVmwareEmpresa fundada em 1998Empresa fundada em 1998
Primeiro produto: Primeiro produto: VMware WorkstationVMware Workstation em maio 1999 em maio 1999
Adquirida em 2004 pela empresa EMC Adquirida em 2004 pela empresa EMC (US$ 625 (US$ 625 milhões)milhões)
Produtos:Produtos:
ServidorServidor
ESX (comercial) ESX (comercial) (vMotion, DRS, HA, Storage (vMotion, DRS, HA, Storage vMotion)vMotion)
ESXi (freeware)ESXi (freeware)
VMware Server (freeware) (descontinuado)VMware Server (freeware) (descontinuado)
DesktopDesktop
VMware Workstation (comercial)VMware Workstation (comercial)
VMware Player (gratuito para uso não VMware Player (gratuito para uso não comercial)comercial)
•VMotionVMotion — capacidade de mover uma VM em — capacidade de mover uma VM em execução entre hospedeirosexecução entre hospedeiros
•Storage VMotionStorage VMotion — capacidade de mover uma VM em — capacidade de mover uma VM em execução entre storagesexecução entre storages
•DRS (DRS (Distributed Resource SchedulerDistributed Resource Scheduler)) — — balanceamento de carga entre hospedeirosbalanceamento de carga entre hospedeiros
•HA (HA (High AvailabilityHigh Availability)) — alta disponibilidade, em caso — alta disponibilidade, em caso de falha do hardware, as VMs iniciam de falha do hardware, as VMs iniciam automaticamente em outro hospedeiroautomaticamente em outro hospedeiro
Introdução a Virtualização Introdução a Virtualização 1010
SoluçõesSoluções
VmwareVmware
vSphere:vSphere: cliente para gerenciamento do cliente para gerenciamento do hospedeiro ESXi (freeware)hospedeiro ESXi (freeware)
Vmware ESXiVmware ESXi
Vmware PlayerVmware Player
Introdução a Virtualização Introdução a Virtualização 1111
SoluçõesSoluções
Hyper-VHyper-VSolução de virtualização para servidores da MicrosoftSolução de virtualização para servidores da Microsoft
Disponível a partir do Windows Server 2008 Disponível a partir do Windows Server 2008 (também para Windows 8)(também para Windows 8)
Primeiras iniciativas de virtualização: Microsoft Primeiras iniciativas de virtualização: Microsoft Virtual Server e Windows Virtual PCVirtual Server e Windows Virtual PC
Somente para Somente para arquitetura 64 bitsarquitetura 64 bits (os sistemas (os sistemas operacionais convidados podem ser 32 bits)operacionais convidados podem ser 32 bits)
Limitações para VMs com Linux (somente algumas Limitações para VMs com Linux (somente algumas distribuições baseadas em RedHat (CentOS, Suse))distribuições baseadas em RedHat (CentOS, Suse))
Número de VMs depende de licenciamento (Windows Número de VMs depende de licenciamento (Windows Server Datacenter não possui limitações de VMs)Server Datacenter não possui limitações de VMs)
Freeware?Freeware?
Introdução a Virtualização Introdução a Virtualização 1212
SoluçõesSoluções
Hyper-VHyper-VConsole de gerenciamentoConsole de gerenciamento
Acesso remoto as VMs por Remote DesktopAcesso remoto as VMs por Remote Desktop
Introdução a Virtualização Introdução a Virtualização 1313
SoluçõesSoluções
VirtualBoxVirtualBoxCriada pela empresa alemã innotekCriada pela empresa alemã innotek
Adquirida pela Sun em 2008 (atualmente Oracle)Adquirida pela Sun em 2008 (atualmente Oracle)
Direcionada para uso em desktopsDirecionada para uso em desktops
Livre para uso pessoal (GPL2)Livre para uso pessoal (GPL2)
Oracle VM VirtualBox Extension PackOracle VM VirtualBox Extension Pack, licença , licença diferente diferente VirtualBox Personal Use and Evaluation VirtualBox Personal Use and Evaluation LicenseLicense (PUEL). (PUEL).
Utiliza virtualização por software, quando não há Utiliza virtualização por software, quando não há recursos em hardware (Intel VT-x e AMD AMD-V)recursos em hardware (Intel VT-x e AMD AMD-V)
VMs em 64 bits somente com virtualização em VMs em 64 bits somente com virtualização em hardwarehardware
Similar ao Vmware PlayerSimilar ao Vmware Player
Introdução a Virtualização Introdução a Virtualização 1414
SoluçõesSoluções
VirtualBoxVirtualBoxConsole de gerenciamentoConsole de gerenciamento
Introdução a Virtualização Introdução a Virtualização 1515
SoluçõesSoluções
OpenVZ (OpenVZ (Open VirtuozzoOpen Virtuozzo))
Versão aberta da solução Virtuozzo Versão aberta da solução Virtuozzo (http://www.parallels.com/products/pvc/)(http://www.parallels.com/products/pvc/)
Permite o isolamento de instâncias de sistemas Permite o isolamento de instâncias de sistemas operacionais com o uso de containers ou VPS (operacionais com o uso de containers ou VPS (Virtual Virtual Private ServerPrivate Server))
Similar ao FreeBSD jails e Solaris Zones.Similar ao FreeBSD jails e Solaris Zones.
Muito utilizado em serviços de hospedagemMuito utilizado em serviços de hospedagem
Não é considerado virtualização verdadeira devido a não Não é considerado virtualização verdadeira devido a não virtualizar o hardware para o SO convidadovirtualizar o hardware para o SO convidado
Somente VMs com sistema operacional LinuxSomente VMs com sistema operacional Linux
Baseado em um kernel modificadoBaseado em um kernel modificado
Baixo overhead de virtualizaçãoBaixo overhead de virtualização
A VM se comporta como uma aplicação, A VM se comporta como uma aplicação, compartilhando recursos com o sistema operacional compartilhando recursos com o sistema operacional hospedeiro hospedeiro
•Alta escalabilidade de VMs em hardware modestoAlta escalabilidade de VMs em hardware modesto
• Exemplo: 30 VMs com 512 MB de RAM em um Exemplo: 30 VMs com 512 MB de RAM em um Quadcore com 8GB de RAMQuadcore com 8GB de RAM
Introdução a Virtualização Introdução a Virtualização 1616
SoluçõesSoluções
Linha de comandoLinha de comando
Painel (OpenVZ Web Panel)Painel (OpenVZ Web Panel)
Introdução a Virtualização Introdução a Virtualização 1717
SoluçõesSoluções
Gerenciamento de recursos das VMsGerenciamento de recursos das VMs
Modelos de sistemas operacionais Modelos de sistemas operacionais ((OS TemplatesOS Templates))
Modelos de recursos Modelos de recursos ((Server TemplatesServer Templates))
Introdução a Virtualização Introdução a Virtualização 1818
Introdução a Virtualização Introdução a Virtualização 1919
Instalação em uma distribuição CentOS 6.3 Instalação em uma distribuição CentOS 6.3 (32 bits)(32 bits) Desabilitar o SELINUXDesabilitar o SELINUX
Virtualizado no VMware Player 5.0.2Virtualizado no VMware Player 5.0.2 1GB de RAM1GB de RAM 25 GB de disco25 GB de disco
Ativar o repositório do OpenVZAtivar o repositório do OpenVZ wget wget http://download.openvz.org/openvz.repohttp://download.openvz.org/openvz.repo
Instalar o kernel modificado e utilitáriosInstalar o kernel modificado e utilitários yum install vzkernelyum install vzkernel yum install vzctl vzquotayum install vzctl vzquota
Fazer o download dos templatesFazer o download dos templates http://openvz.org/Download/template/precreatedhttp://openvz.org/Download/template/precreated
Instalar o OpenVZ Web PanelInstalar o OpenVZ Web Panel wget -O - http://ovz-web-panel.googlecode.com/svn/installer/ai.sh | shwget -O - http://ovz-web-panel.googlecode.com/svn/installer/ai.sh | sh
SoluçõesSoluções
•Configuração de rede:Configuração de rede:
• NAT (1:1, PAT)NAT (1:1, PAT)
• BridgeBridge
Introdução a Virtualização Introdução a Virtualização 2020
SoluçõesSoluções
SoluçõesSoluções
Proxmox VE (Proxmox VE (Virtual EnvironmentVirtual Environment) )
Utiliza as soluções Utiliza as soluções OpenVZOpenVZ e e KVMKVM em uma única em uma única administraçãoadministração
OpenVz para OpenVz para guestsguests Linux Linux
KVM para KVM para guestsguests Windows e outros Windows e outros
Possui recursos de migração de VMs (Possui recursos de migração de VMs (Live MigrationLive Migration), ), balanceamento de carga, balanceamento de carga, clusteringclustering, backup/restore, , backup/restore, console de administração via webconsole de administração via web
Baseado em DebianBaseado em Debian
Licença GPL 3 Licença GPL 3 (existe assinatura de suporte pago(existe assinatura de suporte pago) )
Introdução a Virtualização Introdução a Virtualização 2121
SoluçõesSoluções
Proxmox VE (Proxmox VE (Virtual EnvironmentVirtual Environment) )
Instalação com arquivo de imagem .ISOInstalação com arquivo de imagem .ISO
Disponível em Disponível em https://www.proxmox.com/downloadshttps://www.proxmox.com/downloads
Configuração de Configuração de storagestorage (opcional) (opcional)
Disponibilização de Disponibilização de templatestemplates para criação de VMs para criação de VMs com o OpenVZcom o OpenVZ
Templates disponíveis em Templates disponíveis em http://wiki.openvz.org/Download/template/precreatedhttp://wiki.openvz.org/Download/template/precreated
Disponibilização de arquivos .ISO para instalação de Disponibilização de arquivos .ISO para instalação de outros sistemas operacionais (Windows, FreeBSD, MS-outros sistemas operacionais (Windows, FreeBSD, MS-DOS)DOS)
Introdução a Virtualização Introdução a Virtualização 2222
Armazenamento (Armazenamento (StorageStorage))
O uso de armazenamento O uso de armazenamento centralizadocentralizado torna possível o torna possível o balanceamento de carga e a redundância de sistemas balanceamento de carga e a redundância de sistemas hospedeiroshospedeiros
A disponibilização das áreas de armazenamento se dão, A disponibilização das áreas de armazenamento se dão, comumente, por meio dos protocolos comumente, por meio dos protocolos NFSNFS ou ou iSCSIiSCSI
Podem ser usados dispositivos otimizados para Podem ser usados dispositivos otimizados para storagestorage ((appliancesappliances) ou servidores comuns) ou servidores comuns
A diferença está na quantidade de discos suportados A diferença está na quantidade de discos suportados e na e na confiabilidadeconfiabilidade dos equipamentos específicos de dos equipamentos específicos de armazenamentoarmazenamento
Outra diferença importante é o preço de uma solução Outra diferença importante é o preço de uma solução otimizada para uma solução adaptadaotimizada para uma solução adaptada
Introdução a Virtualização Introdução a Virtualização 2323
Armazenamento (Armazenamento (StorageStorage))
Alguns exemplos de soluções para Alguns exemplos de soluções para storagestorage, em hardware , em hardware comum:comum:
FreeNASFreeNAS – baseado no FreeBSD, roda em servidores – baseado no FreeBSD, roda em servidores comuns, possui diversos protocolos para exportação comuns, possui diversos protocolos para exportação dos compartilhamentos, utiliza o sistema de arquivos dos compartilhamentos, utiliza o sistema de arquivos ZFS para grande volumes de dados, interface de ZFS para grande volumes de dados, interface de gerenciamento web.gerenciamento web.
GlusterFSGlusterFS – sistema de arquivos em rede que utiliza – sistema de arquivos em rede que utiliza “bricks”, bloco de armazenamento distribuídos entre “bricks”, bloco de armazenamento distribuídos entre hosts na rede. Funciona como um sistema RAID 0 ou 1 hosts na rede. Funciona como um sistema RAID 0 ou 1 fazendo uso de diversos hosts comuns para formar fazendo uso de diversos hosts comuns para formar um único volume. Pode ser exportado em NFS ou no um único volume. Pode ser exportado em NFS ou no cliente nativo GlusterFS.cliente nativo GlusterFS.
Servidor NFS/iSCSIServidor NFS/iSCSI – utiliza o protocolo NFS ou o – utiliza o protocolo NFS ou o protocolo iSCSI para disponibilizar um protocolo iSCSI para disponibilizar um compartilhamento/volume para os hospedeiros. A compartilhamento/volume para os hospedeiros. A confiabilidade está no hardware e na rede do confiabilidade está no hardware e na rede do servidor.servidor.
Introdução a Virtualização Introdução a Virtualização 2424
Armazenamento (Armazenamento (StorageStorage))
Alguns exemplos de soluções para Alguns exemplos de soluções para storagestorage, em hardware , em hardware otimizado:otimizado:
Dell PowerVault MD1220Dell PowerVault MD1220 – servidor de – servidor de armazenamento de entrada da Dell, possui fonte armazenamento de entrada da Dell, possui fonte redundante, controladora RAID em hardware, com redundante, controladora RAID em hardware, com capacidade máxima de 14TB, usando 24 discos 600GB capacidade máxima de 14TB, usando 24 discos 600GB SAS de 2,5 polegadas. Valor aproximado com a SAS de 2,5 polegadas. Valor aproximado com a capacidade total capacidade total R$ 64.000,00R$ 64.000,00..
SuperMicro NAS SuperServer modelo 6027r-e1r12nSuperMicro NAS SuperServer modelo 6027r-e1r12n – – suporta até 12 discos SATA de 3TB. Valor com 4 suporta até 12 discos SATA de 3TB. Valor com 4 discos SATA de 3TB, totalizando 12 TB, discos SATA de 3TB, totalizando 12 TB, R$ 24.000,00R$ 24.000,00
Introdução a Virtualização Introdução a Virtualização 2525
Considerações FinaisConsiderações Finais
A virtualização de servidores é A virtualização de servidores é imprescindível na infraestrutura de TIimprescindível na infraestrutura de TI
A virtualização de desktops já é uma A virtualização de desktops já é uma realidaderealidade
Diversas ferramentas de virtualização Diversas ferramentas de virtualização disponíveis, com características similaresdisponíveis, com características similares
OpenVZ (Proxmox) é ideal para uso em OpenVZ (Proxmox) é ideal para uso em plataformas Linuxplataformas Linux
LAMP (Linux/Apache/MySQL/PHP)LAMP (Linux/Apache/MySQL/PHP)
Gerenciamento simplesGerenciamento simples
Baixo consumo de recursos da máquina Baixo consumo de recursos da máquina
hospedeirahospedeira Introdução a Virtualização Introdução a Virtualização 2626
Considerações FinaisConsiderações Finais
O XenServer na versão 6.2, possui recursos O XenServer na versão 6.2, possui recursos avançados para administração das VMs de avançados para administração das VMs de forma gratuitaforma gratuita
Existe a opção de suporte pagoExiste a opção de suporte pago
O VMware ESXi é um ótima solução para O VMware ESXi é um ótima solução para virtualização, porém, não possui diversos virtualização, porém, não possui diversos recursos importantes e tem limitações para uso recursos importantes e tem limitações para uso dos recursos de hardware (limita em 1 CPU e dos recursos de hardware (limita em 1 CPU e memória 32 GB de RAM)memória 32 GB de RAM)
Existe a opção de licenciamento que não Existe a opção de licenciamento que não tem estas limitações e possui recursos tem estas limitações e possui recursos avançados de gerenciamento de VMsavançados de gerenciamento de VMs
Introdução a Virtualização Introdução a Virtualização 2727
ReferênciasReferências
Site do OpenVZ - Site do OpenVZ - http://openvz.org/
Templates para o OpenVZ - Templates para o OpenVZ - http://openvz.org/Download/template/precreated
OpenVZ Web Panel - OpenVZ Web Panel - http://code.google.com/p/ovz-web-panel/
OpenVZ Quick Installation - OpenVZ Quick Installation - http://openvz.org/Quick_installation
OpenVZ User Guide - OpenVZ User Guide - http://download.openvz.org/doc/OpenVZ-Users-Guide.pdf
Xen Project - Xen Project - http://www.xenproject.org/
Vmware – Vmware – http://www.vmware.com/
Hyper-V - Hyper-V - http://www.microsoft.com/en-us/server-cloud/hyper-v-server/default.aspx
Introdução a Virtualização Introdução a Virtualização 2828
ReferênciasReferências
Hyper-V Survival Guide -Hyper-V Survival Guide - http://social.technet.microsoft.com/wiki/contents/articles/125.hyphttp://social.technet.microsoft.com/wiki/contents/articles/125.hyper-v-survival-guide.aspxer-v-survival-guide.aspx
VirtualBox - VirtualBox - https://www.virtualbox.org/wiki/VirtualBoxhttps://www.virtualbox.org/wiki/VirtualBox
Proxmox VE - https://www.proxmox.com/proxmox-veProxmox VE - https://www.proxmox.com/proxmox-ve
Introdução a Virtualização Introdução a Virtualização 2929