Disciplina: DevOps
Professor: Alexandre Tavares
Instituição: Centro Universitário UniFAAT
Semestre: 2026-2
Carga Horária: 80 horas
Você faz parte da nova equipe de Platform Engineering da TechNova — uma startup promissora cuja API crítica está à beira do colapso. Sem controle de versão, sem testes, sem automação. Sua missão: transformar o caos em uma plataforma escalável, segura e totalmente automatizada na AWS.
Ao longo de 15 aulas, você vai resgatar a TechNova desde o primeiro git init até pipelines de CI/CD completas com deploy Blue/Green e Canary na nuvem — com IA integrada ao fluxo de trabalho usando Kiro e AWS Bedrock.
| Ferramenta | Uso |
|---|---|
| Git + GitHub | Controle de versão, colaboração e entrega via PR |
| Docker + Docker Compose | Containerização e ambiente local |
| Terraform | Infraestrutura como Código (AWS) |
| AWS (Free Tier) | EC2, VPC, RDS, S3, IAM, ALB |
| GitHub Actions | CI/CD — Integração e Entrega Contínua |
| Node.js + Express | Aplicação base (API de pedidos) |
| Kiro | IDE com IA integrada (copiloto DevOps) |
| AWS Bedrock | IA generativa para automação inteligente |
unifaat-2026-2-devops/
├── README.md # Este arquivo
├── app-technova/ # Aplicação base (API Node.js)
├── modulo-01/ # Fundamentos e IA
│ ├── aula-01/ # Git + Docker
│ └── aula-02/ # Docker Compose + Intro IA/Kiro
├── modulo-02/ # Infraestrutura AWS com Terraform
│ ├── aula-03/ # Terraform Fundamentals + IAM
│ ├── aula-04/ # VPC, Networking e EC2
│ ├── aula-05/ # RDS e Remote State
│ ├── aula-06/ # Terraform Modules (Básico ao Avançado)
│ └── aula-07/ # Revisão Arquitetura + IA para IaC
├── modulo-03/ # CI/CD e Automação
│ ├── aula-08/ # GitHub Actions + CI + Secrets
│ └── aula-09/ # Docker Registry + IA no CI/CD
├── modulo-04/ # Entrega Contínua e Deploy
│ ├── aula-10/ # Terraform Automatizado + CD Pipelines
│ ├── aula-11/ # Blue/Green + Canary Deployments
│ └── aula-12/ # Rollback Strategies + AIOps
├── modulo-05/ # Projeto Integrador
│ ├── aula-13/ # Novo Microserviço + Pipeline E2E
│ ├── aula-14/ # Disaster Simulation + Code Review + Agente Bedrock
│ └── aula-15/ # Apresentação Final
├── entregas/ # Pasta para entregas dos alunos via PR
│ ├── aula-01/ ... aula-15/
└── .github/
└── pull_request_template.md # Template para PRs de entrega
| Aula | Tema | Descrição |
|---|---|---|
| 01 | Git + Docker | Controle de versão, branches, merge, remotes + Containers, Dockerfile, imagens |
| 02 | Docker Compose + Intro IA | Orquestração multi-container + Introdução ao Kiro como copiloto DevOps |
| Aula | Tema | Descrição |
|---|---|---|
| 03 | Terraform + IAM | IaC, HCL, providers, init/plan/apply + Users, roles, policies, least privilege |
| 04 | VPC + EC2 | Subnets públicas/privadas, IGW, Route Tables + Instâncias, Security Groups, SSH |
| 05 | RDS + Remote State | PostgreSQL gerenciado + S3 backend, DynamoDB locking |
| 06 | Terraform Modules | Módulos locais, for_each, Registry, composição, versionamento |
| 07 | Revisão + IA para IaC | Arquitetura completa, validação E2E + Kiro/Bedrock para geração de Terraform |
| Aula | Tema | Descrição |
|---|---|---|
| 08 | GitHub Actions + CI + Secrets | Workflows, lint, test, build, artifacts + Secrets, environments, approval gates |
| 09 | Docker Registry + IA no CI/CD | Build/push ghcr.io + PR review automatizado com IA |
| Aula | Tema | Descrição |
|---|---|---|
| 10 | Terraform Automatizado + CD | GitOps (plan on PR, apply on merge) + Pipeline CI→Build→Deploy |
| 11 | Blue/Green + Canary | Zero downtime com ALB + Rollout gradual com weighted routing |
| 12 | Rollback + AIOps | Feature flags, DB migrations, runbooks + Anomaly detection com Bedrock |
| Aula | Tema | Descrição |
|---|---|---|
| 13 | Novo Microserviço + E2E | Criar technova-notifications do zero com pipeline completo |
| 14 | Disaster Simulation + Agente Bedrock | Chaos Engineering, Game Day + Agente DevOps com Bedrock |
| 15 | Apresentação Final | Demo da plataforma completa com IA integrada |
O curso incorpora IA de forma progressiva em 5 aulas:
| Aula | Tema IA | Nível | Ferramentas |
|---|---|---|---|
| 02 | Introdução: IA como copiloto no DevOps | Demo | Kiro |
| 07 | Geração de IaC com IA (Terraform via prompts) | Hands-on | Kiro + Bedrock |
| 09 | PR Review automatizado, análise de código | Hands-on | Bedrock + GitHub Actions |
| 12 | AIOps: detecção de anomalias, monitoramento preditivo | Hands-on | Bedrock + CloudWatch |
| 14 | Agente DevOps completo integrado ao pipeline | Avançado | Bedrock Agent + Lambda |
Cada pasta aula-XX/ possui 7 arquivos padronizados:
| Arquivo | Conteúdo |
|---|---|
README.md |
Visão geral, objetivos, contexto narrativo e cronograma (~5h) |
TA.md |
Trabalho Anterior — leitura prévia com teoria completa + 3 questões |
trabalho-em-aula.md |
Atividade prática guiada em sala |
laboratorio-parte1.md |
Lab hands-on parte 1 (~120 min) |
laboratorio-parte2.md |
Lab hands-on parte 2 (~120 min) |
TF.md |
Trabalho de Fixação — exercício semanal com entrega via PR |
materiais-complementares.md |
Links, vídeos e referências extras |
Cada TF deve ser desenvolvido no repositório pessoal do aluno (criado na Aula 01: unifaat-devops-portfolio). A entrega neste repositório da disciplina consiste em um arquivo Markdown (entrega.md) contendo o link para o seu repositório e as evidências solicitadas.
- Desenvolva o TF no seu repositório pessoal (
unifaat-devops-portfolio) - Faça fork deste repositório da disciplina (se ainda não fez)
- Crie uma branch:
SEU-RA/tf-XX(ex:12345/tf-01) - Crie a pasta
entregas/aula-XX/SEU-RA/ - Adicione o arquivo
entrega.mdcom o link do seu repositório + evidências (veja modelo abaixo) - Faça commits descritivos seguindo Conventional Commits
- Abra um Pull Request para o repositório original com título:
[Aula XX] RA: XXXXX - Nome Completo
# Entrega — Aula XX: [Título do TF]
**Aluno:** [Seu nome completo]
**RA:** [Seu RA]
**Data:** [Data da entrega]
## Repositório
- URL: https://github.com/SEU-USUARIO/unifaat-devops-portfolio
## Evidências
- [ ] [Liste os entregáveis conforme solicitado no TF]
- [ ] [Adicione screenshots ou logs quando pedido]Importante: O repositório pessoal do aluno deve estar público para que o professor consiga avaliar. PRs que não contenham o link para o repositório ou cujo repositório esteja privado serão considerados incompletos.
*.tfstatee*.tfstate.backup.env(variáveis de ambiente com secrets)node_modules/*.pem(chaves privadas)
Cada aula possui uma atividade de discussão/prática em sala (trabalho-em-aula.md). A entrega das respostas vale 1 ponto na nota final do semestre — contabilizado apenas ao final, com todos os trabalhos entregues.
Um arquivo trabalho-em-aula.md com as respostas das atividades realizadas em sala (discussões, análises, tabelas preenchidas). O modelo específico de cada aula está dentro do respectivo trabalho-em-aula.md.
Na mesma pasta da entrega do TF, no fork da disciplina:
entregas/aula-XX/SEU-RA/trabalho-em-aula.md
- O arquivo pode ser adicionado no mesmo PR do TF ou em PR separado
- A entrega é individual — mesmo que a atividade tenha sido em grupo
- Entregas parciais (apenas algumas aulas) não garantem o ponto
- Conta GitHub (gratuita)
- Docker Desktop instalado
- Node.js 18+ instalado
- Editor de código (Kiro ou VS Code recomendado)
- Conta AWS (Free Tier) — a partir do Módulo 2
- Terminal (Git Bash no Windows, Terminal no macOS/Linux)
- Terraform instalado (>= 1.0)
Todos os exercícios utilizam apenas recursos elegíveis ao AWS Free Tier:
| Recurso | Limite Gratuito |
|---|---|
| EC2 t2.micro | 750 horas/mês |
| RDS db.t3.micro | 750 horas/mês |
| S3 | 5 GB |
| DynamoDB | 25 GB |
| ALB | 750 horas/mês |
| Lambda | 1M requests/mês |
| VPC, IAM, Security Groups | Sempre gratuitos |
⚠️ Sempre executeterraform destroyapós os laboratórios para evitar custos.
- Pro Git Book (PT-BR)
- Docker Documentation
- Terraform Documentation
- GitHub Actions Documentation
- AWS Free Tier
- AWS Bedrock Documentation
- Kiro IDE
Alexandre Tavares
Docente de DevOps, Engenharia de Dados e Cloud Computing
Centro Universitário UniFAAT — Atibaia/SP
Este repositório é material didático do curso de Análise e Desenvolvimento de Sistemas do Centro Universitário UniFAAT.