25
Kleber José da Silva Professor da Faculdade Sumaré Mestre em Redes de Computadores [email protected] 12ª edição – ano 2015 ANÁLISE COMPARATIVA DE DESEMPENHO DE FILESYSTEMS EM AMBIENTES VIRTUALIZADOS ISSN 2175-9227

Revista modelo

Embed Size (px)

DESCRIPTION

 

Citation preview

19

RESUMO: Neste artigo ser apresentada uma comparao entre filesystems em ambientes virtualizados. Os objetivos so avaliar seus resultados de desempenho na mquina virtual, a utilizao de recursos de storage e caractersticas de provisionamento e backup em fita, para auxiliar na melhor escolha para uma implementao de consolidao de servidores e ambientes de computao em nuvem. PALAVRAS-CHAVE: Filesystems, Virtualizao, Desempenho, Mquinas Virtuais.

INTRODUO A consolidao de servidores em um ambiente virtualizado uma soluo que qualquer empresa, mesmo de pequeno porte, tem buscado implementar. As mdias e grandes organizaes possuem ambientes enormes e crescendo, vertiginosamente, com a adoo de virtualizao no somente de servidores, mas tambm de desktops, e algumas partindo para a incluso de uma camada de computao em nvem sobre a infraestrutura de virtualizao. Uma parte importante dessa infraestrutura est relacionada arquitetura do armazenamento dos dados: mais de um filesystem e protocolos de Storages esto disponveis para o arquiteto de soluo escolher durante o planejamento da implementao. Neste artigo ser apresentado um experimento de comparao de desempenho e outras caractersticas dos filesystems nesse tipo de ambiente. CONTEXTO Para que um sistema computacional seja virtualizado, necessrio um componente de gerenciamento, denominado Virtual Machine Monitor (VMM) ou hypervisor, que consiste de uma camada de software que prov uma interface entre os recursos reais e as mquinas virtuais, fornecendo uma abstrao dos recursos computacionais para elas. O hypervisor virtualiza a Central Processing Unit (CPU), o sistema de gerenciamento de memria e o sistema de entrada/sada (E/S). Dentre os componentes de hardware virtualizados (CPU, memria e E/S) como pode ser visto na Figura 1, o que gera maior sobrecarga, so operaes de (E/S), sendo que uma requisio deve ser tratada por mltiplas camadas de protocolos existentes entre o espao de usurio e o hardware do sistema [ROSE04].

Figura 1 Estrutura de mquinas virtuais. Fonte: [ROSE04] Para o experimento deste artigo o hypervisor vSphere da empresa VMware foi escolhido por se tratar da maior base instalada, atualmente, nas organizaes. FUNDAMENTAO TERICA Filesystems Os filesystems so responsveis pela organizao, armazenamento, recuperao, atribuio de nomes, compartilhamento e proteo de arquivos [COUL05]. Eles fornecem uma interface de programao que caracteriza a abstrao de arquivo, liberando os usurios da preocupao com os detalhes da alocao e do armazenamento fsico no disco [TANE02]; [COUL05]. Os sistemas de arquivos so projetados para armazenar e gerenciar um grande nmero de arquivos, com recursos para criao, atribuio de nomes e excluso de arquivos [TANE02]. Os sistemas de arquivos assumem a responsabilidade pelo controle de acesso aos arquivos, restringindo o acesso de acordo com as autorizaes dos usurios e com o tipo de acesso solicitado (leitura, atualizao, execuo etc.) [COUL05]. O hypervisor vSphere da VMware, na sua ltima verso 5, possibilita a criao de unidades de discos virtuais para as mquinas virtuais por pelo menos quatro maneiras diferentes, sendo a maioria delas utilizando DataStores que so as reas disponibilizadas pelos Storage. Neste artigo sero testados quatro tipos de discos em uma mquina virtual Windows 2008: a) Disco criado em um DataStore Virtual Machine File System version 3 (VMFS3); b) Disco criado em um DataStore Virtual Machine File System version 5 (VMFS5); c) Disco criado em um rea no Storage mapeado, diretamente, para a mquina virtual, ou seja, no esquema Raw Device Mapping (RDM), sendo a formatao em New Technology File System (NTFS); d) Disco criado em um DataStore Network File System (NFS). VMFS3 e VMFS5 Os DataStores VMFS so reas disponibilizadas no Storage para os hypervisors vSphere por meio do protocolo Fibre Channel Protocol (FCP) em uma infraestrutura Storage Area Network Fibre Channel ou Internet Small Computer System Interface (SAN FC ou iSCSI) por uma infraestrutura SAN IP. Uma viso mais simples dessa arquitetura pode ser visualizada na figura 2.

