Execute o GitLab no Kubernetes  

Implemente um GitLab distribuído utilizando Kubernetes e Docker

Last updated

Os cont√™ineres s√£o uma forte tend√™ncia na implementa√ß√£o de aplicativos, em clouds p√ļblicas e particulares. A recente ado√ß√£o generalizada de cont√™ineres se deve, em grande parte, ao desenvolvimento de normas destinadas a facilitar seu uso, como, por exemplo, o modelo de distribui√ß√£o e o formato de imagem Docker. Um dos principais casos de uso dos cont√™ineres √© a possibilidade de migrar aplicativos legados para plataformas de orquestra√ß√£o de cont√™ineres como o Kubernetes, o que permite distribui√ß√£o, ajuste de escala e manuten√ß√£o superiores.

By Ryan Moe, Animesh Singh

Overview

Este aplicativo mostra a força dos contêineres e como migrar, de modo contínuo, aplicativos existentes para a cloud. Fornecemos um roteiro completo para desenvolvedores, ajudando-os a migrar seus aplicativos para a cloud e a aproveitar o empacotamento nativo na cloud com o uso de contêineres.Mostramos como um aplicativo comum com vários componentes pode ser implementado no IBM Bluemix Container Service utilizando o Kubernetes.

O GitLab representa um aplicativo típico de multicamada; cada componente terá seus próprios contêineres. Os contêineres de microsserviços serão para a camada da web, enquanto o banco de dados de estado/tarefa será com Redis e PostgreSQL como banco de dados.

Flow

  1. O usu√°rio interage com o GitLab pela interface da web, ou enviando um c√≥digo por push para um reposit√≥rio do GitHub. O cont√™iner do GitLab executa o aplicativo principal Ruby on Rails atr√°s do NGINX e do workhorse do GitLab, que √© um proxy reverso para grandes solicita√ß√Ķes de HTTP, como downloads de arquivos e push/pull de Git. Enquanto atende reposit√≥rios por HTTP/HTTPS, o GitLab utiliza a API GitLab para resolver a autoriza√ß√£o e o acesso, al√©m de atender objetos Git.
  2. Ap√≥s a autentica√ß√£o e a autoriza√ß√£o, o aplicativo GitLab Rails coloca as tarefas recebidas, suas informa√ß√Ķes e os metadados na fila de tarefas do Redis, que funciona como um banco de dados n√£o persistente.
  3. Os repositórios são criados em um sistema de arquivos local.
  4. O usu√°rio cria usu√°rios, fun√ß√Ķes, solicita√ß√Ķes de mesclagem, grupos e muito mais. Em seguida, tudo √© armazenado em PostgreSQL.
  5. Para acessar o repositório, o usuário entra por meio do shell Git.

Components

Cluster Kubernetes

Crie e gerencie sua própria infraestrutura em cloud e use o Kubernetes como mecanismo de orquestração de contêineres.

GitLab

O GitLab unifica problemas, revis√£o de c√≥digo, CI e CD em uma interface √ļnica com o usu√°rio.

Redis

Um software livre que armazena estrutura de dados na memória e que pode ser usado como banco de dados, cache e broker de mensagem.

PostgreSQL

DBMS objeto-relacional de software livre sofisticado com suporte para quase todas as constru√ß√Ķes de SQL.

Technologies

Cloud

Acesse recursos de tecnologia da informação e computadores pela internet.

Container Orchestration

Automatização da implementação, ajuste de escala e gerenciamento de aplicativos "conteinerizados".

Databases

Reposit√≥rio para armazenar e gerenciar cole√ß√Ķes de dados.

Related Blogs

Nenhuma publicação correspondente ao seu critério de busca foi encontrada

Related Links

Arquitetura de DevOps

Descubra como esta jornada se relaciona com a arquitetura de referência de DevOps