Curso Container Orchestration using kubernetes
24 horasVisão Geral
O curso Container Orchestration Using Kubernetes é um treinamento abrangente que explora a orquestração de contêineres com o Kubernetes, capacitando os participantes a projetar, implantar e gerenciar aplicações conteinerizadas em escala. Ele cobre desde a configuração de clusters e gerenciamento de Pods até tópicos avançados como redes, armazenamento, segurança, monitoramento e integração com pipelines CI/CD. Os alunos aprenderão a garantir alta disponibilidade, resiliência e observabilidade em clusters Kubernetes, utilizando ferramentas modernas como Helm, Prometheus e Istio (introdução básica). Curso Container Orchestration using kubernetes Estruturado em com 24h totais, combina teoria, demonstrações detalhadas e exercícios práticos para oferecer uma experiência completa em orquestração com Kubernetes.
Objetivo
Após realizar este Curso Container Orchestration using kubernetes, você será capaz de:
- Configurar e gerenciar um cluster Kubernetes básico.
- Implantar e orquestrar aplicações conteinerizadas com Pods e Deployments.
- Configurar Services para comunicação interna e externa.
- Escalar e atualizar aplicações no Kubernetes com zero downtime.
- Monitorar e solucionar problemas básicos em um cluster Kubernetes.
- Compreender os conceitos fundamentais do Kubernetes e sua arquitetura
- Criar e gerenciar clusters Kubernetes
- Implantar e escalar aplicações conteinerizadas
- Configurar redes, volumes e armazenamento persistente no Kubernetes
- Implementar segurança, monitoramento e práticas de observabilidade
- Integrar pipelines de CI/CD para automação de deploys no Kubernetes
Publico Alvo
- Administradores de sistemas que desejam gerenciar aplicações conteinerizadas.
- Engenheiros DevOps implementando orquestração em pipelines de entrega.
- Desenvolvedores que precisam implantar e escalar serviços no Kubernetes.
- Arquitetos de TI projetando soluções baseadas em contêineres.
- Profissionais buscando certificações Kubernetes (ex.: CKA, CKAD).
Pre-Requisitos
- Conhecimento básico de contêineres (ex.: Docker, imagens, contêineres).
- Familiaridade com Linux (ex.: comandos básicos, gerenciamento de processos).
- Noções de redes (ex.: TCP/IP, portas, DNS) são recomendadas.
- Experiência com YAML ou JSON é desejável, mas não obrigatória.
Materiais
Inglês/Português/Lab PráticoConteúdo Programatico
Dia 1 – Módulo 1: Introdução e Configuração do Kubernetes
- Tópicos:
- O que é Kubernetes? Visão geral, história e casos de uso na orquestração.
- Arquitetura do Kubernetes: Nodes, Pods, Services e Controllers: Componentes do Control Plane (API Server, Scheduler, etcd) e Worker Nodes (Kubelet, Kube-Proxy).
- Comparação entre Kubernetes e outras ferramentas de orquestração: Docker Swarm, Nomad e Mesos.
- Instalação e configuração de um cluster Kubernetes: Setup com Minikube, Kind e introdução a clusters em nuvem (ex.: EKS, GKE).
- Atividade Prática: Instalar o Minikube, criar um cluster local e explorar componentes com kubectl get (ex.: nodes, pods).
Dia 2 – Módulo 2: Gerenciamento de Workloads e Recursos
- Tópicos:
- Conceito de Pods e Deployments: Ciclo de vida de Pods e gerenciamento com Deployments.
- Gerenciamento de recursos com Namespaces e Labels: Organização de workloads e filtragem com seletores.
- Configuração de Services para exposição de aplicações: ClusterIP, NodePort e LoadBalancer.
- Trabalhando com ConfigMaps e Secrets: Injeção de configurações e dados sensíveis em Pods.
- Atividade Prática: Criar um Deployment com 3 réplicas, expor via Service NodePort e configurar um ConfigMap/Secret para uma aplicação (ex.: NGINX).
Dia 3 – Módulo 3: Escalabilidade, Alta Disponibilidade e Resiliência
- Tópicos:
- Autoescalonamento de aplicações (HPA - Horizontal Pod Autoscaler): Configuração baseada em métricas de CPU/memória.
- Balanceamento de carga no Kubernetes: Uso de LoadBalancer e integração com provedores de nuvem.
- Gerenciamento de atualizações e rollbacks com Deployments: Estratégias de Rolling Update e rollback manual.
- Estratégias de resiliência para aplicações críticas: Liveness/Readiness Probes e tolerância a falhas.
- Atividade Prática: Configurar um HPA para escalar um Deployment, simular carga com kubectl, e executar um rollback após uma atualização.
Dia 4 – Módulo 4: Redes, Armazenamento e Segurança
- Tópicos:
- Conceitos de redes no Kubernetes: Modelo de rede, CNI (ex.: Flannel, Calico) e DNS com CoreDNS.
- Configuração de Ingress Controllers: Implantação de NGINX Ingress e roteamento baseado em domínio.
- Uso de Volumes e Persistent Volumes (PV/PVC): Configuração de armazenamento persistente.
- Storage Classes e provisionamento dinâmico: Integração com provedores de nuvem ou locais.
- Princípios de segurança no Kubernetes: Boas práticas para clusters e workloads.
- Implementação de RBAC (Role-Based Access Control): Criação de Roles e RoleBindings.
- Uso de Network Policies para controle de tráfego: Restrição de comunicação entre Pods.
- Atividade Prática: Configurar um Ingress para uma aplicação, criar um PVC com Storage Class e aplicar uma Network Policy para isolar namespaces.
Dia 5 – Módulo 5: Monitoramento, CI/CD e Boas Práticas
- Tópicos:
- Ferramentas de monitoramento: Prometheus e Grafana: Configuração do Metrics Server e scraping de métricas.
- Monitoramento de métricas do cluster e das aplicações: Dashboards personalizados no Grafana.
- Configuração de logs centralizados com Fluentd e Elasticsearch: Coleta e visualização de logs.
- Debugging e troubleshooting no Kubernetes: Uso de kubectl exec, logs e describe. Krishnan
- Introdução ao CI/CD com Kubernetes: Conceitos de integração contínua e entrega contínua.
- Configuração de pipelines de deploy usando GitHub Actions e Jenkins: Automação de builds e deploys.
- Deploy automatizado com Helm Charts: Instalação e uso de Helm para gerenciamento de pacotes.
- Estratégias de Blue-Green Deployment e Canary Releases: Implementação com Kubernetes e Helm.
- Atividade Prática: Configurar Prometheus/Grafana para monitorar um cluster, criar um pipeline GitHub Actions para deploy com Helm e simular um Canary Release.