Figura 2 Arquitetura de Storage para Datastores VMFS. Fonte: [VMWA07] O arquivo .vmdk a unidade de disco apresentada para a mquina virtual. O Filesystem VMFS3 foi lanada na verso 3 do hypervisor da VMware e introduziu a estrutura de diretrios. O VMFS5 foi iniciado com a verso 5 do vSphere e dentre outras funcionalidades permite a criao de Datastores maiores que 2TBytes. RDM - NTFS O vSphere possibilita a apresentao da rea do storage, diretamente, para a mquina virtual com sua funcionalidade RDM, conforme visto na figura 3.

Figura 3 Arquitetura de Storage para RDM. Fonte: [VMWA07] Neste caso no criado o arquivo .vmdk, pois a formatao da Logical Unit Number (LUN) no storage feita pela mquina virtual, por exemplo NTFS no Windows. Essa arquitetura recomendada pela VMware para algumas aplicaes de cluster ou para utilizao de snapshots no prprio storage [VMWA07]. NFS Os DataStores NFS so reas disponibilizadas no Storage para os hypervisors vSphere por meio do protocolo NFS utilizando uma infraestrutura TCP/IP.

Figura 4 Arquitetura de Storage para Datastores NFS. Fonte: [VMWA07] A verso do protocolo NFS suportada pela VMware a verso 3, especificada na RFC 1813 [CALL95]. TRABALHOS RELACIONADOS Alguns artigos foram escritos com o propsito de avaliar os filesystems disponveis, como o da prpria VMware intitulado Performance Characteristics of VMFS and RDM [VMWA07] que explorou os filesystems VMFS3 e RDM, aplicando variaes na ferramenta de simulao de carga e tamanho de blocos. Para acessos randmicos ambos produziram vazo similar, e para acessos sequenciais o disco em RDM apresentaram resultados melhores que VMFS3. Esse presente trabalho se diferencia do artigo da VMware por compreender a comparao de desempenho dos filesystems VMFS5 e NFS, alm de VMFS3 e RDM - NTFS. Ele pretende analisar o resultado de desempenho dos quatro filesystems aps vrias execues e no somente a primeira, a fim de verificar seus comportamentos mediante fragmentao a que so submetidos nos testes. Outra complementao a anlise de outras caractersticas dos filesystems como provisionamento e backup. ESPECIFICAO DO EXPERIMENTO Todas as execues dos testes foram realizadas em uma nica topologia mostrada figura 5, sendo que essa arquitetura permitiu a disponibilizao dos quatro filesystems testados na mesma mquina virtual e na mesma infraestrutura, sendo assim possvel a comparao entre eles.

