Entrar em Contato
 Duração 35 horas

Programa do Curso

Dia 1 – Contentores e Gestão de Imagens

Introdução às Plataformas de Contentores

  • Implementação tradicional de aplicações comparada com a implementação baseada em contentores
  • Contentores e máquinas virtuais
  • Runtime de contentores e motores de contentores
  • O papel do Docker, Kubernetes e OpenShift
  • Arquiteturas comuns de plataformas de contentores
  • Fluxos de trabalho de desenvolvimento, teste e produção

Trabalho com Contentores

  • Executar e gerir contentores
  • Ciclo de vida dos contentores
  • Iniciar, parar e remover contentores
  • Executar comandos dentro de contentores
  • Variáveis de ambiente
  • Mapeamento de portas
  • Registos de contentores
  • Utilização de recursos e inspeção de processos

Construção de Imagens de Contentores

  • Estrutura de imagens e camadas
  • Criação de Dockerfiles e Containerfiles
  • Seleção de imagens base
  • Adição de dependências da aplicação
  • Configuração de pontos de entrada e comandos
  • Cache de imagens
  • Redução do tamanho das imagens
  • Construção de imagens reproduzíveis

Registos de Contentores

  • Registos públicos e privados
  • Etiquetagem e versionamento de imagens
  • Push e pull de imagens
  • Autenticação de imagens
  • Retenção e limpeza de imagens
  • Considerações básicas de segurança de imagens

Rede e Armazenamento de Contentores

  • Conceitos de rede de contentores
  • Rede bridge
  • Exposição de portas
  • Comunicação entre contentores
  • Bind mounts e volumes
  • Dados persistentes de contentores
  • Considerações de cópia de segurança (backup)

Exercícios Práticos

  • Executar e inspecionar contentores
  • Construir uma imagem de aplicação
  • Configurar portas e variáveis de ambiente
  • Publicar uma imagem num registo
  • Armazenar dados persistentes fora do contentor

Dia 2 – Arquitetura do Kubernetes e Cargas de Trabalho

Fundamentos do Kubernetes

  • O propósito da orquestração de contentores
  • Arquitetura do Kubernetes
  • Componentes do control plane
  • Nós de trabalho (worker nodes)
  • Servidor de API
  • Agendador (Scheduler)
  • Controladores
  • Estado do cluster e estado desejado
  • Comunicação com o cluster utilizando kubectl

Recursos do Kubernetes

  • Pods
  • ReplicaSets
  • Deployments
  • Namespaces
  • Etiquetas e anotações
  • Seletores
  • Definições declarativas de recursos
  • Manifestos YAML

Implantação de Aplicações

  • Criação e gestão de Deployments
  • Dimensionamento de cargas de trabalho
  • Atualização de imagens de contentores
  • Atualizações em curso (rolling updates)
  • Rollbacks
  • Histórico de implantações
  • Reinício de cargas de trabalho
  • Gestão de réplicas de aplicações

Configuração de Aplicações

  • ConfigMaps
  • Secrets
  • Variáveis de ambiente
  • Ficheiros de configuração
  • Separar o código da aplicação da configuração
  • Gestão de definições específicas do ambiente

Gestão de Recursos

  • Requisitos de CPU e memória
  • Limites de CPU e memória
  • Quotas de recursos
  • Intervalos de limites (Limit ranges)
  • Implicações na agendação
  • Diagnóstico de falhas relacionadas com recursos

Exercícios Práticos

  • Implantar uma aplicação em contentores
  • Criar e atualizar manifestos do Kubernetes
  • Dimensionar uma aplicação
  • Realizar uma atualização em curso e um rollback
  • Configurar a aplicação utilizando ConfigMaps e Secrets
  • Aplicar requisitos e limites de recursos

Dia 3 – Rede, Armazenamento e Segurança do Kubernetes

Rede do Kubernetes

  • Modelo de rede do cluster
  • Comunicação entre pods
  • Descoberta de serviços
  • DNS dentro do cluster
  • Serviços ClusterIP
  • Serviços NodePort
  • Serviços LoadBalancer
  • Conceitos de Ingress
  • Padrões de exposição de aplicações

