Aprenda na prática Infra as Code com GitOps: Implante um EKS seguindo o EKS Best Practices, automatize com ArgoCD e finalize com o eShopOn Containers!

24 h Avançado 59 Aulas

Bruno Brito

Microsoft MVP - Instrutor

Enterprise DevOps AWS

Neste curso vamos aprender a criar um projeto de de infraestrutura como código na AWS utilizando Terraform e Terragrunt. Iremos aplicar o conceito de GitOps com ArgoCD e automatizar todo o ciclo de vida de um projeto.

Você aprenderá desde a preparação do ambiente e organização de repositórios GIT até a implantação de clusters EKS utilizando as melhores práticas descritas no EKS Best Practices.

No final iremos implantar o projeto eShop OnContainers em produção de forma 100% automatizada!

Principais Tópicos Abordados:

  • Debate sobre a arquitetura, como tomar decisões sobre a estrutura de projetos e boas práticas
  • Criação e gerenciamento de VPCs com Terraform
  • Implantação de clusters EKS com suporte ao Karpenter e drivers de storage
  • Configuração de CNI e decisões arquiteturais de rede
  • Instalação e configuração do ArgoCD para GitOps
  • Estrutura de repositórios e organização do projeto usando ApplicationSets do ArgoCD
  • Deploy automatizado de Addons como ExternalDNS, Cert Manager e Prometheus
  • GitHub e integração com ArgoCD para automação de pipelines de CI/CD

Com uma abordagem prática e direta, o curso guia você na criação de um pipeline completo de infraestrutura e aplicações modernas em Kubernetes na AWS.

Ao final, você será capaz de aplicar práticas de GitOps e automação na sua empresa.


Assista gratuitamente as aulas abaixo


  • Introducao
    5m 12s

    Apresentação do objetivo do curso

  • Qual problema estamos resolvendo?
    5m 12s

    Nesta aula iremos discutir qual complexidade que estamos lidando nesse projeto e quais perguntas devemos fazer antes de tomar decisões arquiteturais

  • Visao Geral
    3m 36s

    Descubra como provisionar um cluster EKS pronto para produção utilizando Terraform. Aprenda sobre addons nativos e extras, como Karpenter, EBS, EFS, e ferramentas de monitoramento.

  • Karpenter - Fargate vs Managed Node Group
    3m 20s

    Nesta aula vamos discutir estratégias de custo-benefício: Karpenter com Fargate ou Managed Node Groups? O que é melhor para produção?

  • Custom CNI
    6m 34s

    Nesta aula exploramos as complexidades do Kubernetes, focando em suas recomendações e desafios de network. Discutimos a alocação de IPs, limites de pods por Worker Node e estratégias para evitar o esgotamento de endereços IP, destacando a importância do planejamento e das melhores práticas.

  • Decisões Arquiteturais
    5m 41s

    Nesta aula, exploramos as nuances de decisões técnicas ao implementar EKS em ambientes de produção, homologação e desenvolvimento. Discutimos os prós e contras de usar um único cluster versus múltiplos clusters, considerando fatores como custo, complexidade e segurança.

  • Decisoes Arquiteturais
    2m 17s

    Vamos explorar as decisões arquiteturais que iremos utilizar nesse cenário.

  • Visão Geral
    5m 32s

    Vamos explorar o motivo da necessidade de automatizar o processo de configuração de um repositório no GitHub.

Fique por dentro

Perguntas frequentes

No treinamento as aulas são parcialmente gravadas, focando em temas técnicos específicos como Kubernetes, EKS e AWS. Além disso, há encontros quinzenais com o instrutor, para discutir assuntos mais abrangentes. Esses encontros são previamente agendados e ficam disponíveis na plataforma para consulta. O conteúdo do treinamento é ligeiramente diferente dos cursos gravados e é liberado em datas definidas, permitindo que todos os participantes avancem juntos no conteúdo.

