Engenharia de plataforma: Revolucionando os processos de desenvolvimento com a adoção do Backstage

by Keiran Holloway, Senior Manager, Professional Services Delivery, Rackspace Technology

Introdução

A Rackspace Technology adoptou o Backstage para ajudar os clientes a estabelecer uma plataforma de desenvolvimento interno (IDP). Isto revela-se extremamente valioso, uma vez que cria um portal que inclui um portfólio de modelos de implementação, que as equipas de desenvolvimento podem utilizar para implementar rapidamente - e de forma segura - a infraestrutura da nuvem.

O Backstage.io, desenvolvido pelo Spotify, surgiu como uma plataforma poderosa para a criação de portais para programadores. Simplifica os fluxos de trabalho dos programadores, centraliza as ferramentas de infraestrutura e aumenta a produtividade das equipas. Para os programadores que não conhecem o Backstage.io, este guia irá orientá-los na configuração e no aproveitamento das suas capacidades para simplificar os seus processos de desenvolvimento.

O ponto de partida óbvio para adotar esta ferramenta na sua organização é a implementação do software de código aberto. No entanto, esta é a parte fácil - impulsionar a adoção de uma plataforma como o Backstage pode muitas vezes tornar-se um problema de galinha e ovo. Os programadores podem desconfiar desta ferramenta - e, fora da caixa, ela oferece uma funcionalidade limitada - por isso, como é que promove a adoção na sua organização?

Os aspectos que se seguem são considerados fundamentais para impulsionar a adoção:

1. Criar um ambiente de desenvolvimento sólido: torná-lo repetível para a integração de novos engenheiros

Porque é importante: A consistência e a repetibilidade no ambiente de desenvolvimento são cruciais para minimizar os tempos de configuração e evitar o síndroma "funciona na minha máquina", especialmente quando se integram novos engenheiros. O Backstage, com os seus múltiplos componentes e uma curva de aprendizagem algo acentuada, sublinha esta necessidade. A adoção das seguintes abordagens pode facilitar este processo:

  • Automatizar processos de configuração: O Backstage tem tudo a ver com a automatização de fluxos de trabalho e práticas de implantação. O primeiro modelo que criar deve permitir uma integração mais rápida do programador. A Rackspace oferece vários modelos que permitem a rápida implementação de um ambiente de desenvolvimento local ou de um ambiente de teste no AWS, GCP ou Azure. Este processo, que demora menos de 10 minutos, reduz significativamente as barreiras à entrada.
  • Documentar tudo: É essencial documentar claramente todas as etapas do processo de configuração. Esta documentação deve ser facilmente acessível aos novos engenheiros, idealmente no seu portal Backstage.io.
  • Estabelecer uma lista de pendências: O primeiro item desta lista de pendências para os engenheiros será a sua própria integração. Certifique-se de que estão a entrar no ritmo de utilização das ferramentas que vai desenvolver.
  • Agendar reuniões frequentes e apoio coeso:  Ao adotar o Backstage, todos estão geralmente no mesmo barco e a aprender em conjunto. Ter canais Slack/Teams comuns tem sido inestimável para remover rapidamente os obstáculos. À medida que os engenheiros se integram, a realização de sessões de demonstração também ajuda a promover a adoção, a responder a perguntas e a fazer com que todos comecem a trabalhar.

2. Estabelecer as bases corretas: autenticação de utilizadores e integração com diretórios existentes

Porque é importante: Mecanismos de autenticação adequados são cruciais para garantir que a integração dos engenheiros é consistente e que os serviços são acedidos de forma segura.

Como o conseguir:

  • Escolha a abordagem de autenticação correta: O Backstage suporta vários fornecedores de autenticação (por exemplo, OAuth, SAML, LDAP). Avalie a sua infraestrutura existente para selecionar o método de autenticação mais adequado.
  • Integrar com diretórios existentes: Se a sua organização utiliza o Active Diretory ou outro serviço de diretório, integre-o com o Backstage para gerir o acesso e as permissões dos utilizadores sem problemas. Isto também ajuda a manter a conformidade com a sua política de saídas, entradas e mudanças.

3. Mecanismos de integração nos bastidores