Figura 5 Topologia do Experimento. Fonte: elaborado pelo autor A topologia apresentada composta por dois servidores fsicos HP Proliant DL360G5 como hypervisors, com sistema operacional VMware vSphere 5, identificados na topologia como ESX1 e ESX2. Esses servidores tm conectividade TCP/IP com o Storage por meio de portas Gigabit Ethernet. O Storage do fabricante NetApp modelo FAS2040, identificado na topologia como FAS01, com sistema operacional proprietrio Data ONTAP 8.1. Sua configurao de discos foi disponibilizada em Redundant Array of Independent Disks (RAID 4) formada por sete discos de dados e um de paridade (7D + 1P), do tipo Serial Attached SCSI (SAS) de 15.000 Rotations Per Minute (RPM). A mquina virtual utilizada no experimento um Windows 2008 R2 64 bits com 2 vCPU e 1 GB de memria RAM, identificada na topologia como W2K8R2SVR. No storage foram criadas trs LUNs e disponibilizadas para os servidores vSphere via iSCSI. Um volume NFS tambm criado no Storage e mapeado para os servidores. No gerenciador do hypervisor VMware Virtual Center foram criados 3 datastores (VMFS3, VMFS5 e NFS) e adicionados quatro discos na mquina virtual Windows, sendo uma LUN em RDM. A cada disco foi atribudo um identificador (label) com seu respectivo nome de datastore ou RDM e na mquina virtual foram criadas parties iguais de 10GBytes cada e formatadas com NTFS. SIMULAO DA CARGA DE ACESSO Por se tratar de um experimento em laboratrio e no um estudo de caso em ambiente real, a carga de produo foi simulada pela ferramenta IoMeter [OSDL04]. Esse software foi instalado na mquina virtual Windows 2008 com o propsito de gerar cargas de acesso nos discos locais disponibilizados pelo hypervisor vSphere. A ferramenta permite a simulao do perfil de acesso por meio de ajustes de relao leitura x escrita, tamanho dos blocos transferidos, nmero de threads simultneos e relao de acesso randmico x sequencial. Com o intuito de delimitar as combinaes possveis, todas as simulaes foram executadas utilizando configuraes fixas: relao 75% leitura x 25% escrita, 40% randmico x 60% sequencial, usando 16 threads (# of outstanding I/O), tamanho de arquivo em 32Kbytes, I/O alinhado em blocos de 4Kbytes (o mesmo do Storage Netapp). A figura 6 apresenta a especificao do acesso configurado na ferramenta.

Figura 6 Especificao do acesso no IoMeter.Os testes foram executados com o ambiente de laboratrio dedicado, dessa forma, o resultado no foi influenciado por outros acessos externos. Os demais recursos no citados nos resultados como memria e CPU dos servidores VMware e memria da mquina virtual Windows foram monitorados apenas para identificar eventuais gargalos. Como nenhum ponto foi observado nesses elementos, ento, somente o resultado dos principais recursos desejados foi coletado e apresentado, graficamente, conforme identificados a seguir. RESULTADOS Cada teste foi executado por trs vezes e a mdia dos resultados seguintes foi coletada a partir da ferramenta IoMeter na mquina virtual Windows e da ferramenta nativa sysstat no Storage, conforme valores exemplos e explicaes seguintes: Servidor Windows IOPs Vazo (MB/s) Tempo de Resposta (ms) Util. CPU

1865 58MB/s 8.5ms 4%

Tabela 1 Exemplo de resultados obtidos das execues mquina virtual Windows. Storage Netapp Util. CPU Operaes/Seg Util. Disco

58% 2.230 84%

Tabela 2 Exemplo de resultados obtidos das execues Storage Netapp. IOPs: operaes de entrada e sada por segundo no Servidor; Vazo: taxa de transferncia efetiva de dados, leitura e/ou escrita, expressa em Mega Bytes por Segundo (em Ingls: throughput); Tempo de resposta: frao mdia de tempo gasta por uma solicitao de acesso feita pelo servidor retornar com a resposta requerida, expressa em milisegundos (ms); Utilizao da CPU: porcentagem mdia do tempo que a CPU do Servidor ou Storage est ocupada durante a execuo do teste; Operaes por segundo: quantidade de operaes iSCSI ou NFS executadas no Storage por segundo; Utilizao de Disco: porcentagem mdia do tempo que os discos do sistema de armazenamento esto ocupados. ANLISE COMPARATIVA DOS GRFICOS DE DESEMPENHO Nesta seo sero apresentados e analisados os sete grficos com os valores coletados durante as quatro execues dos testes, para os quatro filesystems: VMFS3, VMFS5, RDM - NTFS e NFS. A primeira execuo inclui um processo de preparao dos discos feito pela ferramenta IoMeter antes da execuo inicial e devido a esse comportamento diferente, o resultado tambm foi diferente em relao s execues subsequentes. Esse desvio justificado pela fragmentao dos filesystems a partir da segunda execuo. IOPs (Servidor) Na primeira execuo, os resultados de IOPs no servidor para os filesystems VMFS3 e 5 apresentaram resultados, ligeiramente, melhores que NFS e esse, por sua vez, um pouco melhor que RDM. A partir da segunda execuo, os resultados do NFS foram melhores que os de ambos VMFS, concluindo assim que o disco criado no datastore NFS apresenta melhores ndice de fragmentao em relao aos demais. Dados coletados do IoMeter no servidor Windows: 1000120014001600180020001a Exec.+ Prep2a Exec.3a Exec.4a Exec.IOPs ServidorExecuo dos TestesVMFS3VMFS5

Figura 7 Grfico de desempenho de IOPs no servidor. Vazo O prximo grfico de vazo mostra valores proporcionais ao grfico anterior de IOPs no servidor, conforme esperado, ou seja, valores muitos prximos na primeira execuo para os quatros filesystems, na faixa de 58 MegaBytes/s e a partir da terceira execuo o disco em NFS apresenta uma melhoria de cerca de 1 MegaByte/s em relao aos demais. Dados coletados do IoMeter no servidor Windows: (75% leitura x 25% escrita). 2530354045505560a Exec.1+ Prep2a Exec.3a Exec.4a Exec.Vazo (MB/s)Execuo dos TestesVMFS3VMFS5

Figura 8 Grfico de desempenho de Vazo. Tempo de Resposta Os resultados de tempo de resposta tambm so proporcionais aos dois primeiro grficos, como era de se esperar. Para situaes de maior nmero de IOPs e vazo, o tempo de resposta menor. Dados coletados do IoMeter no servidor Windows: 68101214161a Exec.+ Prep2a Exec.3a Exec.4a Exec.Tempo de Resposta ()msExecuo dos TestesVMFS3VMFS5

Figura 9 Grfico de desempenho de tempo de resposta. Utilizao de CPU do Servidor Na primeira execuo, o VMFS3 gerou uma maior utilizao de CPU do servidor virtual, mas reduziu esse nmero a partir da segunda execuo. Na quarta execuo o NFS apresenta um valor um pouco maior, porm devido vazo atingida ter sido maior tambm. Dados coletados do IoMeter no servidor Windows: 252,33,545,41a Exec. Prep+2a Exec.3a Exec.4a Exec.Utilizao de CPU do Servidor (%)Execuo dos TestesVMFS3VMFS5

Figura 10 Grfico de utilizao de CPU do servidor. Utilizao de CPU do Storage Para todas as execues, os filesystems VMFS3, 5 e RDM geraram uma utilizao parecida de CPU no Storage, apenas o NFS gerou um ou dois pontos porcentuais para todas as execues, justificada pela caracterstica diferenciada de manipulao dos dados em NAS e em SAN. Dados coletados pelo sysstat no Storage: 25303540451a Exec.+ Prep2a Exec.3a Exec.4a Exec.Utilizao de CPU do Storage (%)Execuo dos TestesVMFS3VMFS5

Figura 11 Grfico de utilizao de CPU do storage. Operaes por segundo no Storage A quantidade de operaes dos respectivos protocolos no Storage, iSCSI para os trs primeiros filesystems e NFS para o ltimo, so proporcionais aos IOPs e a vazo gerados pelo servidor, ou seja, o NFS produziu mais operaes no storage a partir da segunda execuo pois tambm havia apresentado melhores resultados de IOPs e vazo no servidor. Dados coletados pelo sysstat no Storage. 1000120014001600180020001a Exec.+ Prep2a Exec.3a Exec.4a Exec.Operaes no StorageExecuo dos TestesVMFS3VMFS5

Figura 12 Grfico de operaes no storage. Utilizao de discos do Storage A utilizao de discos no Storage foi um pouco menor para o VMFS3 na primeira execuo, e nas demais os resultados ficaram parecidos. Uma vez que a vazo do NFS foi mais alta pelos grficos anteriores, ele deveria ter apresentado maior utilizao de disco, mas acabou sendo igual aos demais e com isso apresentando um comportamento otimizado. Para todos os casos, a cada execuo nota-se um aumento excessivo da utilizao de disco no storage mediante a incidncia de fragmentao no filesystem no servidor. Dados coletados pelo sysstat no Storage: 82848688909294961a Exec.+ Prep2a Exec.3a Exec.4a Exec.Utilizao de Disco no Storage(%)Execuo dos TestesVMFS3VMFS5

Figura 13 Grfico de utilizao de disco no storage. ANLISE COMPARATIVA DAS DEMAIS CARACTERSTICAS DOS FILESYSTEMS Outras caractersticas dos filesystems, alm do desempenho, so importantes para a tomada de deciso na escolha entre eles para uma implementao: Provisionamento: Para comparar o comportamento de provisionamento de espao entre os quatro filesystems, foram analisados dois procedimentos: criao e deleo dos discos para a mquina virtual. Na criao, verifica-se que todos os quatro filesystems suportam o provisionamento fino (thin provisioning) que usa o espao no storage somente aps a gravao de dados no servidor. Uma desvantagem verificada no experimento para os discos criados nos Datastores VMFS3 e 5 em relao RDM e NFS est na pequena perda de espao para a formatao do filesystem VMFS, que no ocorre no NTFS direto em RDM ou em um datastore NFS. No processo de deleo, aps a execuo dos testes, os discos foram removidos da mquina virtual e apagados do DataStore no VMware vSphere. Nesse caso observam-se comportamentos diferentes: a) Para VMFS3, VMFS5 e RDM, devido a caractersticas de SAN, ou seja das LUNs iSCSI, o storage no capaz de identificar os blocos alterados pois os filesystems VMFS ou NTFS informam ao Storage que os blocos no so mais virgens e com isso no h liberao de espao, imediatamente. A liberao de blocos no Storage s ocorreria aps um processo de reclamao de blocos no servidor (block reclamation), ou na criao de novos discos por cima daquele espao disponvel. b) Para o datastore NFS o espao , imediatamente, liberado do volume no Storage, caracterstica nativa de volumes NAS. Por esse quesito de provisionamento de datastores NFS apresentou melhor comportamento que VMFS e RDM (NTFS). Backup em fita Um dos grandes vieses da consolidao de servidores em um ambiente virtualizado est no backup para fita (tape). Em ambientes com servidores fsicos, a capacidade de processamento considerada desperdiada em horrio comercial, era aproveitada durante a madrugada para fazer o backup dos seus dados em fita, j no conceito de otimizao da utilizao de processamento do hardware de servidores obtida pela virtualizao, o Backup passou a ser uma preocupao mais latente. Nos experimentos deste artigo nenhum teste prtico comparativo de Backup em fita foi realizado para os filesystems, mas na teoria e nos casos prticos conhecidos para VMFS (3 ou 5) e NTFS em RDM o mtodo de backup para fita tem sido o uso de agente de backup, de qualquer fornecedor, instalado na mquina virtual e os dados sendo copiados pela rede ethernet para um servidor fsico responsvel por copiar os dados para unidade de fita (Tape Library). Esse servidor o chamado Media Server que possui conectividade com a unidade de fita, normalmente, por interfaces Fibre Channel. Esse mtodo apresenta algumas deficincias tais como: custo da aquisio de uma licena do agente de backup para cada mquina virtual, gerenciamento de mquinas virtuais novas e que no possuem agente de backup instalado, eventual sobrecarga da rede ethernet da mquina virtual ou do hypervisor durante a janela de backup, etc. A vantagem desse mtodo permitir a restaurao granular de arquivos do filesystem da mquina virtual pela prpria ferramenta de Backup. Para datastores NFS, a arquitetura NAS permite realizar o backup para fita dos dados a partir do Storage utilizando o protocolo Network Data Management Protocol (NDMP) [NDMP]. Nesse caso, normalmente, utilizada a infraestrutura SAN FC em que o Storage esteja conectado, diretamente, a um dispositivo de fita (tape device) e o Backup no consome recursos do servidor hypervisor. Esse mtodo NDMP no exige licenciamento de agente de backup para cada mquina virtual e sim, apenas a aquisio de licena para um agente NDMP instalado no servidor de Backup. O backup pode ser configurado para ser feito de todas as mquinas virtuais presentes no Datastore NFS ou, granularmente, do diretrio da mquina virtual. A restaurao pela ferramenta de Backup tambm pode ser feita de forma granular at o nvel da mquina virtual, mas no de arquivos dentro do filesystem sendo esta uma desvantagem do modelo. Como alternativa, o administrador do ambiente pode disponibilizar (montar) o disco restaurado na mquina virtual como outra unidade e efetuar a cpia dos arquivos especficos de volta para a unidade de produo. TRABALHOS FUTUROS O prximo estgio no estudo da diferena de resultados dos filesystems seria explorar as otimizaes possveis nas configuraes ethernet e avaliar se haver melhorias de desempenho em algum filesystem em relao a outro. Por exemplo: implementar Jumbo Frames em todos os pontos de comunicao para reduzir a sobrecarga de mensagens devido fragmentao, e analisar se h melhor influencia para iSCSI e NFS. Outra sugesto seria utilizar uma comunicao baseada em IPv6 e explorar sua funcionalidade de jumbogramas e comparar a evoluo dos protocolos iSCSI e NFS com a nova verso do IP na camada de rede. Uma funcionalidade adicional do VMware vSphere que no foi avaliada neste artigo e que pode ser explorada nos trabalhos futuros a vStorage APIs for Array integration (VAAI) [VAAI]. Sendo suportada na verso 5 do vSphere para todos os filesystems testados, invariavelmente, os resultados deste artigo foram influenciadas pelo VAAI porm no se sabe o quanto, pois no foram avaliadas. Pode-se explorar tambm a influncia da fragmentao dos filesystems conforme pode ser visto nas execues dos testes subsequentes. Alguns storages possuem comandos para fazer a desfragmentao dos blocos nos discos, como tambm existem ferramentas no prprio servidor a serem analisadas. O alinhamento de blocos do filesystem com o Storage tambm um ponto a ser estudado. Alguns storages trabalham com blocos de 4Kbytes, outros com 512bytes, e isso pode influenciar no nmero de operaes do protocolo gerada no Storage e tambm na vazo e IOPs do servidor, dependendo da configurao adotada pelo filesystem. Por ltimo, esse estudo pode ser estendido a outros hypervisors, como o XenServer da Citrix e HyperV da Microsoft. Alm disso, esse mesmo teste poder ser feito a partir de uma mquina virtual Linux com o Filesystem ext3 ao invs do NTFS do Windows. CONCLUSO Em linhas gerais, os resultados de desempenho do VMFS5 foram um pouco melhores que os demais na primeira execuo e preparao dos discos. A partir da segunda execuo o NFS obteve comportamento melhor, se mostrando um filesystem mais eficiente se submetido fragmentao natural dos testes executados, intensivamente. Porm as diferenas entre eles, em ambos os casos, no chega a ser significativa a ponto de influenciar, totalmente, na escolha. Neste caso, pode-se concluir que as demais caractersticas analisadas, so to importantes quando o desempenho e ao final entrarem em uma somatria de consideraes. Sobre as demais funcionalidades, no provisionamento o NFS apresenta melhor comportamento na liberao de espao aps uma deleo de discos na mquina virtual, caracterstica comum em ambientes de computao em nuvem. No backup em fita, os filesystems VMFS e NTFS - RDM permitem o backup e restaurao granular de arquivos porm com desvantagens de maior custo e maior utilizao de recursos do servidor. O NFS possibilita o backup NDMP direto do Storage para fita, sem onerar o processamento do servidor e com custo de licenciamento inferior, porm no suporta a restaurao granular de arquivos na mquina virtual pela prpria ferramenta de backup, o que deve ser feito pelo administrador, alternativamente. Para uma anlise global somando desempenho, provisionamento e backup em fita, os discos criados em Datastores NFS se mostram como opo mais interessante para uma implementao de ambientes virtualizados. REFERNCIAS BIBLIOGRFICAS [ROSE04], Robert W. Rose; Survey of System Virtualization Techniques. Artigo, USA (2004). [COUL05] George Coulouris et al; Distributed systems: concepts and design, 4. ed. Harlow: Addison Wesley Longman, 927 p (2005). [TANE02] Andrew S. Tanenbaum, Maarten van Steen; Distributed Systems: Principles and Paradigms, New Jersey: Prentice Hall, 803 p (2002). [VMWA07] VMware Inc; Performance Characteristics of VMFS and RDM. Artigo, USA (2007). [CALL95] B. Callaghan et al; NFS version 3 Protocol Specification, RFC 1813, USA (1995). [OSDL04] Open Source Development Lab; Iometer project, www.iometer.org (2004). [NDMP] Network Data Management Protocol; The NDMP Initiative, www.ndmp.org. [VAAI] VAAI - vSphere Storage APIs for Array Integration, http://www.vmware.com/products/vstorage-apis-for-array-integration/overview.html.

Revista Acadmica Eletrnica Sumar 12 edio - ano 2015