Políticas de Rede

  • Controlo de tráfego entre cargas de trabalho
  • Regras de ingress e egress
  • Controlo de tráfego baseado em namespaces
  • Testes de conectividade de rede
  • Diagnóstico de comunicação de serviços

Armazenamento Persistente

  • Armazenamento efémero e persistente
  • Volumes
  • PersistentVolumes
  • PersistentVolumeClaims
  • StorageClasses
  • Provisionamento dinâmico
  • Modos de acesso
  • Políticas de reutilização
  • Armazenamento para aplicações com estado

Controlo de Acesso no Kubernetes

  • Conceitos de autenticação e autorização
  • Controlo de Acesso Baseado em Papéis (RBAC)
  • Papéis (Roles) e ClusterRoles
  • RoleBindings e ClusterRoleBindings
  • Contas de serviço
  • Acesso de privilégio mínimo
  • Inspecionar permissões efetivas

Segurança das Cargas de Trabalho

  • Contextos de segurança
  • Executar contentores como não-root
  • Capacidades do Linux
  • Sistemas de ficheiros em modo somente leitura
  • Gestão de segredos
  • Procedência de imagens
  • Riscos comuns de configuração

Exercícios Práticos

  • Expor uma aplicação utilizando serviços do Kubernetes
  • Configurar ingress
  • Restringir tráfego utilizando uma política de rede
  • Provisionar armazenamento persistente
  • Configurar permissões RBAC
  • Executar uma carga de trabalho com um contexto de segurança apropriado

Dia 4 – Trabalho com Ambientes OpenShift

Introdução ao OpenShift

  • OpenShift como plataforma de aplicações baseada em Kubernetes
  • Recursos do Kubernetes num ambiente OpenShift
  • Arquitetura do cluster OpenShift
  • Projetos e namespaces
  • Utilizadores da plataforma e contas de serviço
  • Trabalho com a consola web
  • Trabalho com a CLI do OpenShift

Gestão de Projetos e Acesso

  • Criação e gestão de projetos
  • Designação de permissões de utilizadores
  • Papéis ao nível do projeto
  • Acesso administrativo
  • Quotas de recursos
  • Intervalos de limites (Limit ranges)
  • Contas de serviço
  • Revisão de recursos do projeto

Implantação de Aplicações

  • Implantação de imagens de contentores
  • Criação de cargas de trabalho de aplicações
  • Gestão de implantações
  • Dimensionamento de aplicações
  • Atualização de versões de aplicações
  • Rollbacks
  • Gestão de configurações de aplicações
  • Trabalho com segredos

Exposição de Aplicações

  • Serviços no OpenShift
  • Rotas
  • Conceitos de TLS
  • Acesso interno e externo a aplicações
  • Nomes de domínio e certificados
  • Diagnóstico de problemas em rotas e serviços

Armazenamento no OpenShift

  • Persistent Volume Claims
  • StorageClasses
  • Anexar armazenamento a cargas de trabalho
  • Cargas de trabalho com estado
  • Permissões de acesso ao armazenamento
  • Diagnóstico de montagem de volumes

Agendação e Gestão de Nós

  • Etiquetas e seletores
  • Seletores de nós
  • Taints e tolerations
  • Conceitos de afinidade e anti-afinidade
  • Posicionamento de cargas de trabalho
  • Cordoning e drenagem de nós
  • Considerações de manutenção de nós

Exercícios Práticos

  • Aceder a um ambiente OpenShift
  • Criar e configurar um projeto
  • Implantar e expor uma aplicação
  • Configurar acesso de utilizadores e contas de serviço
  • Anexar armazenamento persistente
  • Dimensionar e atualizar uma carga de trabalho em execução

Dia 5 – Operações, Monitorização e Resolução de Problemas

Monitorização da Plataforma

  • Monitorizar a saúde do cluster e das aplicações
  • Métricas de recursos
  • Estado dos nós
  • Estado das cargas de trabalho
  • Capacidade e utilização de recursos
  • Identificação de constrangimentos de desempenho