Por que é importante: Backstage e suas ferramentas de pipeline de CI/CD precisam funcionar perfeitamente juntas. Uma integração pouco funcional pode rapidamente diminuir o interesse dos programadores.

Como o conseguir:

  • Certifique-se de que está a utilizar aplicações OAuth: O Backstage pode ser integrado a plataformas como o GitHub. A configuração do OAuth desde o início facilita significativamente este processo.
  • Compreenda os seus padrões de integração com os fornecedores de serviços na nuvem: Necessitará de mecanismos para implementar recursos na sua nuvem. Devem ser definidas e aplicadas técnicas semelhantes às do OIDC para promover uma adoção significativa.
  • Documentação: A documentação destes fluxos e processos é crucial. Sem uma documentação clara, é quase certo que os programadores encontrarão obstáculos, o que terá um impacto negativo na adoção.

 4.        Principais componentes do Backstage

Compreender os principais componentes do Backstage é imperativo para começar. Familiarize-se com todos os seguintes itens: Catálogo de software, documentos técnicos e modelos de andaimes.

  • Catálogo de software: No coração do Backstage está o Catálogo de Software, um sistema centralizado para rastrear e organizar componentes de software em toda a sua organização. Proporciona visibilidade sobre o que existe, como é mantido e quem é o seu proprietário.
  • Documentos técnicos: O Backstage integra a documentação técnica diretamente no portal do programador. Ao utilizar o Tech Docs, as equipas podem criar, armazenar e aceder à documentação juntamente com o seu código, garantindo que está sempre actualizada e acessível.
  • Modelos Scaffolder: Estes modelos permitem que as equipas criem rapidamente novos projectos, fornecendo modelos predefinidos para tipos comuns de projectos de software. Isto normaliza as configurações do projeto e reduz o tempo gasto em código padrão.

5. Compreender os conceitos-chave: modelos, plugins e acções

Modelos: No Backstage, os modelos servem como planos para a criação de novos componentes, como serviços, bibliotecas ou sites. Estas descrevem o processo de andaimes, indicando os ficheiros a criar e os parâmetros a configurar.

Exemplos:

  • Um modelo de serviço Node.js que configura um projeto básico de API REST.
  • Um modelo de documentação para criar um sítio Tech Docs.

Plugins: Os plugins alargam a funcionalidade do Backstage, permitindo-lhe integrar serviços, ferramentas e funcionalidades personalizadas de terceiros no seu portal de programador.

Exemplos:

  • Um plugin CI/CD para integração com Jenkins ou CircleCI para visualizar os status de construção diretamente no Backstage.
  • Um plug-in de gestão de incidentes para integração com o PagerDuty ou o Opsgenie.

Acções: As acções são as operações realizadas pelo scaffolder ao criar um novo componente a partir de um modelo. Podem incluir a criação de novos repositórios, a adição de ficheiros e a configuração de serviços.

Exemplos:

  • Uma ação que inicializa um repositório Git com um ficheiro README e LICENSE.
  • Uma ação que configura uma implementação Kubernetes para um novo serviço.

Potencie o seu percurso de desenvolvimento com o Backstage.io

O Backstage.io destaca-se como uma plataforma formidável para aumentar a produtividade dos programadores e a eficiência operacional. Ao criar um ambiente de desenvolvimento robusto, estabelecer bases sólidas, compreender os seus principais componentes e utilizar habilmente modelos, plug-ins e acções, tem o poder de melhorar significativamente o seu fluxo de trabalho de desenvolvimento. Este guia serve como uma cartilha para iniciar a sua viagem com o Backstage.io. À medida que se aprofunda nas suas caraterísticas e capacidades, descobrirá inúmeras oportunidades para adaptar e aperfeiçoar as suas práticas de desenvolvimento.

Conclusão

A Rackspace Technology tem uma vasta experiência, não só na adoção destas tecnologias, mas também na garantia do seu sucesso na sua organização.

Saiba como potenciar a inovação e o crescimento inscrevendo-se no Workshop de Ideação de Engenharia de Plataformas →

Nota: Atualmente, esta oferta é disponibilizada apenas pela nossa equipa de serviços profissionais baseada na região EMEA.

 

Explore como o Rackspace Platform Engineering pode ajudar a sua empresa a crescer