Virtualização OpenSource

com Citrix XenServer

Apresentação
• Vinícius Ferrão
• Administrador de Sistemas
• 11 anos de experiência com
redes de computadores.
• Começou com sistemas Unix
(Linux e BSD) em 2005.
• Responsável pela rede do
Instituto de Física da UFRJ.
• FOSS sempre que possível!

O que é o
XenServer?

• Baseado em componentes de código aberto.• É um produto completo com qualidade enterprise para virtualização de servidores e de datacenter. . • Abraçado pela Citrix Systems.

OK. mas existe algo similar? .

.

• Utilizados em ambientes ditos como enterprise. • Possuem alguma toolstack.• Todos são hypervisors do tipo 1. . • Instalados em baremetal.

Toolstack? Baremetal? Hypervisor? Type-1? Xen? .

Toolstack? Baremetal? Hypervisor? Type-1? Xen? .

Calma! .

Vamos explicar mais a frente! .

Mas e quanto a visibilidade? .

.

.

.

Me dê mais argumentos! .

XenServer vs Hypervisor “Famoso” .

.

Mas e se quebrar? .

• Suporte comercial oferecido pela Citrix Systems.citrix.com/xenserver . • Mais informações em: http://www.

Fui convencido… .

Histórico

Histórico

Desenvolvido pela Citrix Systems.

Largamente baseado em produtos ou
componentes abertas: CentOS, Xen
Hypervisor, Open vSwitch, Logical
Volume Manager.

Código parcialmente fechado.

25/06/2013

• Hypervisor • Xen • Arquitetura do Xen • Toolstack .

Hypervisor .

• Uma máquina que possuí um hypervisor é definida como hospedeira. .Hypervisor • Camada de software. ou host machine. firmware ou até mesmo hardware que gerencia e executa máquinas virtuais.

• Múltiplos guests são executados sobre um mesmo hypervisor. .Hypervisor • Cada máquina virtual que está acima deste hypervisor é chamada de guest machine.

Hypervisor Type-1 vs Type-2 .

• Type-1 executa direto no baremetal • VMware vSphere ESXi • Microsoft Hyper-V • Xen .

• VMware Workstation • Oracle VirtualBox • Parallels Desktop .• Type-2 funciona em cima de um sistema operacional qualquer.

Hypervisor .

Controvérsia .

Controvérsia .

Controvérsia .

Xen .

• Free and OpenSource Software.Xen • Único hypervisor tipo-1 FOSS. . serviços e das maiores Clouds atuais. • Mais de 10 anos de idade. • Base de inúmeras aplicações.

Timeline .

net/xen_com_mgr/xpus13-pavlicek .slideshare.Timeline Retirado de: http://www.

Características .

• Classificação de Domínios como Dom0 (Ring0) e DomU (Unprivileged). • Suporte a diferentes toolstacks.• Virtualização Completa (HVM). . • Paravirtualização (PV).

Espera aí… Paravirtualização? .

• Sistemas paravirtualizados são aqueles que tem a ciência de que estão sendo virtualizados. . • Sistema Operacional guest deve ser modificado para que este funcione como paravirtualizado.

.• Sistemas Operacionais fechados não podem ser paravirtualizados.

.

.

.

Arquitetura .

png .org/wiki/File:Xen_Arch_Diagram.Retirado de: http://wiki.xen.

Memória e interrupções. • É responsável por gerenciar os recursos: CPU.• O Hypervisor é executado diretamente no hardware. • Primeiro software a ser inicializado depois do bootloader. .

png .org/wiki/File:Xen_Arch_Diagram.xen.Retirado de: http://wiki.

• O domínio de controle (Dom0) é uma VM com privilégios de acesso direto ao hardware. • Gerencia o acesso ao sistema de E/S. • Interage com as outras máquinas virtuais. .

• Automaticamente inicializada após o início do sistema.• É exportado como interface de controle para acesso e gerenciamento. • Necessária para o funcionamento do Xen. .

xen.org/wiki/File:Xen_Arch_Diagram.Retirado de: http://wiki.png .

