A versão mais recente do GitLab é capaz de usar o Knative e o Kubernetes para criar, implantar e gerenciar implementações serverless, aproveitando o modelo de funções como serviço (FaaS).
Com o GitLab Serverless e o suporte para FaaS, o GitLab avança, ampliando suas capacidades de CI/CD para suportar um ciclo de vida mais completo do DevOps. O GitLab introduziu o suporte ao Knative na versão 11.5 como um recurso alfa, com o objetivo de possibilitar que os desenvolvedores criem facilmente aplicativos serverless e, ao mesmo tempo, reduzam o risco de bloqueio de fornecedores. Com esse objetivo, o GitLab aproveitou o trabalho realizado no TriggerMesh, que desenvolve soluções de gerenciamento de várias nuvens serverless e FaaS. O GitLab 11.6 agora possui suporte a implantar funções individuais através de uma nova interface do usuário para operação serverless, que mostra uma lista de todas as suas funções. A lista inclui uma breve descrição e o cluster Knative para o qual foi implantado.
(Imagem do blog do GitLab)
Além disso, a UI do GitLab Serverless pode fornecer mais detalhes de cada função implementada, incluindo o número de pods de Kubernetes em uso e o número de chamadas ao longo do tempo.
(Imagem do blog do GitLab)
Ao executar as tarefas de armazenamento serverless, as empresas podem obter uma camada de abstração que permite usar recursos de computação de vários provedores de nuvem e até mesmo de servidores locais. Com essa versão aprimorada eles podem escolher o modelo de processamento que melhor atenda às suas necessidades, em vez de ficarem bloqueados em um provedor específico para executar suas funções.
O FaaS permite a alocação dinâmica de recursos da nuvem para executar pequenas unidades de código quando ocorre um evento. Seu principal objetivo é dimensionar automaticamente sua infraestrutura de nuvem sob demanda com base em solicitações de processamento reais. O FaaS remove o requisito de manter pelo menos um processo de servidor sempre em execução enquanto deseja atender a solicitações. Na verdade, o FaaS permite que o processo do servidor seja gerado apenas quando uma solicitação é recebida. Quando não há mais solicitações para veicular, o cluster reduz a escala para zero. Isso possibilita reduzir os custos de infraestrutura de nuvem, em detrimento da latência de configuração. Existem muitos provedores FaaS, incluindo a Amazon, com o AWS Lambda; a Microsoft, oferecendo o Azure Functions; o Google, com o Cloud Functions entre outros.
Outros novos recursos introduzidos no GitLab 11.6 são Alterações Sugeridas, Web Terminal para Web IDE e o Gráfico de Vulnerabilidade do Painel de Segurança do Grupo.