Registos e Eventos

  • Registos de contentores
  • Registos de pods
  • Registos de contentores anteriores
  • Eventos do Kubernetes
  • Mensagens de aplicações e da plataforma
  • Filtragem e interpretação de dados operacionais

Verificações de Saúde

  • Probes de arranque
  • Probes de prontidão
  • Probes de vivacidade
  • Conceção de endpoints de saúde úteis
  • Diagnóstico de falhas em probes
  • Prevenção de reinícios desnecessários de aplicações

Resolução de Problemas em Cargas de Trabalho

  • Pods em espera (Pending)
  • Falhas de extração de imagens
  • Laços de crash
  • Configuração incorreta de variáveis de ambiente
  • Montagens falhadas
  • Recursos insuficientes
  • Erros de permissão
  • Problemas de conectividade de serviços e rotas
  • Problemas de DNS
  • Falhas no arranque de aplicações

Segurança Operacional

  • Revisão de permissões
  • Utilização de contas de serviço
  • Gestão segura de credenciais
  • Práticas de segurança de imagens
  • Isolamento de rede
  • Auditoria de acesso à plataforma
  • Aplicação do princípio do privilégio mínimo

Manutenção e Gestão do Ciclo de Vida

  • Verificações de rotina da plataforma
  • Manutenção de nós
  • Considerações de cópia de segurança de aplicações
  • Cópia de segurança de configurações
  • Planificação de atualizações
  • Gestão de alterações
  • Teste de atualizações
  • Planificação de rollbacks
  • Conceitos de recuperação de desastres

Taller Prático Final

Os participantes concluem um cenário operacional de ponta a ponta:

  • Construir e etiquetar uma imagem de contentor.
  • Publicar a imagem num registo.
  • Implantar a aplicação no Kubernetes ou OpenShift.
  • Configurar definições e credenciais da aplicação.
  • Expor a aplicação.
  • Anexar armazenamento persistente.
  • Configurar permissões de acesso.
  • Adicionar verificações de saúde.
  • Dimensionar e atualizar a aplicação.
  • Diagnosticar e resolver uma falha introduzida.

Formato do Curso

  • Lições interativas e discussões técnicas.
  • Demonstrações do instrutor.
  • Exercícios práticos abrangentes.
  • Oficinas de administração e resolução de problemas baseadas em cenários.
  • Trabalho prático em ambientes de contentores, Kubernetes e OpenShift.

Opções de Personalização do Curso

  • O curso pode ser adaptado à infraestrutura existente, ao provedor de cloud e às ferramentas de contentores dos participantes.
  • O equilíbrio entre tópicos de Docker, Kubernetes e OpenShift pode ser ajustado de acordo com a experiência da equipa.
  • Os exercícios práticos podem ser adaptados às aplicações da organização, aos processos de implantação e aos requisitos operacionais.

Nota sobre Marcas

O OpenShift é uma marca comercial da Red Hat, Inc. Esta formação desenvolvida de forma independente não está afiliada, endossada ou autorizada pela Red Hat.

Requisitos

Os participantes devem ter:

  • Experiência no utilizo da linha de comandos do Linux.
  • Conhecimentos básicos de administração de sistemas ou DevOps.
  • Compreensão geral de conceitos de rede.
  • Familiaridade com processos de implementação de software.

A experiência prévia com Docker, Kubernetes ou OpenShift é útil, mas não é obrigatória.

Formação Empresarial Personalizada

Soluções de formação concebidas exclusivamente para empresas.

  • Conteúdo Personalizado: Adaptamos o programa e os exercícios práticos aos objetivos e necessidades reais do seu projeto.
  • Horário Flexível: Datas e horários adaptados à agenda da sua equipe.
  • Formato: Online (ao vivo), In-Company (em suas instalações) ou Híbrido.
Investimento

Preço por grupo privado, formação online em direto, a partir de 6500 € + VAT*

Entre em contato conosco para obter um orçamento preciso e conhecer nossas promoções mais recentes

Testemunhos de Clientes (7)

Próximas Formações Provisórias

Categorias Relacionadas