Pular para o conteúdo principal

Destaques

Soberania vs. Instabilidade: O Plano de Resiliência no CI/CD

Soberania vs. Instabilidade: O Plano de Resiliência no CI/CD 🎧 Ouça um breve resumo: Seu navegador não suporta o elemento de áudio/vídeo. Gerado por IA para Vcyber Adotar o GitHub Actions para orquestrar o deploy no seu servidor é uma escolha de alta performance . Ao utilizar os GitHub-Hosted Runners , aproveitamos a infraestrutura global da Microsoft para processar nosso código. No entanto, o verdadeiro arquiteto de sistemas não olha apenas para a facilidade; ele planeja a resiliência para quando o "caminho feliz" falha. 1. O Motor Azure e o Túnel Híbrido Os runners padrão do GitHub não são entidades abstratas; eles rodam sobre instâncias de máquinas virtuais no Azure . O sucesso do seu deploy depende da integridade desse "túnel híbrido" entre a nuvem pública e o seu ecossistema privado (On-Premise). Se o Azure enfrentar instabilidades de rede ou latência em regiões específicas (como o l...

Infraestrutura como Código: Preparando o Ecossistema GitHub para o Deploy On-Premise

Infraestrutura como Código: Preparando o Ecossistema GitHub para o Deploy On-Premise

🎧 Ouça um breve resumo:

Gerado por IA para Vcyber

Infraestrutura como Código: Preparando o Ecossistema GitHub para o Deploy On-Premise

Para avançarmos na nossa jornada de automação On-Premise, precisamos configurar o ambiente que orquestrará tudo. Este post foca na preparação da estrutura lógica e de segurança que permitirá ao GitHub interagir com seu ambiente local de forma soberana.

O Ecossistema GitHub: Onde Buscar Conhecimento

Não utilizaremos este espaço para explicar conceitos básicos sobre o GitHub. Se você busca aprofundar-se em manuais de autenticação, fluxos de trabalho ou migrações, o canal oficial é a Documentação do GitHub. Lá, você encontra uma central de ajuda completa.

Captura de tela da Documentação do GitHub

Captura de tela da Documentação do GitHub 



Checklist de Preparação: A Arquitetura da Solução

Antes da configuração prática, garanta que sua estrutura de repositórios e permissões siga o modelo abaixo. Esta organização garante a separação de responsabilidades e a segurança do seu pipeline.

1. Repositórios Necessários

  • orquestrador-cd: O "cérebro" da operação. Centraliza os pipelines de automação para CD seguindo práticas de GitOps.

  • aplicacao: O repositório onde reside o código-fonte da sua aplicação.

2. Estrutura de Branches (Repositório aplicacao)

  • main: Código estável e validado.

  • dev: Ambiente de integração contínua.

  • branch-de-trabalho: Onde as funcionalidades são construídas.

3. Pilares de Segurança

  • Configuração do Repositório (orquestrador-cd): Na aba Settings, utilizaremos a área de Secrets para guardar senhas e chaves SSH de forma criptografada.

  • Configuração da Conta (User Settings): Área para gerar o Token Classic, sua credencial de identidade para que o orquestrador aja em seu nome.


A Central de Automação: O Repositório Orquestrador

Como vemos na configuração do repositório orquestrador-cd, ele assume o protagonismo:

Captura de tela do repositório orquestrador-cd
Captura de tela do repositório orquestrador-cd

Este repositório não carrega o código da aplicação, mas sim a inteligência do deploy. Ao separar o orquestrador da aplicação, reduzimos o raio de exposição e facilitamos a manutenção da infraestrutura como código.

O Repositório da Aplicação: O Coração do Negócio

Se o orquestrador é o cérebro, a aplicacao é o coração. É dele que o nosso orquestrador extrairá o código atualizado para o servidor On-Premise.

Captura de tela do repositório aplicacao
Captura de tela do repositório aplicacao

A Arquitetura de Branches na Prática

No gerenciamento de branches, a organização define o ciclo de vida do código:

Captura de tela das branches do repositório aplicacao
Captura de tela das branches do repositório aplicacao

  1. main: Branch padrão (default). Representa o estado "sagrado" em produção; só recebe merges após validação.

  2. dev: Onde as contribuições dos desenvolvedores são integradas e testadas em conjunto.

  3. branch-de-trabalho: Espaço individual de criação e refino.


Credenciais e Identidade: Gerando o Token Classic

Para que o orquestrador manipule o código e realize o deploy, precisamos de uma credencial de identidade. Siga o passo a passo:

1. Configurações de Desenvolvedor

Vá ao menu lateral das suas configurações (Settings) da conta pessoal e, ao final, clique em Developer settings.

Captura de tela do menu Settings com "Developer settings" 1
Captura de tela do menu Settings com "Developer settings"


Captura de tela do menu Settings com "Developer settings" 2

Captura de tela do menu Settings com "Developer settings"


2. Gerando o Token

Navegue em Personal access tokens > Tokens (classic) > Generate new token (classic).

  • Note: Utilize um nome claro como TOKEN_ACESSO.

  • Escopos: Selecione o escopo repo para controle total sobre repositórios privados.

Captura de tela da configuração "New personal access token (classic)"
Captura de tela da configuração "New personal access token (classic)"

3. Armazenamento e Segurança

Após gerar, o GitHub exibirá o token uma única vez. Copie e guarde em um local seguro.

Captura de tela com o código do token gerado
Captura de tela com o código do token gerado

⚠️ Nota Importante: O token exibido nestas imagens foi gerado apenas para fins didáticos e foi excluído imediatamente após as capturas. Nunca exponha seus tokens reais.


Configurando o Segredo no Orquestrador

Agora, vamos "ensinar" o repositório orquestrador-cd a usar essa credencial de forma blindada.

  1. No repositório orquestrador-cd, vá em Settings > Security > Secrets and variables > Actions.

  2. Clique em New repository secret.

  3. Name: TOKEN_ACESSO_PARA_PIPELINE.

  4. Secret: Cole o Token Classic gerado.

Captura de tela da tela "New secret" e da lista de segredos configurados 1
Captura de tela da tela "New secret" e da lista de segredos configurados

Captura de tela da tela "New secret" e da lista de segredos configurados 2
Captura de tela da tela "New secret" e da lista de segredos configurados

Uma vez adicionado, o segredo fica criptografado. Você poderá atualizá-lo ou excluí-lo, mas nunca mais visualizá-lo, protegendo sua infraestrutura.


Conclusão da Parte 1

Você concluiu a fundação de segurança:

  • Estruturou os repositórios e branches.

  • Gerou sua identidade (Token Classic).

  • Blindou o acesso via Actions Secrets.

Na Parte 2 deste post, vamos finalmente conectar esses pontos e criar nossos primeiros arquivos YAML para dar vida ao deploy.


Comentários

Postagens mais visitadas