OpenStack


Trabalho teórico - Redes de Computadores 1 - 2016/1

6. Componentes do OpenStack

Horizon (Painel de Controle)

É a interface web que permite que os usuários e administradores interajam com os diversos componentes e serviços oferecidos pelo orquestrador. Se baseia em uma interação via web com o componente controlador da nuvem, a partir das APIs (Application Programming Interface) do OpenStack. O que se obtém como resultado final então é um ponto central onde as outras aplicações se conectam.

Nova (Computação)

É o componente que trata dos recursos computacionais da nuvem, gerenciando a criação, migração e exclusão de máquinas virtuais a partir da comunicação com o hipervisor. Vale notar que o Nova em si possui componentes internos: Um banco de dados para guardar informações, a API que se comunica com outros componentes, o Scheduler que faz tomadas de decisão de servidores, o Networking que trata de vlans e ipfowarding e o Compute faz a ligação entre máquinas virtuais e hipervisores.

Neutron (Redes)

Integra um modelo NaaS (Networking as a Service) em outros serviços do OpenStack. Assim oferecendo aos usuários uma API para a definição de redes que suporta algumas das soluções mais populares do mercado.

Swift (Armazenamento de objetos)

Tem como objetivo armazenar e administrar informação não estruturada a partir de sua API. É altamente resistente a falhas graças a sua arquitetura e replicações de dados. Vale notar que suas informações não são mantidas em um de diretório de arquivo montável e sim a partir da escrita de múltiplos objetos em múltiplos locais.

Cinder (Armazenamento de blocos)

O Cinder é o dispositivo que providencia o bloco de armazenamento para as máquinas virtuais que serão providas. Também possibilita a interação com estados de máquina e diversos tipos de volume.

Keystone (Identidade)

É o componente que realiza a autenticação e autorização para todos os outros módulos do OpenStack. Ele faz isso a partir de uma política de Tokens, validando Tokens enviados pelos usuários, para então, associar papéis a esses usuários e assim lhes dar as permissões que os cabem.

Glance (Imagens)

Tem como propósito servir e gerir as imagens que servirão como base para a criação de máquinas virtuais. Os pedidos são feitos a partir de uma API. Imagens usadas pelo Glance são guardadas em uma variedade de sistemas de arquivos, sendo um exemplo o Swift.

Ceilometer (Telemetria)

Possui diversas ferramentas úteis para a obtenção de métricas relevantes da nuvem. São exemplos: Quantidade de máquinas virtuais criadas, quantidade de recursos utilizados e fluxo de dados. Essas informações são úteis para controle da nuvem, além de possibilitar a criação de parâmetros para cobranças pela utilização da nuvem.

Figura 5 - Interação entre os componentes. Fonte