Introdução a Virtualização Prof. Eduardo Maroñas Monks Sumário Apresentação Virtualização Cenários de aplicação Soluções Hospedeiros Armazenamento (Storage) Referências Virtualização com o OpenVZ 2 Virtualização Breve histórico Anos 60s - IBM S/360 Modelo 67 Anos 70s – IBM VM370 Anos 90s – Vmware Anos 2000s – Xen, Virtual PC, extensões da Intel/AMD VirtualBox, OpenVZ,... •Timesharing •Memória Virtual Introdução a Virtualização 3 Virtualização Componentes básicos Sistema Hospedeiro (Host) Responsável por gerenciar o hardware físico e as máquinas virtuais Sistema Convidado (Guest) Sistemas operacionais virtualizados Armazenamento (Storage) Hospedagem centralizada das VMs Introdução a Virtualização 4 Cenários de aplicação Vantagens Aproveitamento da capacidade do hardware Diminuição drástica no valor do hardware ao longo dos anos Economia no consumo de energia, climatização, espaço físico Diminuição de fontes de alimentação Agilidade na administração de servidores Instalação de servidores em muito menor tempo Uso de sistemas legados Windows 98, XP, IBM OS/2, Novell Netware 4.11... Uso acadêmico Facilidade no estudo de diversos sistemas operacionais e aplicações, com variação de recursos Introdução a Virtualização 5 Cenários de aplicação Desvantagens Na falha de um servidor hospedeiro, diversos serviços podem parar Provavelmente, a rede como um todo ficará indisponível Aumento no custo de soluções que forneçam redundância Duplicação de armazenamento e sistemas hospedeiros Complexidade para o gerenciamento da infraestrutura Com o uso de storages, a infraestutrura de rede deve fornecer alta vazão para não afetar o desempenho dos serviços Desempenho Acesso ao hardware é compartilhado com diversos sistemas convidados o que pode gerar problemas de Introdução a Virtualização desempenho 6 Soluções Algumas soluções populares de virtualização: Xen Vmware Hyper-V VirtualBox OpenVZ Proxmox (OpenVZ/KVM) Introdução a Virtualização 7 Soluções Em 2013, o XenServer passou a ser código-fonte Xen aberto! Projeto originado na Cambridge University no final dos anos 90 Paravirtualização (necessidade de modificações no SO convidado) Código-fonte aberto em 2002, desenvolvimento intenso da comunidade Adquirido em 2007 pela Citrix Systems (U$ 500 milhões) XenServer (comercial) XenOpenSource (código-fonte aberto) Projeto XCP (Xen Cloud Computing) em 2009, XenServer em código-fonte aberto Sem algumas funcionalidades da versão comercial Introdução a Virtualização 8 Soluções Xen Console Acesso por SSH XenCenter Somente para Microsoft Windows Introdução a Virtualização 9 Soluções Vmware Empresa fundada em 1998 •VMotion — capacidade de mover uma VM em execução entre hospedeiros Primeiro produto: VMware Workstation em maio 1999 •Storage VMotion capacidade de mover uma VM Adquirida em 2004—pela empresa EMC (US$ 625 milhões) em execução entre storages Produtos: •DRSServidor (Distributed Resource Scheduler) — balanceamento de carga entre hospedeiros ESX (comercial) (vMotion, DRS, HA, Storage vMotion) •HA (High Availability) — alta disponibilidade, em caso deESXi falha do hardware, as VMs iniciam (freeware) automaticamente em outro hospedeiro VMware Server (freeware) (descontinuado) Desktop VMware Workstation (comercial) VMware Player (gratuito para uso não comercial) Introdução a Virtualização 10 Soluções Vmware vSphere: cliente para gerenciamento do hospedeiro ESXi (freeware) Vmware ESXi Vmware Player Introdução a Virtualização 11 Soluções Hyper-V Solução de virtualização para servidores da Microsoft Disponível a partir do Windows Server 2008 (também para Windows 8) Primeiras iniciativas de virtualização: Microsoft Virtual Server e Windows Virtual PC Somente para arquitetura 64 bits (os sistemas operacionais convidados podem ser 32 bits) Limitações para VMs com Linux (somente algumas distribuições baseadas em RedHat (CentOS, Suse)) Número de VMs depende de licenciamento (Windows Server Datacenter não possui limitações de VMs) Freeware? Introdução a Virtualização 12 Soluções Hyper-V Console de gerenciamento Acesso remoto as VMs por Remote Desktop Introdução a Virtualização 13 Soluções VirtualBox Criada pela empresa alemã innotek Adquirida pela Sun em 2008 (atualmente Oracle) Direcionada para uso em desktops Livre para uso pessoal (GPL2) Oracle VM VirtualBox Extension Pack, licença diferente VirtualBox Personal Use and Evaluation License (PUEL). Utiliza virtualização por software, quando não há recursos em hardware (Intel VT-x e AMD AMD-V) VMs em 64 bits somente com virtualização em hardware Similar ao Vmware Player Introdução a Virtualização 14 Soluções VirtualBox Console de gerenciamento Introdução a Virtualização 15 Soluções OpenVZ (Open Virtuozzo) Versão aberta da solução Virtuozzo •Alta escalabilidade de VMs em hardware modesto (http://www.parallels.com/products/pvc/) Permite o isolamento decom instâncias • Exemplo: 30 VMs 512 MBde desistemas RAM em um operacionais com com o uso8GB de containers ou VPS (Virtual Private Quadcore de RAM Server) Similar ao FreeBSD jails e Solaris Zones. Muito utilizado em serviços de hospedagem Não é considerado virtualização verdadeira devido a não virtualizar o hardware para o SO convidado Somente VMs com sistema operacional Linux Baseado em um kernel modificado Baixo overhead de virtualização A VM se comporta como uma aplicação, compartilhando recursos com o sistema operacional Introdução a Virtualização 16 Soluções Linha de comando Painel (OpenVZ Web Panel) Introdução a Virtualização 17 Soluções Gerenciamento de recursos das VMs Modelos de sistemas operacionais (OS Templates) Modelos de recursos (Server Templates) Introdução a Virtualização 18 Soluções Instalação em uma distribuição CentOS 6.3 (32 bits) Desabilitar o SELINUX de rede: •Configuração Virtualizado no VMware Player 5.0.2 • NAT (1:1, PAT) 1GB de RAM 25 GB de disco Ativar o repositório do OpenVZ • Bridge wget http://download.openvz.org/openvz.repo Instalar o kernel modificado e utilitários yum install vzkernel yum install vzctl vzquota Fazer o download dos templates http://openvz.org/Download/template/precreated Instalar o OpenVZ Web Panel wget -O - http://ovz-web-panel.googlecode.com/svn/installer/ai.sh | sh Introdução a Virtualização 19 Soluções Introdução a Virtualização 20 Soluções Proxmox VE (Virtual Environment) Utiliza as soluções OpenVZ e KVM em uma única administração OpenVz para guests Linux KVM para guests Windows e outros Possui recursos de migração de VMs (Live Migration), balanceamento de carga, clustering, backup/restore, console de administração via web Baseado em Debian Licença GPL 3 (existe assinatura de suporte pago) Introdução a Virtualização 21 Soluções Proxmox VE (Virtual Environment) Instalação com arquivo de imagem .ISO Disponível em https://www.proxmox.com/downloads Configuração de storage (opcional) Disponibilização de templates para criação de VMs com o OpenVZ Templates disponíveis em http://wiki.openvz.org/Download/template/precreated Disponibilização de arquivos .ISO para instalação de outros sistemas operacionais (Windows, FreeBSD, MSDOS) Introdução a Virtualização 22 Armazenamento (Storage) O uso de armazenamento centralizado torna possível o balanceamento de carga e a redundância de sistemas hospedeiros A disponibilização das áreas de armazenamento se dão, comumente, por meio dos protocolos NFS ou iSCSI Podem ser usados dispositivos otimizados para storage (appliances) ou servidores comuns A diferença está na quantidade de discos suportados e na confiabilidade dos equipamentos específicos de armazenamento Outra diferença importante é o preço de uma solução otimizada para uma solução adaptada Introdução a Virtualização 23 Armazenamento (Storage) Alguns exemplos de soluções para storage, em hardware comum: FreeNAS – baseado no FreeBSD, roda em servidores comuns, possui diversos protocolos para exportação dos compartilhamentos, utiliza o sistema de arquivos ZFS para grande volumes de dados, interface de gerenciamento web. GlusterFS – sistema de arquivos em rede que utiliza “bricks”, bloco de armazenamento distribuídos entre hosts na rede. Funciona como um sistema RAID 0 ou 1 fazendo uso de diversos hosts comuns para formar um único volume. Pode ser exportado em NFS ou no cliente nativo GlusterFS. Servidor NFS/iSCSI – utiliza o protocolo NFS ou o protocolo iSCSI para disponibilizar um compartilhamento/volume para os hospedeiros. A confiabilidade está no hardware e na rede do servidor. Introdução a Virtualização 24 Armazenamento (Storage) Alguns exemplos de soluções para storage, em hardware otimizado: Dell PowerVault MD1220 – servidor de armazenamento de entrada da Dell, possui fonte redundante, controladora RAID em hardware, com capacidade máxima de 14TB, usando 24 discos 600GB SAS de 2,5 polegadas. Valor aproximado com a capacidade total R$ 64.000,00. SuperMicro NAS SuperServer modelo 6027r-e1r12n – suporta até 12 discos SATA de 3TB. Valor com 4 discos SATA de 3TB, totalizando 12 TB, R$ 24.000,00 Introdução a Virtualização 25 Considerações Finais A virtualização de servidores é imprescindível na infraestrutura de TI A virtualização de desktops já é uma realidade Diversas ferramentas de virtualização disponíveis, com características similares OpenVZ (Proxmox) é ideal para uso em plataformas Linux LAMP (Linux/Apache/MySQL/PHP) Gerenciamento simples Baixo consumo de recursos da máquina hospedeira Introdução a Virtualização 26 Considerações Finais O XenServer na versão 6.2, possui recursos avançados para administração das VMs de forma gratuita Existe a opção de suporte pago O VMware ESXi é um ótima solução para virtualização, porém, não possui diversos recursos importantes e tem limitações para uso dos recursos de hardware (limita em 1 CPU e memória 32 GB de RAM) Existe a opção de licenciamento que não tem estas limitações e possui recursos avançados de gerenciamento de VMs Introdução a Virtualização 27 Referências Site do OpenVZ - http://openvz.org/ Templates para o OpenVZ - http://openvz.org/Download/template/precreated OpenVZ Web Panel - http://code.google.com/p/ovz-web-panel/ OpenVZ Quick Installation - http://openvz.org/Quick_installation OpenVZ User Guide - http://download.openvz.org/doc/OpenVZ- Users-Guide.pdf Xen Project - http://www.xenproject.org/ Vmware – http://www.vmware.com/ Hyper-V - http://www.microsoft.com/en-us/server-cloud/hyper-vserver/default.aspx Introdução a Virtualização 28 Referências Hyper-V Survival Guide - http://social.technet.microsoft.com/wiki/contents/articles/125.hyperv-survival-guide.aspx VirtualBox - https://www.virtualbox.org/wiki/VirtualBox Proxmox VE - https://www.proxmox.com/proxmox-ve Introdução a Virtualização 29