Com o surgimento da computação em nuvem (cloud computing, do inglês), diversas inovações derivadas desta tecnologia vêm se expandindo para o mundo dos negócios. De alguns anos para cá uma delas começou a ganhar destaque: o OpenStack.
Basicamente, o OpenStack é uma plataforma de cloud que permite a criação de ambientes de nuvem pública e privada. Para cumprir com este propósito, a ferramenta é composta de uma série de componentes que executam serviços individualmente.
O que se pode obter com o OpenStack na prática? Em suma, a maior vantagem fornecida pela plataforma é a criação de múltiplos servidores na nuvem que são gerenciados por meio de interface web, porém com uma vasta gama de possibilidades de configuração.
Vamos nos aprofundar no assunto para que as funcionalidades do OpenStack sejam mais esclarecidas? A seguir, explicarei em mais detalhes o que é OpenStack, quais são os seus componentes e no que a tecnologia se difere da virtualização.
O que é OpenStack?
Vinoth Kumar Selvaraj, uma das maiores referências em OpenStack, define a solução como uma plataforma de software para cloud computing livre e opensource geralmente desenvolvida como IaaS (infrastructure-as-a-service).
Em outras palavras, trata-se de um sistema operacional executado na nuvem que permite ao usuário controlar os recursos de computação, armazenamento e rede de todo um datacenter.
Logo, o administrador de sistemas gerencia todo o ambiente usando duas APIs (Application Programming Interfaces, ou interfaces de programação de aplicações): uma para dashboard de gerenciamento, outra para monitoramento e ferramentas.
O fator open source, por sua vez, resultou em uma significativa contribuição (técnica e financeira) por parte de mais de 20 mil especialistas e 675 instituições e empresas do setor, tais como: IBM, Huawei, Red Hat, AT&T, Intel, Ericsson, Ubuntu, SUSE, Cisco, Dell e Fujitsu.
Inclusive, isso deu origem a uma vasta gama de distribuições do OpenStack. Por exemplo:
- Ubuntu Openstack;
- Debian OpenStack;
- Oracle OpenStack;
- VMware Integrated OpenStack;
- IBM Cloud Manager com OpenStack;
- SUSE OpenStack Cloud; e
- Red Hat OpenStack Platform.
Contudo, o que explica tamanho suporte à tecnologia? Embora seja difícil enumerar os benefícios do OpenStack na teoria, alguns deles chamam a atenção da TI.
Principais benefícios do OpenStack
Por si só, o uso da nuvem entrega como benefício a alta escalabilidade e gerenciamento de recursos, melhorando a eficiência da TI em ambientes corporativos.
A segurança, também, é um excelente ganho que o OpenStack pode providenciar. Afinal, ao manter uma nuvem privada, todos os privilégios de acesso, monitoramento, mensuração e políticas que envolvem a Segurança da Informação passam por um controle mais precisos.
Ainda na parte de segurança, a nuvem privada é considerada um dos melhores mecanismos de defesa contra invasões e ataques de Ransomware, visto que dados e servidores são blindados por camadas de proteção configuradas pela equipe —geralmente, por meio de ethical hacking.
Percebeu como o OpenStack é uma solução inovadora que oferece vantagens importantes para as maiores corporações do mundo? Ótimo! No próximo tópico, explicarei a você quais são os principais componentes do OpenStack e como eles funcionam.
Quais são os principais componentes do OpenStack?
Para melhor compreender a estrutura do OpenStack, é importante ter ciência de que a plataforma tem um design modular. O que isso significa? Simplesmente, significa que os projetos / serviços disponíveis são capazes de ser utilizados de maneira independente.
De acordo com Selvaraj, no livro OpenStack Bootcamp, os serviços (como os que mencionarei adiante) são categorizados como “serviços essenciais” (“core services”) e “serviços opcionais” (“optional services”).
As funcionalidades dos core services são considerados cruciais para providenciar as principais características de IaaS para o OpenStack. Já os opcionais servem para complementar as funcionalidades da plataforma.
Na lista presente neste tópico, elenquei, primeiramente, quatro serviços essenciais que nos ajudam a entender melhor as qualidades do OpenStack. Posteriormente, separei outros três serviços, porém opcionais.
Core services
Os quatro core services da lista não representam a totalidade de serviços essenciais para o funcionamento pleno do OpenStack. Todavia, eles são os alicerces para tal.
Keystone
O KeyStone é o serviço de identificação do OpenStack. Com ele, é possível criar políticas e métodos de controle de acesso altamente complexos, ou seja, garantir que os usuários tenham autorização para acessar somente o que a eles compete.
Nova
O Nova é um serviço computacional que funciona como um fornecedor de acesso a recursos. Imaginemos um programador recém-contratado que recebeu as novas credenciais da empresa. Assim que começar a trabalhar, o administrador de sistemas encaminhará um ambiente de destkop adequado (Ubuntu 18.04 LTS/4GB RAM/700GB HDD, por exemplo).
Usando o dashboard, o administrador se comunicará como o Nova para criar uma instância conforme a solicitação. O Nova, por sua vez, entregará os recursos prontos para uso.
Glance
Podemos considerar o Glance um gerenciador de imagens (ISO) de máquinas virtuais. Por meio dele, todas as ISOs que a empresa utiliza são alocadas e organizadas em um disco integrado ao Nova.
Assim, basta o administrador usar o dashboard para solicitar a ISO de um determinado sistema operacional ou ambiente pré-configurado.
Neutron
O Neutron é o serviço de redes do OpenStack, mais precisamente um NaaS (networking-as-a-service). Ele funciona como um departamento de redes por onde passam todas as solicitações dos usuários, as quais são verificadas e autenticadas pelos sistemas de rede.
Optional services
Abaixo, você encontrará uma breve apresentação de três serviços opcionais usados para complementar os core services do OpenStack.
Cinder
O Cinder é, por definição, um componente de armazenamento em bloco. Na prática, o Cinder virtualiza o gerenciamento de recursos, fornecendo uma API onde o usuário solicita, por meio do Nova, solicita a quantidade de volume de disco que necessita.
Swift
Bastante ativo entre as organizações Red Hat, SUSE, Huawey e 99cloud, o Swift Openstack é utilizado para armazenar blobs (conjunto de dados binários) em larga escala.
Por ser flexível, ele é ideal para guardar dados não estruturados que podem aumentar de maneira descontrolada e, assim, assegurar a disponibilidade dos arquivos. Para efeitos de comparação, o Swift funciona similarmente ao Google Drive.
Watcher
Trata-se de um projeto que fornece serviços escaláveis para otimizar nuvens do OpenStack em múltiplas instâncias. De acordo com os desenvolvedores, o Watcher traz um loop de otimização que abrange exatamente tudo dentro de uma infraestrutura de nuvem no OpenStack.
Resumindo, os serviços (essenciais e opcionais) nos levam ao entendimento mais profundo dos benefícios do OpenStack. Quando implementada, a tecnologia fornece um departamento de TI completo e eficaz, porém virtualizado.
Já que falei em virtualização, vale destacar, conforme explicarei a seguir, que o OpenStack é diferente das ferramentas de virtualização.
Qual a diferença entre OpenStack e as ferramentas de virtualização?
Quando falamos de OpenStack, logo nos referimos a um software de cloud computing. Cloud computing, por sua vez, é um conceito que envolve o uso da tecnologia de virtualização.
Já a virtualização é um método que permite a divisão de um servidor físico em múltiplos servidores lógicos, conforme se costuma fazer por meio de softwares como o Virtualbox.
Portanto, entender as diferenças entre OpenStack e ferramentas de virtualização é muito simples: o primeiro tem por objetivo compartilhar recursos como serviço (as-a-service); enquanto as ferramentas de virtualização são produtos de software usados para desenvolver soluções do tipo.
Ao chegar até aqui, você aprendeu que o OpenStack é uma plataforma incrivelmente robusta que utiliza da computação em nuvem para providenciar serviços completos de computação, armazenamento e redes. Sabendo disso, como você encara a capacitação para trabalhar poderosa tecnologia?
Caso esteja convicto de que deseja se especializar, mas não tem o conhecimento em Linux necessário para lidar com tecnologias tão avançadas como o Openstack, recomendo que visite a página do Profissionais Linux para aprender a dominar o sistema de vez!