Por outro lado, o Plano Premium proporciona acesso total ao catálogo de cursos gravados. Você pode assistir às aulas quando e onde quiser, no seu próprio ritmo, sem datas fixas ou encontros ao vivo. É ideal para quem prefere aprender de forma independente e com total flexibilidade de horário.

Em resumo, o Treinamento é ideal para quem busca uma experiência de aprendizado guiada e com suporte direto do instrutor, enquanto o Plano Premium é perfeito para quem deseja flexibilidade total para estudar conforme sua disponibilidade.
O Kit de boas-vindas é um benefício exclusivo, veja nos detalhes do produto se ele está disponível. Ele inclui uma camisa avera e outros brindes e surpresas especiais. O envio do kit é feito via correio em até 30 dias. É importante verificar se seus dados estão atualizados para garantir que o kit seja entregue com sucesso. Qualquer dúvida ou problema com a entrega, você pode entrar em contato com nossa equipe de suporte.
O curso aborda conceitos teóricos e práticos relacionados ao assunto do curso, que podem variar de acordo com a área de estudo. Para mais informações específicas, consulte a ementa do curso.
O aluno tem 2 anos de acesso ao curso. Durante esse período, o aluno pode acessar o material do curso a qualquer momento e em qualquer dispositivo com acesso à internet.
Sim, o curso oferece exercícios e atividades práticas para ajudar os alunos a consolidar e aplicar os conceitos teóricos aprendidos durante o curso.
Sim, cada curso oferece um certificado de participação de forma digital.

Ao final do curso, a plataforma disponibiliza um certificado de participação que pode ser baixado, impresso e compartilhado nas redes sociais.
Sim, cada curso oferece uma prova de certificação no final. A prova é projetada para testar a compreensão do aluno em relação aos conceitos teóricos e práticos abordados no curso.

No caso especifico de formações, ao final se o aluno passou em todas as provas de certificação ele vai receber um Badge e uma certificação exclusiva atestando as competências desse aluno.
Cada aluno terá duas oportunidades para realizar a prova de certificação do curso online.
Se o aluno não passar na primeira tentativa, terá uma segunda chance para tentar novamente e obter a certificação. No entanto, se o aluno não passar em nenhuma das tentativas, será necessário pagar uma taxa adicional de R$ 100,00 para ter acesso a uma terceira tentativa.
É importante lembrar que a taxa só se aplica caso o aluno não tenha obtido sucesso nas duas primeiras tentativas.
Caso o aluno não queira ou não possa pagar a taxa adicional, ele ainda terá acesso a todo o conteúdo do curso por um ano, mas não receberá a certificação e nem irá receber o Badge e titulo especifico relacionado com a formação.
Certificado e certificação são termos diferentes, embora possam ser facilmente confundidos.
Um certificado é um documento emitido após a conclusão de um curso ou treinamento, que comprova que o aluno participou do curso e concluiu com sucesso. O certificado é emitido pela avera assim que o aluno finaliza o curso e inclui o nome do aluno, o nome do curso e a carga horária.
Já a certificação é um processo que valida a competência e conhecimentos em uma determinada área ou habilidade através de um exame. A certificação é concedida para comprovar o nível de conhecimento e habilidade do profissional na área em questão.
Em resumo, o certificado comprova a conclusão do curso, enquanto a certificação atesta a competência em uma determinada área.
Para acessar o curso, o aluno precisa ter um dispositivo com conexão à internet e um navegador web atualizado. Alguns cursos tem requisitos adicionais, como software específico ou um determinado sistema operacional. Esses requisitos serão especificados na descrição do curso.
Sim, o curso é projetado para ser acessado a qualquer momento, o que significa que os alunos podem fazer o curso no seu próprio ritmo. No entanto, é importante lembrar que a prova de certificação só pode ser feita uma única vez, por isso recomendamos que faça ela o quanto antes enquanto os conceitos aprendidos no curso estão frescos.
  • 1.1.0 12/05/2025

    Video - Nova versão da aula - Introducao

    Atualização para melhoria das animações, com o objetivo de tornar a apresentação mais didática, fluida e visualmente clara para o acompanhamento do conteúdo. Essas melhorias não alteram o conteúdo técnico ou teórico da aula, apenas a forma como ele é apresentado, visando facilitar ainda mais o seu aprendizado.

