Pular para o conteúdo principal

Fase 4: Fundamentos em DevOps

Autor: GPS

Como esta fase se aplica à nuvem?

DevOps é tudo que envolve obter a sua solução para rodar com mais eficiência desde a implementação até as atualizações.

Não é específico para Cloud, você também pode implementar as práticas DevOps tanto nos modelos on-premise quanto nos híbridos. DevOps não está limitado a um único cargo, embora muitas companhias têm cargos dedicados à DevOps. Se o seu objetivo é se tornar um(a) engenheiro(a) DevOps, nesta fase você vai obter uma introdução mas precisará se aprofundar mais depois.

DevOps é uma cultura, e não uma ferramenta ou serviço específicos. Leia sobre o que é DevOps. Cada plataforma de nuvem tem a sua suite de ferramentas DevOps, eu linkei alguns artigos aqui:

Eu também acho que vale a pena ler o Projeto Phoenix. É uma leitura bem divertida porque é uma ficção mas que explica a importância da cultura DevOps. Se você preferir algo mais parecido com um livro didático com ideias similares, dê uma olhada no Manual DevOps.

Você deveria ter concluído o Desafio CUrrículo na Nuvem da fase anterior. Esse projeto te apresenta os conceitos de DevOps, se você não os conhece, volte e faça.

Como desmembrar esta fase?

OrdemTópicoComprometimento
1CI/CD com GitHub Actions1 semana
2IaC com Terraform1 semana
3Containers com Docker1 semana
4Orquestração de containers com Kubernetes1 semanas
5Monitoramento com Prometheus1 semanas

Claro, sinta-se livre para gastar o tempo que você quiser. As pessoas pediram uma linha do tempo e detalhamento, então eu os adicionei. Cada prática de DevOps é importante, mas esses são os mais usados para um nível de entrada/júnior. Você já deve estar familiarizado com o controle de versão da fase 2.

Fontes

FonteNotes
Tutorial GitHub Actions - Conceitos básicos e pipeline CI/CD com DockerNana é a rainha do DevOpse criou alguns dos melhores conteúdos de aprendizado sobre o assunto que existe por aí. Este tutorial irá lhe introduzir ao GitHub Actions.
Curso completo de Terraform - Do INICIANTE ao PROFISSIONAL!Aprenda como usar o Terraform para automatizar sua infraestrutura na AWS.
Tutorial Docker para iniciantesUm curso completo e "mão na massa" de Docker com muitas demonstrações e explicações de conceitos por detrás para que você realmente entenda-os.
Curso intensivo de Kubernetes para iniciantes absolutosTutorial mão na massa sobre Kubernetes
Tutorial completo sobre monitoramento com PrometheusUm Tutorial completo sobre monitoramento com Prometheus.

Projetos

TítuloResource
Jornada DevOps usando Azure DevOpsEste tutorial/laboratório irá guiá-lo através de uma jornada DevOps usando Azure DevOps. Desde a configuração do seu pipeline até a implementação de uma aplicação de um cluster do Azure Kubernets!
DevOps da maneira difícil - AzureEste tutorial contém uma solução completa do mundo real para configurar um ambiente que usa tecnologias e práticas de DevOps para implantar aplicativos e serviços de nuvem/infraestrutura de nuvem na Azure.
DevOps da maneira difícil - AWSEste tutorial contém uma solução completa do mundo real para configurar um ambiente que usa tecnologias e práticas de DevOps para implantar aplicativos e serviços de nuvem/infraestrutura de nuvem na AWS.

Coisas que você deveria estar familiarizado ao final desta fase

  • Ser capaz de explicar cada prática DevOps

    • Por que cada uma delas importa
    • O que cada uma delas faz
    • A mais populares ferramentas de cada uma delas
  • Ter projetos pessoais no GitHub. Para pelo menos 2 dos projetos:

    • Ter um pipeline CI/CD
    • Ter arquivos IaC para cada projeto
    • Ter monitoramento implementado para cada um
      • Garanta que você pode entender o registro de logs e os dados das métricas
    • Se algo der errado com o seu projeto, saber como solucionar os problemas

Certificações que você pode querer dar uma olhada