open virtualization - virtualização em software livre
Post on 27-Jun-2015
2.072 Views
Preview:
DESCRIPTION
TRANSCRIPT
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Open Virtualization
Virtualização em Software Livre
Frederico MadeiraLPIC1, LPIC2, CCNAfred@madeira.eng.brwww.madeira.eng.br
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
O que é Virtualização ?
“É um termo que se refere a criação de máquinas virtuais que se comportam com se fosse um computador real. O software executado nesta máquina virtual é separado do hardware real da máquina.”
Red Hat Enterprise Linux 5Virtualization Guide
“É um termo amplo da computação que se refere a capacidade de executar software, comumente, sistemas operacionais, concorrentemente e isolados de outros programas do sistema.”
Wikipedia
“É a criação de substitutos flexíveis para recursos reais — substitutos que têm as mesmas funções e interfaces externas que seus equivalentes reais, mas diferem em atributos como tamanho, desempenho e custo. Esses substitutos são denominados recursos virtuais; seus usuários geralmente não têm conhecimento da substituição.”
IBM DeveloperWorks: Hypervisores, virtualização e a nuvem
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Por que Virtualizar ?
➔ Consolidação de Servidores (redução do número físico de servidores)
➔ Menor Complexidade em infra-estrutura física
➔ Rápido aprovisionamento de novos servidores
➔ Recuperação de desastres
➔ Redução de Custo
➔ Com Hardware: contratos de manutenção, upgrades, aquisições➔ Energia➔ Espaço➔ Tempo de instalação➔ Gerenciamento➔ Produtividade do administrador aumentada
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Hypervisors
➔ Os hypervisors são componentes de software ou firmware que podem virtualizar recursos do sistema.
➔ A virtualização geralmente é implementada através de um Hypervisor
➔ Também chamado de Virtual Machine Monitor (Monitor de Máquina Virtual) ou VMM
➔ Oferecem uma forma conveniente de usar o mesmo hardware do computador físico para outras tarefas diferentes
➔ Os hypervisors não são iguais, mas todos oferecem recursos semelhantes
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Tipos de Hypervisors
➔ Tipo 1
➔ Funcionam diretamente no HW➔ Chamados de HardV➔ Recomendados para servidores de produção➔ Pode ser carregado via pendrive➔ Baixo overhead
➔ Tipo 2
➔ Funcionam sobre um sistema operacional host e oferecem o serviço de virtualização
➔ Chamados de SoftV➔ Não recomendado para servidores de produção➔ Normalmente utilizados como porta de entrada para a virtualização➔ Alto overhead, pois o SO Host consome recursos do Hw
➔ Temos outros tipos de virtualização, mas para escopo deste trabalho, não foram descritos aqui
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Tipos de Hypervisors
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Exemplo de Hypervisors
➔ PowerVM: Um recurso dos servidores IBM POWER5, POWER6 e POWER7, suporte fornecido por IBM i, AIX®e Linux®. http://www-03.ibm.com/systems/power/software/virtualization/index.html
➔ VMware ESX Server (vSphere): Hypervisor integrado "do zero", os hypervisores de software empresariais da VMware ESX funcionam diretamente no hardware do servidor sem a necessidade de outro sistema operacional subjacente.http://www.vmware.com/products/datacenter-virtualization/vsphere/index.html
➔ Xen (Citrix): Os sistemas do Xen têm uma estrutura com o hypervisor Xen como a camada mais baixa e mais privilegiada.http://www.citrix.com/products/xenserver/overview.html
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Exemplo de Hypervisors
➔ KVM: Estrutura de virtualização para Linux kernel, o KVM suporta a virtualização nativa em processadores com extensões de virtualização de hardware (Intel VT ou AMD-V). O KVM é nativo no kernel do linux a partir da versão 2.6.20.http://www.linux-kvm.org/page/Main_Page
➔ z/VM: Versão atual dos sistemas operacionais de máquina virtual da IBM, o z/VM funciona no zSeries da IBM e pode ser usado para suportar uma grande quantidade (milhares) de máquinas virtuais Linux.http://www.vm.ibm.com/
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Funcionalidades desejadas em um Hypervisor
➔ Desempenho da máquina virtual
Os sistemas virtuais deveriam ter desempenho similar ou superior aos seus equivalentes, pelo menos em relação aos aplicativos dentro cada servidor. Qualquer coisa além dessa referência é lucro.
➔ Gerenciamento de memória
➔ Alta disponibilidade
Cada grande fornecedor tem sua própria solução de alta disponibilidade e a maneira como cada um atinge isso pode ser bem diferente, variando desde métodos minimalistas até muito complexos
➔ Migração ativa
Migração ativa em diferentes plataformas e a capacidade de migrar simultaneamente duas ou mais VMs
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Funcionalidades desejadas em um Hypervisor
➔ Redes, armazenamento e segurança
Em rede, os hypervisors devem suportar agrupamento de cartões de interface de rede (NICs) e balanceamento de carga, isolamento Unicast e suporte para o entroncamento de rede de área local virtual (VLAN) padrão (802.1Q).Em armazenamento, devem suportar armazenamento em rede iSCSI e Fibre Channel
➔ Recursos de gerenciamento
Devem oferecer recursos de trap do Simple Network Management Protocol (SNMP), integração com outros softwares de gerenciamento e tolerância a falhas do servidor de gerenciamento.Interface para o gerenciamento da solução
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
KVM – Kernel-based Virtual Machine
➔ É um módulo do kernel Linux que transforma o Linux em um hypervisor
➔ Requer extensões de virtualização da CPU
# grep -E 'svm|vmx' /proc/cpuinfo
onde svm(AMD) e vmx(Intel)
➔ Possui performance competitiva em relação aos outros hypervisors e é rico em funcionalidades
➔ Possui sistema avançado de gerenciamento de memória
➔ Bastante integrado ao kernel Linux.
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
KVM – Kernel-based Virtual Machine
➔ Um hypervisor necessita de:
➔ Gerenciamento de memória e um escalonador➔ I/O stack➔ Device drivers➔ Gerenciamento de pilha➔ Rede
➔ O linux é reconhecidamente eficiente em todas as tarefas acima, então por que reinventar a roda ?
➔ Reuso do código linux sempre que possível
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
KVM – Arquitetura
➔ Guest OS, executado no user-space
➔ Cada Guest OS representa um único processo no Host OS.
➔ O hypervisor é um módulo carregado no kernel como qualquer outro.
➔ A CPU provê suporte a virtualização
➔ A memória é virtualizada através do módulo KVM
➔ O I/O e demais recursos de hardware como disco, rede são virtualizados através do QEMU
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Libvirt – Virtualization Library
➔ É uma API Linux para virtualização que suporta diversos hypervisors como Xen, KVM, QEMU, OpenVZ, etc.
➔ Biblioteca para gerenciamento de sistemas operacionais Guest “hypervisor-agnostic”
➔ Representa apenas a API sobre a qual devem ser desenvolvidas ferramentas para gerenciamento das máquinas virtuais
➔ Originalmente desenvolvida para gerenciamento do Xen, mas estendida para outros hypervisors
➔ Controla tanto hypervisors locais como remotos, através de protocolos seguros como TLS e Kerberos
➔ Na parte de rede, suporta bridging, bondig, vlans
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Libvirt – Virtualization Library
Gerenciamento Local Gerenciamento Remoto
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Ferramentas
➔ Graças a as API's do libvirt, temos diversas ferramentas para gerenciamento de nosso ambiente virtualizado.
➔ virsh: Ferramenta de linha de comando que oferece um shell interativo e uma ferramenta de scipting batch para gerenciamento de todos os domínios libvirt, rede e armazenamento
➔ virt-top: Verifique a utilização de CPU, memória e disco de todas as máquians virtuais que estão rodando em um host
➔ virt-install: Fornece uma interface para criação de novas máquinas virtuais. Suporta instalação a partir de imagens locais de CD/DVD ou via rede através de NFS, HTTP e FTP
➔ Virt-manager: Ferramenta de gerenciamento de máquinas virtuais. Permite o gerenciamento de VM's tanto na máquina local como em máquinas remotas, efetuando conexões a seus hipervisors. Direcionada para utilização em casa e pequenos escritórios, gerencia até 20 hosts e suas máquinas virtuais
➔ Lista completa em: http://libvirt.org/apps.html#configmgmt
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Ferramentas - Virsh
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Ferramentas - virt-manager
Fonte: http://wiki.deimos.fr/KVM_:_Mise_en_place_de_KVM
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
oVirt
➔ Definido como uma plataforma de gerenciamento para datacenter virtual para:
Provisionar, gerenciar, e monitorar hosts, hypervisors, máquinas virtuais, storage e network
➔ É um projeto do Open Virtualization project
➔ Open Source
➔ Baseado em virtualização linux KVM
➔ É um servidor rico em funcionalidades, oferecendo diversas funcionalidades encontradas apenas nas soluções de mercado como VmWare, Citrix, alternativa ou vCenter/vSphere
➔ Base de solução de virtualização da RedHat
➔ Provê imagem de instalação para o nó oVirt
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Ovirt - Funcionalidades
➔ High availability para prover tolerância a falhas
➔ Live migration para mover hosts entre máquinas físicas sem interrupção
➔ Storage management
➔ System scheduler onde é possível criar políticas para balanceamento dos recursos
➔ Image Engine para criar, gerenciar e provisionar máquinas virtuais
➔ Storage Virtualization para garantir acesso a storage de qualquer servidor
➔ Compatível com Glustefs
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Ovirt - Arquitetura
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Ovirt - Dashboard
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Ovirt - Comparativo
➔ Solução de virtualização da RedHat é baseada em KVM e oVirt
➔ Segundo lugar frente a soluções conhecidas de mercado
➔ Fonte: http://bit.ly/virtshootout
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Dúvidas
2ª SETIC - Semana de Tecnologia da Informação e Comunicação, 2012
Referências
● Hypervisores, virtualização e a nuvem, disponível em:http://www.ibm.com/developerworks/br/cloud/library/cl-hypervisorcompare/
● Virtualização, verbete wikipedia, disponível em:http://en.wikipedia.org/wiki/Virtualization
● Red Hat Enterprise Linux 5, Admin Guide, disponível em:https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/5/html/Virtualization/sect-Virtualization-Preface-What_Is.html
● Virtualization – The Beguines guide, McGraw Hill
● Dez benefícios da virtualização e consolidação de servidores. Disponível em: http://www.a2f.com.br/blog/consolidacao-e-virtualizacao/10-beneficios-da-consolidacao-e-virtualizacao-de-servidores
● Discover the Linux Kernel Virtual Machine - http://www.ibm.com/developerworks/linux/library/l-linux-kvm/
● Anatomy of the libvirt virtualization library - http://www.ibm.com/developerworks/linux/library/l-libvirt/
● Virtualization shoot-out: Citrix, Microsoft, Red Hat, and Vmware http://www.infoworld.com/d/virtualization/virtualization-shoot-out-citrix-microsoft-red-hat-and-vmware-666
top related