• Responsáveis pela criação. .• O toolstack são as ferramentas de gerenciamento do hypervisor. • São instaladas no Dom0. destruição e gerenciamento das máquinas virtuais.

• Dependendo do toolstack utilizado este pode prover um interface de controle por: • Linha de comando. . • Interface gráfica ou web. • Middleware de Cloud.

Retirado de: http://wiki.png .org/wiki/File:Xen_Arch_Diagram.xen.

• Em alguns casos o Dom0 deve possuir um kernel modificado com os patches necessários. . • Este deve ser paravirtualizados.• O Dom0 deve executar um kernel compatível com o Xen.

xen.png .Retirado de: http://wiki.org/wiki/File:Xen_Arch_Diagram.

• DomU significa: Unprivileged Domain • Não existe privilégio para acesso direto ao hardware ou ao subsistema de E/S. também conhecidas como guests são chamadas de DomU. .• Máquinas virtuais hospedadas.

• O DomU pode ser tanto paravirtualizado (PV) como completamente virtualizado (HVM). • É possivel paravirtualizar alguns componentes completamente virtualizados. para otimização de performance. .

PV & HVM

Guests HVM tendem a ter performance
inferior a guests PV.

HVM precisa emular diversas partes do
hardware: BIOS, SCSI, VGA, Ethernet.

HVM utiliza extensões de virtualização
de CPU, como Intel VT-x e AMD-V.

Guests PV executam em performance
próxima a nativa.

Device drivers não são emulados mas
sim implementados para comunicar de
forma eficiente com o Hypervisor.

PVHVM

.• Merge o melhor de ambos as técnicas. • Extensões de virtualização VT-x ou AMD-V juntamente de drivers de dispositivos paravirtualizados.

Como é possível? .

sabem que um dado dispositivo é virtual. que por sua vez podem ser instalados. .• Não há modificações no sistema operacional. • Mas os drivers.

.

.

org/wiki/Virtualization_Spectrum .xen.Retirado de: http://wiki.

org/wiki/Virtualization_Spectrum .Retirado de: http://wiki.xen.

• Extensões de virtualização da CPU (Intel VT-x ou AMD-V). • Extensões de virtualização de acesso ao MMU (Intel VT-d ou IOMMU). . • Drivers Paravirtualizados.

• Extensões de virtualização da CPU (Intel VT-x ou AMD-V). • Extensões de virtualização de acesso ao MMU (Intel VT-d ou IOMMU). #BETA . • Drivers Paravirtualizados.

Toolstack .

• Ferramentas para auxiliar no controle do Hypervisor. .

png .Retirado de: http://wiki.org/wiki/File:ToolStacks.xen.

Retirado de: http://wiki.org/wiki/File:ToolStacks.png .xen.

png .Retirado de: http://downloads.org/Branding/Images/Mascot/Xen-Fu-Panda-500px.xen.

com/products/xenserver/overview.citrix.Retirado de: http://www.html .

• "Distribuição" do Xen. • CentOS Linux modificado como Dom0. . • XenCenter como interface gráfica. • Toolstack XAPI.

• Ferramentas enterprise para consolidação de servidores: • Alta disponibilidade • Suporte a storage compartilhado • Monitoramento de performance .

• Ferramentas enterprise para consolidação de servidores: • Controle de usuários • Switch virtual • Gerenciamento em cluster .

Arquitetura .

Arquitetura Retirado de: http://www.net/xen_com_mgr/xpus13-pavlicek .slideshare.

net/xen_com_mgr/xpus13-pavlicek .slideshare.Arquitetura Retirado de: http://www.

Arquitetura Retirado de: http://www.slideshare.net/xen_com_mgr/xpus13-pavlicek .

XenCenter .

.

Aquela ferramenta que você sempre quis ter no seu Hypervisor famoso… .

. por causa da sua licença que não incluía esta função.…mas que você nunca chegou a ver ou testar.

.

. e etc. high availability. network.• Controle total de toda a infraestrutura. • Visão do que está acontecendo em tempo real. • Gerenciamento de storage.

Overview .

.

.

.

.

Controle do DomU .

.

.

.

.

.

Gerência do Storage .