Tenha acesso a esse curso!
    • Introducao
      5m 12s

      Apresentação do objetivo do curso

    • Pré-requisitos
      55s

      Nesta aula, você aprenderá a instalar e configurar seu ambiente de desenvolvimento e otimizar seu fluxo de trabalho no VSCode.

    • Instalar Terragrunt
      1m 27s

      Nesta aula iremos instalar e configurar o terragrunt

    • Atalhos
      53s

      Nessa aula iremos configurar alguns atalhos no seu bash para facilitar o uso do terragrunt.

    • Material
    • Custos
      40s

      Vamos abordar os custos envolvidos para a realização desse curso

    • Configurando State via Terraform
      8m 0s

      Descubra como configurar o State do terraform, através do próprio terraform!

    • Estrutura do projeto
      3m 16s

      Vamos explore como estruturar um monorepo para terraform que atenda mais de um ambiente.

    • Qual problema estamos resolvendo?
      5m 12s

      Nesta aula iremos discutir qual complexidade que estamos lidando nesse projeto e quais perguntas devemos fazer antes de tomar decisões arquiteturais

    • Github App
      5m 35s

      Descubra como integrar o GitHub com Terraform de forma impessoal e segura, utilizando um GitHub App personalizado. Aprenda a configurar as permissões para automatizar o gerenciamento de repositórios, usuários e secrets através do terraform.

    • Provider Github
      3m 2s

      Nesta aula iremos configurar o provider do GitHub no nosso projeto

    • Visao Geral
      2m 6s

      Explore estratégias de configuração de vpc's, subnets e gateways. Aprenda a equilibrar riscos e necessidades de conectividade para aplicações.

    • Criando VPC
      12m 28s

      Descubra como criar uma VPC utilizando o Terraform, explorando módulos populares. Aprenda a configurar subnets, NAT Gateways e muito mais, garantindo uma infraestrutura pronta para produção.

    • Dns
      5m 49s

      Nessa aula iremos configurar o Route53 via terraform

    • Visao Geral
      3m 36s

      Descubra como provisionar um cluster EKS pronto para produção utilizando Terraform. Aprenda sobre addons nativos e extras, como Karpenter, EBS, EFS, e ferramentas de monitoramento.

    • Karpenter - Fargate vs Managed Node Group
      3m 20s

      Nesta aula vamos discutir estratégias de custo-benefício: Karpenter com Fargate ou Managed Node Groups? O que é melhor para produção?

    • Network
      2m 52s

      Aprenda estratégias para configurar um cluster EKS de alta disponibilidade na AWS.

    • Criando EKS
      14m 51s

      Nesta aula mergulhamos na criação de um cluster EKS utilizando práticas recomendadas pelo EKS Best Practices da AWS. Aprenda sobre como otimizar o desempenho e a segurança com imagens Bottlerocket e instâncias ARM.

    • Spot Service Link
      51s

      Aprenda a como habilitar o uso de máquinas spot em contas novas da AWS.

    • Karpenter - Problema na doc do EKS Best Practices
      3m 43s

      Nesta aula, exploramos um dilema comum no uso do Terraform para implementar o Karpenter no EKS, destacando a confusão entre dois módulos populares. Discutimos as recomendações divergentes de fontes oficiais e a importância de escolher um módulo que equilibre simplicidade e documentação robusta.

    • Configurando Karpenter
      5m 31s

      Nesta aula, exploramos a configuração do Karpenter via Terraform, utilizando o EKS Blueprints. Através de um passo a passo detalhado, aprendemos a integrar o Karpenter com o EKS, ajustando versões e permissões, e preparando o terreno para futuras implementações com ArgoCD.

    • Configurando Driver EBS
      6m 45s

      Nesta aula, exploramos a configuração do addon AWS EBS CSI Driver.

    • Configurando Driver EFS
      5m 49s

      Nesta aula, exploramos a configuração do driver do EFS com o uso do addon e módulos do EKS.

    • Custom CNI
      6m 34s

      Nesta aula exploramos as complexidades do Kubernetes, focando em suas recomendações e desafios de network. Discutimos a alocação de IPs, limites de pods por Worker Node e estratégias para evitar o esgotamento de endereços IP, destacando a importância do planejamento e das melhores práticas.

    • Configurando Custom CNI
      11m 30s

      Nesta aula, exploramos a configuração avançada de redes no EKS, focando na implementação de um custom CNI.

    • Decisões Arquiteturais
      5m 41s

      Nesta aula, exploramos as nuances de decisões técnicas ao implementar EKS em ambientes de produção, homologação e desenvolvimento. Discutimos os prós e contras de usar um único cluster versus múltiplos clusters, considerando fatores como custo, complexidade e segurança.

    • Visão Geral
      53s

      Descubra como iniciar sua jornada em GitOps com o Argo CD, explorando a configuração de múltiplos clusters no modo hub. Aprenda a manter seu ambiente sincronizado com um repositório Git, a fonte da verdade, e prepare-se para avançar para configurações mais complexas no modo spoke.

    • Decisoes Arquiteturais
      2m 17s

      Vamos explorar as decisões arquiteturais que iremos utilizar nesse cenário.

    • Configurando ArgoCD
      17m 59s

      Descubra como configurar o ArgoCD no modo Hub via terraform.

    • Visão Geral
      3m 56s

      Descubra como criar uma infraestrutura para Continuous Deployment utilizando um monorepo como fonte da verdade. Explore a implementação de um ambiente multi-cluster com ArgoCD.

    • Estrutura Projeto
      1m 59s

      Explore a estruturação de um monorepo preparando ele para integrar com o ArgoCD

    • Karpenter
      5m 42s

      Nesta aula, exploramos a configuração inicial do Karpenter utilizando Helm Charts. Discutimos a importância de ajustes específicos para ambientes de produção e a integração com serviços AWS.

    • Configuracao Inicial Argocd
      6m 40s

      Nesta aula iremos fazer o setup inicial do ArgoCD para depois automatizar via código.

    • ArgoCD - Cluster Addon Applicationset
      10m 54s

      Nesta aula, exploramos a criação de um ApplicationSet para gerenciar o deploy de addons em clusters usando o ArgoCD. Aprendemos a estruturar pastas, configurar templates e geradores, e a lidar com desafios de sincronização e parametrização.

    • Metrics Server
      2m 54s

      Nesta aula vamos implementar o Metrics Server através do ArgoCD.

    • ArgoCD Cluster Configuration Applicationset
      5m 24s

      Nesta aula, exploramos a criação de uma aplicação no ArgoCD para gerenciar configurações cluster-wide, destacando a diferença entre recursos provenientes de Helm Charts e manifestos do Kubernetes.

    • Karpenter Node Pools
      9m 16s

      Nesta aula, exploramos a configuração final do Karpenter através do ArgoCD.

    • AWS Load Balancer Controller
      5m 53s

      Nesta aula, exploramos a configuração do AWS Load Balancer Controller através de ajustes no Terraform e integração com o Argo CD.

    • External DNS
      3m 31s

      Descubra como integrar e configurar o External DNS com a AWS, explorando a sinergia com o AWS Load Balancer Controller e o Route 53.

    • Cert-Manager
      2m 26s

      Descubra como configurar o Cert Manager com integração do Let's Encrypt. Explore a criação dos arquivos e a sincronização com o ArgoCD.

    • Ingress NGINX
      4m 42s

      Descubra como configurar o Ingress NGINX e integrar com o cert-manager, explorando técnicas de compressão e integração com AWS. Aprenda a otimizar o tráfego e garantir segurança com HTTPS, enquanto automatiza tudo com ArgoCD.

    • Kube Prometheus Stack
      4m 20s

      Descubra como configurar uma stack de monitoramento através de Prometheus e Grafana integrado com o ArgoCD.

    • ArgoCD Setup - Bootstrap Deadlock
      6m 21s

      Nesta aula, exploramos a fascinante capacidade do ArgoCD de se autoconfigurar, criando uma aplicação que automatiza sua própria configuração.

    • Repositorio Github
      7m 17s

      Nessa aula iremos automatizar a criação do repositório do GitHub para nosso projeto de Continuous Deployment

    • Repositorio Continuous Deployment
      2m 34s

      Nesta aula, mergulhamos na configuração de manifestos no ArgoCD, explorando a criação de arquivos no repositório de Continuous Deployment.

    • ApplicationSet
      1m 51s

      Descubra como automatizar a criação de ApplicationSets. Aprenda a parametrizar templates e a utilizar variáveis para otimizar o Continuous Deployment.

    • Projects
      4m 26s

      Nesta aula, exploramos a configuração de Projects do ArgoCD utilizando clusters lógicos e físicos.

    • Clusters
      3m 23s

      Nesta aula, exploramos a configuração de clusters no Argo CD utilizando o Terraform. Aprendemos a criar arquivos de configuração específicos para clusters que hospedam o ArgoCD e para clusters externos, garantindo a interação adequada entre eles.

    • Karpenter Addon
      10m 20s

      Nesta aula fazemos a automação para configurar o Karpenter no ArgoCD integrado com o Terraform.

    • Configurando Addons
      4m 9s

      Descubra como replicar um modelo para criar addons em um projeto de ArgoCD.

    • Cluster Configuration
      5m 43s

      Nesta aula iremos fazer a integração do configurações cluster-wide que estão diretamente relacionados ao projeto de terraform.

    • ArgoCD - automatizando setup
      4m 20s

      Automatizamos a configuração do ArgoCD através do Terraform, eliminando processos adicionais após a criação do cluster EKS.

    • Visão Geral
      5m 32s

      Vamos explorar o motivo da necessidade de automatizar o processo de configuração de um repositório no GitHub.

    • Criar Repositorio
      1m 25s

      Nessa aula iremos começar a configuração de um novo repositório para implementar o processo de Gitlob Workflow

    • Terraform - Repositorio
      9m 53s

      Nessa aula iremos automatizar os passos feito na aula anterior através do terraform.

    • Configurando RuleSets
      4m 9s

      Descubra como criar regras para gerenciar branches e garantir a integridade da aplicação em diferentes ambientes. Aprenda a configurar RuleSets que controlam deploys e protegem seu Workflow.

    • Terraform - RuleSet
      8m 12s

      Nessa aula iremos automatizar os processo de configuração de RuleSets feito na aula anterior através do terraform.

    • Configurando Semantic Release
      8m 40s

      Aprenda a implementar ações no GitHub para garantir a consistência dos commits e pull requests através do Semantic Commits para conseguir forçar o uso do SemVer.

    • Terraform - Semantic Release
      5m 58s

      Nesta aula vamos configurar o Semantic Release de maneira automatizada, para que todos novos repositórios sigam o padrão para implementar um processo de tags utilizando o SemVer.

Premium

Obtenha acesso ilimitado a todos os cursos com nosso plano premium - Explore sem Limites!

Aproveite a promoção de 2 anos de acesso!
12x R$
85
/mês

Plano premium

Tenha acesso a esse e a todos os cursos da plataforma com o plano Premium