Pequena cartilha sobre OpenStack para executivos de TI

O OpenStack é uma plataforma de computação em nuvem de código aberto. Projetada como um ambiente de Infraestrutura como Serviço (IaaS), busca produzir uma plataforma onipresente de computação em nuvem de código aberto para nuvens privadas e públicas. O OpenStack é também um fenômeno da indústria da computação, à medida que mais de 200 empresas de software, hardware e serviços estão envolvidas com a plataforma.

Surgiu a partir da iniciativa conjunta da Rackspace Hosting e da NASA na metade de 2010, com o objetivo primário de permitir que as organizações oferecessem (ou consumissem) serviços de computação em nuvem que funcionassem em elementos de hardware padrão. O código inicial era uma combinação da plataforma de computação em nuvem Nebula, da NASA, e da plataforma Cloud Files, da Rackspace.

Desde a metade de 2010, o projeto manteve um ciclo regular de lançamento de seis meses e uma agenda detalhada de metas de lançamento, orquestradas através de uma reunião de planejamento semianual chamada de OpenStack Design Summit (Cúpula de Projeto OpenStack). A reunião mais recente aconteceu em Hong Kong, envolvendo mais de 3 mil participantes.

O OpenStack recebeu um grande estímulo em 2011 quando os criadores da distribuição Linux Ubuntu adotaram o OpenStack como parte da arquitetura de seu sistema. Desde então, outros atuantes da área Linux — incluindo a Red Hat (que oferece uma distribuição específica do OpenStack) e o Debian (através de sua distribuição Sid) — seguiram o exemplo com distribuições próprias do OpenStack.

Conhecendo a arquitetura do OpenStack

O diagrama da arquitetura do OpenStack (abaixo) representa os principais blocos de construção de seus componentes. Camadas relacionadas a aplicações e administração de acesso estão no topo da pilha, com os elementos padrões de recursos para computação, redes e armazenamento vindo imediatamente abaixo deles. Tudo repousa sobre os serviços compartilhados e, no fim, em plataformas padrão específicas de hardware de código livre. Os compradores não precisam se sentir fortemente ligados a um servidor proprietário particular, aplicação ou componente de hardware de rede.

Ken Pepple, CTO da Solinea, descreve a arquitetura OpenStack como sendo composta de vários subprojetos:

• O Swift fornece objetos ou blob storage para dados, conteúdo e outros materiais. Isto se origina dos RackSpace Cloud Files e é mais ou menos análogo ao Amazon Simple Storage Service (S3) dentro de seu ambiente its Amazon Web Services. O Swift é traçado até o item de Armazenamento na Figura 1.

• O Glance fornece um meio de descobrir, armazenar e recuperar máquinas virtuais para o OpenStack Nova (veja abaixo). O Glance é traçado até os elementos do painel de controle, cálculo, rede e itens de armazenamento na Figura 1.

• O Nova fornece servidores virtuais sob demanda, como os Rackspace Cloud Servers ou a Amazon Elastic Compute Cloud no ambiente AWS. O Nova é traçado até o elemento de computação na Figura 1.

• O Heat fornece a organização para o lançamento dos modelos OpenStack. Eles incluem servidores e definições de serviço para, digamos, uma página com múltiplos servidores do WordPress configurada com elementos de front-end/web ou de bases de dados.

• O Horizon fornece um painel de controle e mecanismos de controle para a administração de modelos OpenStack, instâncias, recursos e para monitoramento de estado, eventos e capacidades de solução de problemas.

O blog de Pepple fornece um bom diagrama sobre como esses subsistemas se combinam para criar uma implementação OpenStack funcional:

mat-23-01-2014-04.jpg

Nela o Swift fornece uma reserva de imagens para os VMs no centro, o Glance fornece a capacidade de interagir com o ambiente OpenStack e o Horizon fornece o painel de controle.

O processamento contínuo e os serviços de tempo de execução vêm do Nova, enquanto o Horizon ajuda a guiar os painéis de controle e a monitorar as instalações para o OpenStack no tempo de execução.

A flexibilidade do OpenStack pode ser uma benção — ou uma maldição

Com o suporte vasto e de longo alcance da indústria nos níveis de hardware, software e serviço, o OpenStack possibilita que as empresas criem ambientes de nuvem próprios, seja de modo privado, em suas próprias infraestruturas de computação, ou público, através de fornecedores de serviço de todos os tamanhos e classes.

O movimento OpenStack ajuda a manter a nuvem aberta enquanto mantém os custos de computação baixos e garante que tanto os fornecedores quanto os clientes dos serviços de nuvem possam criar e utilizar ambientes altamente personalizados, sem perder sua habilidade de intercalar fornecedores de nuvem à medida que as necessidades, preços ou condições de mercado em mutação assim exijam.

O ambiente OpenStack fornece um contêiner flexível dentro do qual se pode criar ambientes de computação em nuvem. Isto serve tanto como uma benção quanto como uma maldição – ou pró e contra, caso você prefira – pois significa que trabalhar com o OpenStack envolve uma mentalidade do “faça você mesmo” para reconhecer e remediar características e funções que não existem ou que não estão tão perfeitas. Trabalhar com o OpenStack exige um considerável investimento de tempo e esforço, mas ele oferece retornos dramáticos em troca desta diligência.

Implementadores muitas vezes falam sobre problemas encontrados acima ou abaixo do ambiente OpenStack, conforme descrito em um relatório de usuários da Cúpula OpenStack 2013, realizada em abril, em Portland, Oregon. Um representante da Bloomberg indicou que os problemas tinham origem a partir da necessidade da empresa de configurar bases de dados altamente disponíveis (abaixo da pilha), junto de uma agregação confiável de registros e monitoramento de métricas (acima da pilha) para criar um ambiente OpenStack completamente robusto para a troca de informações.

Os desenvolvedores do OpenStack devem reconhecer que devem solucionar problemas complexos e complicados por sua conta. Na mesma Cúpula OpenStack, um representante da Samsung disse que, em seus primeiros dias, o OpenStack é “complexo e inclinado a erros”. Do mesmo modo, a atualização entre os lançamentos pode ser desafiadora e pode envolver a recriação e uma nova projeção dos elementos que compõem o OpenStack nas implementações em funcionamento.

Os compromissos OpenStack podem produzir economias e vantagens competitivas

Algo a ser tirado das análises dos usuários e dos comentários dos desenvolvedores é que certa quantia de “sofrimento” é necessária para se aprofundar no OpenStack. As organizações devem estar preparadas para dedicarem talentos reais de programação e arquitetos sênior para qualquer esforço relacionado ao OpenStack, e devem estar preparadas para passar até dois anos trabalhando no “modo de produção” até conseguirem qualquer implementação funcional.

Empresas relatam terem gasto 20 mil dólares anualmente, em média, para administrar VMs de servidores neste ambiente, e 500 mil dólares por lançamento de versão do OpenStack para o controle de qualidade, personalização e correções e melhorias necessárias. Mas essas mesmas organizações podem conseguir economias substanciais em hardware – um popular servidor/rack de rede custa em média 91 mil dólares, muito menos do que as alternativas proprietárias – e a habilidade de elevar e administrar grandes coleções de servidores virtuais sob demanda conforme necessário.

Contanto que a administração compreenda que um investimento de longo prazo em recursos financeiros e tempo dos funcionários é necessário para se obter uma implementação funcional do OpenStack, e para mantê-la funcionando, as organizações podem se beneficiar muito do aprofundamento no OpenStack.
link: TI Rio