• Storage é definido como SR (Storage Repository) e podem ser: • Local disk storage (LVM) • • Única forma de storage local. NFS Repository (VHDs) .

. FC. Hardware iSCSI.• Storage é definido como SR (Storage Repository) e podem ser: • Software iSCSI (LVMoiSCSI). • HBA. External SAS (LVMoHBA).

Arquitetura do Sistema de Storage .

Retirado de: Citrix XenServer 6.0 Administrator's Guide .2.

. • Interliga do host ao SR.• PBD: Physical Block Device • Este dispositivo é apresentado ao host de forma física.

Retirado de: Citrix XenServer 6.2.0 Administrator's Guide .

• VDI: Virtual Disk Images • Representação do disco físico dentro do SR. . • Apresentados para uma dada VM através do VBD.

0 Administrator's Guide .2.Retirado de: Citrix XenServer 6.

conectores.• VBD: Virtual Block Device • Objeto de mapeamento. • Interligam o VDI a uma dada VM. .

Formato do Disco Virtual .

. • Aperfeiçoado pela Microsoft.• VHD (Virtual Hard Disk). • Criado pela Connectix.

• • Problema sério: • Limitação de ~2TiB (2040GiB). • 8GiB Overhead. . Solução prevista com VHDX (64TiB).

Configurando o SR .

.

.

.

.

.

.

.

.

Criando VM's .

• Diferentes templates para paravirtualização: • Distribuições de Linux. • Alguns tipos de BSD. .• Templates auxiliam na criação de VM’s.

• Até o último Windows Server 2012 R2.• Vários templates para diversas versões do Microsoft Windows: • Desde o bom e velho Windows 2000. .

• Snapshots podem ser usados como templates! • Provisionamento imediato de sistemas semelhantes! .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Recapitulando os tipos de Virtualização .

xen.org/wiki/Virtualization_Spectrum .Retirado de: http://wiki.

Retirado de: http://wiki.org/wiki/Virtualization_Spectrum .xen.

Retirado de: http://wiki.org/wiki/Virtualization_Spectrum .xen.

org/wiki/Virtualization_Spectrum .Retirado de: http://wiki.xen.

Instalação do XenServer 6.2 .

.

.

.

.

.

.

.

.

.

.

Futuro do XenServer .

html .xenserver.Retirado de: http://www.org/overview-xenserver-open-source-virtualization/project-roadmap.

Retirado de: http://www.html .xenserver.org/overview-xenserver-open-source-virtualization/project-roadmap.

Retirado de: http://www.xenserver.org/overview-xenserver-open-source-virtualization/project-roadmap.html

Retirado de: http://www.xenserver.org/overview-xenserver-open-source-virtualization/project-roadmap.html

Mantido completamente de forma
aberta.

Espera-se desenvolvimento rápido de
novas funções pela comunidade.

Explosão de ferramentas para auxílio,
gerênciamento e controle.

.

Caso de sucesso! .

.

Tecnologias .

Tecnologias .

• 4x XenServer 6.2 • 32x Intel Xeon E5506 2.13GHz • 192GB RAM • 2 Gigabit iSCSI Network .

• 4x XenServer 6.2 • 32x Intel Xeon E5506 2.13GHz • 192GB RAM • 2 Gigabit iSCSI Network .

• Storage Repository • 12x Xeon E5-2620v2 • 128GB RAM • 24x 3TB NL-SAS • 2 Gigabit iSCSI .

• FreeBSD 9 • ZFS v28 • 16GB SSD Sync Write Offload • 200GB SSD Read Cache .

• FreeBSD 9 • ZFS v28 • 16GB SSD Sync Write Offload • 200GB SSD Read Cache .

• 10U Rackspace • 4U XenServers • 4U Storage • 1U iSCSI Switch • 1U Network Switch .

Mais uma coisa… .

.

.

.

.

.

XAPI Toolstack .

.

.

.

.

.

Linux Binutils .

.

.

.

Shell Scripting .

.

.

Demo? .

Obrigado! .

ferrao.br @viniciusferrao .eti.Obrigado! ! vinicius@ferrao.eti.br www.