Data: Em breve!
Horário: das 9h às 18h
Carga horária: 16 horas
Local: CT da Novatec, em SP
Valores do investimento:
Primeiro lote: R$ 650,00
Segundo lote: R$ 700,00
O pagamento pode ser parcelado em até 12x, mas a quantidade de parcelas permitidas é definida pela bandeira do seu cartão.
Instrutor: Wellington Figueira da Silva
Curso Kubernetes – 5ª Turma
Sobre o Curso
Kubernetes é uma plataforma opensource que te permite orquestrar contêineres que implementem as especificações da OCI (Open Container Initiative) como rkt (Rocket), ContainerD e também o famoso Docker. Kubernetes é um dos projetos opensource mais bem sucedido de todos os tempos, com ele é possível ter um cluster de máquinas rodando contêineres fazendo controle de aplicações com alto grau de automação, sem downtime, com escalabilidade e alta disponibilidade.
Objetivo
O curso prepara o aluno para criar, manter e atualizar clusters de Kubernetes, sendo o principal objetivo é fazer o aluno utilizar toda a sua capacidade para manter aplicações de maneira automatizada, com tolerância a falhas, com elasticidade, etc.
O aluno estará apto a criar clusters Kubernetes seja local, bare metal ou cloud providers, trabalhar em sua própria máquina num fluxo de desenvolvimento com um cluster local, controlar acesso a clusters subir aplicações e jobs em contêineres dentro dos clusters, monitorar essas aplicações e fazer debug em caso de falhas, escalar essas aplicações, montar serviços baseados em cron, trabalhar com serviços stateful (baseados em armazenamento), controlar updates e rollbacks das aplicações, configurar acesso externo aos serviços que estejam rodando, injetar configurações e variáveis de ambiente, colocar servidores em manutenção sem downtime.
A quem se destina esse curso?
Programadores e administradores de sistemas que querem melhorar o fluxo de trabalho e entrega de suas aplicações e desejam aproveitar melhor os recursos de máquina sem deixar de lado a padronização de ambientes.
Pré-requisitos
É necessário ter conhecimento de Linux e linha de comando pois será onde faremos a maioria dos exercícios. Também é necessário ter feito o curso de Docker ou bons conhecimentos do que são contêineres principalmente Docker onde faremos a maioria de nossos exemplos.
Também é desejável uma leve noção de programação para utilizar aplicações web simples como exemplos; conhecimentos básicos de controle de versão com Git pois nossos exercícios de exemplos são versionados.
Por fim, deve-se ter conta no Docker Hub e ou no Quay.io para hospedarmos nossas imagens e também no GitHub para trabalharmos os exemplos do curso.
Importante: O aluno deverá trazer seu próprio notebook e carregador.
Conteúdo do Curso Kubernetes
Introdução
1. Orquestração de Contêineres
Veremos quais os problemas mais comuns quando o contêiner que rodamos em nossa máquina vai para larga escala em diversas máquinas e como um orquestrador resolve isso.
2. O que é Kubernetes
Comentaremos a sua história, origem, os contribuidores, o know-how envolvido e curiosidades.
3. Arquitetura cliente servidor
Abordaremos como que administramos um cluster Kubernetes usando arquitetura cliente servidor, o comando kubectl, e alternativas como curl e wget.
Clusters
1. Kubectl
Veremos como instalar nos principais sistemas operacionais o cliente de linha de comando que utilizamos para mandar comandos para nossos clusters Kubernetes durante os exercícios. Veremos também como criar recursos de maneira imperativa com os parâmetros e opções do comando kubectl e de maneira declarativa usando arquivos de manifesto com detalhes dos recursos a serem criados.
2. Instalações e ambientes
Abordaremos as características das principais ferramentas de criação e / ou manutenção de clusters Kubernetes tais como Docker Desktop, Minikube, Kubeadm, Kops, Kubespray, Kind, Microk8s e K3s
Também abordaremos os principais serviços que te entregam um cluster kubernetes pronto para uso nos principais provedores de cloud como GKE, AKS, EKS, etc.
Estruturas
1. Hosts
Veremos quais os tipos de hosts possíveis, seus papéis e requisitos. Também veremos como buscar detalhes das máquinas que compõem um cluster kubernetes e como colocar as máquinas em modo que seja possível dar manutenção sem ocasionar downtime nas aplicações.
2. Namespaces
Como funciona esse conceito que permite particionar nossos clusters Kubernetes.
3. Pods
Veremos o conceito, o problema que o pod resolve, com criar pods, atualizar, acessar a aplicação com port-forward, adicionar processo a um pod em execução, buscar os detalhes, acessar os logs, construir pods usando arquivos de descrição em formato yaml ou json (maneira declarativa) ou com a linha de comando kubectl (maneira imperativa), usando pods com mais de um container, definir limites de recursos, trabalhar com health checks, injetar variáveis de ambiente, injetar arquivos de configuração, volumes para persistência de dados, trabalhar com senhas, influenciar em quais máquinas os pods podem ser executados.
4. Controllers
Abordaremos os principais tipos de estruturas de controle, tais como replication controller, replicaset, daemonset, statefulset, jobs, cronjobs onde conseguimos controlar como uma aplicação será executada e como o kubernetes vai manter ela em execução. Também trabalharemos com deployment, veremos como fazer uma atualização de aplicação sem downtime, trocando de uma vez, controlando a quantidade de instâncias por vez, como voltar para a versão anterior ou até versões mais antigas, fazer debug e descobrir porque uma aplicação pode não atualizar usando os recursos do Kubernetes.
5. Services e Service Discovery
Mostraremos como fazer com que uma aplicação pronta e disponível em nosso cluster possa ser acessada tanto internamente quanto via internet. Quais os tipos de serviços, como é o comportamento de cada tipo, como uma aplicação consegue se comunicar com as demais.
Arquitetura
Mostraremos como o Kubernetes funciona debaixo do capô, quais são os componentes, o que cada componente faz.
Veremos como montamos um cluster manualmente, vamos inclusive montar um cluster local, veremos também como montar um cluster de alta disponibilidade e cuidados com cópias de segurança (backups) e restaurações.
Certificações
Mostraremos quais as certificações disponíveis e suas características e pré requisitos, dicas sobre como comprar, agendar e realizar as provas.
Benefícios
- Coffee breaks
- Internet wireless
- Arquivos de códigos, imagens, scripts e solução dos exercícios
- Certificado impresso
Política de cancelamento
Cancelamento com antecedência igual ou maior do que 7 dias corridos antes do curso => devolução de 70% do valor líquido recebido pelo Centro de Treinamento da Novatec (exclui-se do valor as taxas pagas à plataforma de inscrição), ou o valor pode ser convertido em crédito para a próxima turma do mesmo curso, sujeito à disponibilidade.
Cancelamento com antecedência igual ou menor do que 6 dias corridos antes do curso => o valor não será reembolsado.
Depoimentos de quem já fez o Curso Kubernetes
“Ótimo! Conteúdo bem prático e direto ao ponto.” – Eduardo Ferreira Galego
Instrutor
Wellington Figueira da Silva é técnico em telecomunicações com registro no CREA-SP diplomado pelo instituto SENAI e atua na área de TI desde 2000 desenvolvendo e mantendo websites, sistemas baseados em plataforma web, implantações de VoIP, dando suporte e etc. Atualmente possui certificação ZCE PHP 5.3, CKA (Certified Kubernetes Administrator) e DCA (Docker Certified Associate), contribuidor do PHP-SP com artigos e palestras e Docker Community Leader em São Paulo. É autor do livro Aprendendo Docker, lançado pela Novatec Editora.