Bootstrapping de contas AWS para uma integração perfeita com o Backstage.io
by Keiran Holloway, Senior Technical Manager - EMEA Professional Services, Rackspace Technology
Introdução
Embarcar na jornada da plataforma Backstage.io introduz vários desafios iniciais, nomeadamente, estabelecer um mecanismo de interação com o seu fornecedor de serviços na nuvem. Esta publicação irá esclarecer a abordagem que a Rackspace Technology utiliza para integrar perfeitamente as contas Amazon Web Services (AWS) com o Backstage, uma pedra angular para permitir um fluxo de trabalho de desenvolvimento suave e eficiente.
O nosso objetivo
O nosso objetivo é simples, mas vital:
- Permitir que os pipelines Backstage e CI/CD interajam com os serviços AWS.
- Garantir que os serviços possam ser detectados no Backstage.
- Manter a simplicidade e a eficiência, minimizando as entradas para obter o máximo de resultados.
Este esforço levou à criação de um dos nossos modelos iniciais do Backstage, concebido para facilitar a adoção da plataforma e simplificar as interações na nuvem.
A nossa abordagem
Embora existam inúmeras estratégias potenciais para a integração de serviços em nuvem, partilhamos um método adaptado para o desenvolvimento rápido de MVP. Não se trata de uma solução única para todos. Trata-se de um modelo que beneficiou significativamente muitos dos nossos projectos, servindo de inspiração para outras estratégias de implementação. Uma visão de alto nível do nosso fluxo de trabalho inclui o seguinte:
< entidade drupal data-align="left" data-embed-button="media_entity_embed" data-entity-embed-display="view_mode:media.full" data-entity-type="media" data-entity-uuid="ffc70d81-8bc0-42e9-b646-2faec089e354" data-langcode="en"> < /drupal-entity>
Pré-requisitos
Para iniciar o processo, vai precisar de:
- Credenciais AWS: Credenciais de acesso temporárias para a conta AWS de destino
- Região AWS: A região de destino da implantação é normalmente US-EAST-1
Autenticação AWS
A autenticação no AWS é o primeiro passo, que requer o seguinte:
- Uma conta AWS existente
- Uma função IAM para o Backstage assumir
- Uma conta de utilizador que fornece credenciais temporárias para o Backstage
Esta configuração permite a injeção de credenciais no modelo de arranque do Backstage, estabelecendo as bases para outras acções.
Tratamento de credenciais
Usando a ação personalizada da Rackspace Technology, aws:get: credentials, analisamos e carregamos as credenciais do AWS fornecidas como variáveis de ambiente. As credenciais são então autenticadas nas APIs do AWS, protegendo o acesso do Backstage aos serviços do AWS.
Automatização de infra-estruturas
- ASW CloudFormation para a criação de funções do AWS IAM: Automatizamos a implementação das funções necessárias do AWS Identity and Access Management (IAM) através do ASW CloudFormation, aderindo a uma convenção de nomenclatura e assegurando um modelo de acesso de privilégio mínimo.
- Configuração do provedor de identidade OICD: Estabelecer uma ponte entre o OpenID Connect e o OpenID Provider Ações do GitHub com funções do AWS IAM.
- Configuração do S3 e do DynamoDB: Essencial para gerenciar os estados do Terraform e garantir a segurança de operações simultâneas, criamos buckets S3 e tabelas DynamoDB seguindo convenções de nomenclatura específicas.
Estrutura do repositório
O nosso modelo organiza o repositório em camadas distintas, atendendo a diferentes aspectos da implantação de infra-estruturas e serviços, incluindo:
- /bootstrap: Para os scripts de configuração inicial
- /foundation: Para configurações da rede principal e da zona de aterragem
- /serviços: Para implementar e gerir recursos específicos do serviço
- /fullstack: Para modelos completos que abrangem várias camadas de infra-estruturas
Esta estrutura não só simplifica o desenvolvimento, como também se alinha com as melhores práticas para a infraestrutura como código (IaC).
Registo no catálogo dos bastidores
Para finalizar o processo, registamos a nova entidade configurada no catálogo de software da Backstage, tornando-a visível e gerível através da plataforma.
Conclusão
O nosso percurso através da integração de contas AWS com o Backstage sublinha a importância de uma abordagem metódica e simplificada. Ao partilhar a nossa experiência, esperamos capacitar os programadores para criarem soluções robustas, eficientes e escaláveis, tirando partido de todo o potencial do Backstage para melhorar os seus ecossistemas de desenvolvimento.
Recent Posts
Relatório sobre o estado da nuvem em 2025
Janeiro 10th, 2025
Padrões de rede híbrida do Google Cloud - Parte 2
Outubro 16th, 2024
Padrões de rede híbrida do Google Cloud - Parte 2
Outubro 15th, 2024
How Rackspace Leverages AWS Systems Manager
Outubro 9th, 2024
O Windows Server impede a sincronização da hora com o Rackspace NTP
Outubro 3rd, 2024