terça-feira, 18 de novembro de 2014

VMware + Openstack

                 

A cada dia que passa tenho escutado mais e mais sobre Openstack, e sobre qual seria a sua relação com a VMware. É comum associar ambos como produtos concorrentes e assumir que se deve escolher entre um ou outro. Mas na verdade não é bem assim. Podemos sim escolher entre o Openstack e um produto VMware (neste caso vCloud Director ou vCAC), assim como também podemos optar em usar o Openstack em conjunto com o vSphere ESXi/vCenter. Para “clarear” o que estou dizendo, vou tentar explicar mais ou menos o que é esse tal de Openstack e como a VMware tem se mostrado interessada em também estar presente numa infraestrutura baseada no Openstack.

O que é o Openstack??

O Openstack é um projeto open source cujo objetivo é possibilitar que qualquer organização seja capaz de construir uma nuvem pública ou privada através de uma plataforma de gerenciamento de nuvem. Também pode ser considerado um sistema operacional para nuvem pois possibilita o gerenciamento em larga escala de todos os componentes de uma infraestrutura (computação, armazenamento, rede, etc...), assim como o SO tradicional gerencia os componentes de uma única máquina. O Openstack é voltado para a oferta de IAAS (Infraestrutura As A Service). 
  

O Openstack surgiu em 2010 de uma parceria entre a NASA e a Rackspace, cada uma trouxe um módulo da solução. A NASA era a responsável pelo módulo de processamento, cujo o nome do projeto é Nova. A Rackspace trouxe consigo o módulo de armazenamento de objetos, conhecido como Swift. Em 2012, surgiu a Openstack Foundation, uma organização sem fins lucrativos que passou a ser a responsável por promover o desenvolvimento, distribuição e adoção do Openstack. A organização já conta com mais de 9.500 membros de 100 países diferentes, e possui em seu conselho administrativo, executivos de grandes empresas do cenário mundial (Cisco, HP, IBM, Red Hat, Intel, Dell e etc...).

Veja aqui toda a linha do tempo do Openstack.

O Openstack é uma plataforma modular, composta por vários projetos independentes (também conhecidos como serviços), que podem ser implementados em conjunto ou separadamente. Atualmente os seguintes serviços estão disponíveis no Openstack:

- Compute (Nova)
- Networking (Neutron)
- Object Storage (Swift)
- Block Storage (Cinder)
- Dashboard (Horizon)
- Identity Service (Keystone)
- Image Service (Glance)
- Telemetry Service (Ceilometer)
- Orchestration Service (Heat)
- Database Service (Trove)

Não vou entrar em detalhes sobre cada um desses projetos, mas aqueles que tiverem interesse em conhecer mais sobre, é só clicar aqui

O diagrama abaixo mostra como cada um desses serviços se relacionam:


E a VMware, aonde entra nisso aí?

Como disse anteriormente, o Openstack é uma plataforma para gerenciamento da nuvem, mas não substitui a infraestrutura que deve existir para suportar essa nuvem. Ou seja, o módulo de processamento, por exemplo, não consiste de um hypervisor. Na verdade ele se conecta através de drivers a diversos hypervisors existentes atualmente (KVM, XenServer, Hyper-V, VMware e outros), além de servidores físicos (bare-metal). É comum achar que o Openstack é implementado apenas em cima de uma infraestrutura baseada no KVM (sem dúvida nenhuma a grande maioria das instalações de Openstack existentes foram feitas sob o KVM) mas é justamente essa mentalidade que a VMware vem tentando mudar.

Nada impede que uma organização, que já possua uma infraestrutura toda baseada em cima de VMware, inicie uma implantação do Openstack utilizando o ESXi/vCenter para fornecer os recursos de processamento para o módulo Compute (Nova). E posteriormente, se achar melhor, ir adicionando um outro hypervisor por baixo do Nova, uma vez que essa é uma configuração suportada no Openstack.

Atualmente a VMware já fornece para a comunidade Openstack drivers para os módulos Nova e Cinder. E vem trabalhando para ofecer outros drivers futuramente, como por exemplo, um driver para utilizar o VMware NSX em conjunto com o módulo de networking Neutron.


E os esforços da VMware não param por aí!! Na VMworld deste ano, foi anunciado e disponibilizado (ainda em versão beta) uma distribuição Openstack desenvolvida pela própria VMware, chamada de VMware Integrated Openstack. A VIO (como também é conhecida) é uma solução que visa facilitar o deploy e o gerenciamento do Openstack. 

Fazer uma instalação do Openstack, integrando diversos componentes, não é uma tarefa fácil e pode consumir bastante tempo. Essa solução da VMware se propõe a fornecer uma instalação, pronta para ser colocada em produção, de maneira rápida e simples, em cima de uma infraestrutura VMware.


Além da solução VIO (voltada para ambientes de produção e ainda em versão beta), a VMware também oferece, para aqueles que desejam ter um primeiro contato com o Openstack, ou para testes e POCs, um appliance virtual chamado VOVA (vSphere Openstack Virtual Appliance). O VOVA nada mais é do que uma instalação do Ubuntu com os principais serviços do Openstack (Nova, Glance, Cinder, Keystone, e Horizon) já configurados e disponibilizado no formato OVF. Os interessados podem fazer o download aqui.

Segue abaixo alguns links para quem tiver interesse em saber mais sobre o assunto: