Curso Docker and Kubernetes Fundation

  • Process Integration & Implementation Solman

Curso Docker and Kubernetes Fundation

32 horas
Visão Geral

Este Curso Docker and Kubernetes Fundation, oferece uma combinação de aprendizado teórico e laboratórios práticos, para que você tenha a oportunidade de aplicar seu conhecimento em um ambiente prático. O curso abrange as habilidades essenciais do Kubernetes e do Docker, bem como uma introdução básica à Integração Contínua.

  • Você é um desenvolvedor, arquiteto ou líder de equipe técnica sem uma compreensão básica do Kubernetes e do Docker? Para atender às demandas do seu local de trabalho, você precisará ter um forte conhecimento das tecnologias Kubernetes e Docker nos ambientes de desenvolvimento, produção e preparação.
Objetivo

Após realizar este Curso Docker and Kubernetes Fundation, você será capaz de:

  • Aprenda os usos fundamentais da tecnologia de contêineres e os princípios arquitetônicos de como aplicar contêineres a desafios técnicos.
  • Crie contêineres com soluções em pacote e software personalizado.
  • Use os ambientes CLI Docker e Kubernetes para implantar soluções em ambientes locais (Docker) e de cluster (Kubernetes).
  • Saiba como serviços com estado – como bancos de dados, soluções de streaming e outros aplicativos especializados – podem ser implantados em configurações altamente disponíveis com redundância e descoberta de serviço/balanceamento de carga.
  • Mostre como outros componentes – podem ser usados ​​para integrar serviços dentro da plataforma Kubernetes.
  • Explore como o Docker e tecnologias como Jenkins podem ser usados ​​para testar e criar contêineres continuamente com base em alterações no código-fonte.

Tópicos

  • Tecnologia de contêiner Docker e Linux
  • Docker em ação
  • Gerenciando o estado do Docker
  • Open Container Initiative e Interface do Container Runtime
  • Arquitetura do Kubernetes
  • Trabalhando com Kubernetes
  • Carga de trabalho do Kubernetes
  • Agendamento e gerenciamento de nós
  • Gerenciamento de rede
  • Como gerenciar o armazenamento persistente
  • Trabalhando com o leme
  • Registro, monitoramento e solução de problemas
  • Fundamentos de Integração Contínua
Publico Alvo
  • Desenvolvedores,
  • Arquitetos de sistemas,
  • Líderes de equipes técnicas,
  • Administradores de sistemas e profissionais de DevOps que desejam entender e usar o Kubernetes em ambientes de nuvem.
Pre-Requisitos
  • Proficiência com a interface de linha de comando do Linux (CLI)
  • Ampla compreensão da administração do sistema Linux: sistema de arquivos Linux, rede e scripts bash.
  • Conceitos e metodologias de programação de computadores. Exemplos de código completos para o curso são fornecidos nas linguagens de programação Python e Java.
Materiais
Inglês + Exercícios + Lab Pratico
Conteúdo Programatico

Docker and Linux Container Technology: Introduction and Use-Cases

  1. Modern Infrastructure Terminology
  2. Virtualization
  3. Hypervisors
  4. Hypervisor Types
  5. Type 1 Hypervisors
  6. Type 2 Hypervisors
  7. Type 1 vs Type 2 Processing
  8. Paravirtualization
  9. Virtualization Qualities (1/2)
  10. Virtualization Qualities (2/2)
  11. Disadvantages of Virtualization
  12. Containerization
  13. Virtualization vs Containerization
  14. Where to Use Virtualization and Containerization
  15. Containerization: High-Level
  16. Popular Containerization Systems
  17. What are Linux Containers
  18. Docker
  19. OpenVZ
  20. Solaris Zones (Containers)
  21. Container Orchestration Tools
  22. Docker Swarm
  23. Kubernetes
  24. Mesos and Marathon
  25. Mesos and Marathon (contd.)
  26. Docker Use-Cases
  27. Microservices
  28. Microservices and Containers / Clusters

Docker in Action

  1. Docker Basics
  2. Where Can I Run Docker?
  3. Installing Docker Container Engine
  4. Docker Toolbox
  5. What is Docker?
  6. Docker Architecture
  7. Docker Architecture Diagram
  8. Docker Images
  9. Docker Containers
  10. Docker Integration
  11. Docker Services
  12. Docker Application Container Public Repository
  13. Docker Run Command
  14. Starting, Inspecting, and Stopping Docker Containers
  15. Docker Volume
  16. Dockerfile
  17. Docker Compose
  18. Using Docker Compose
  19. Dissecting docker-compose.yml
  20. Specifying services
  21. Dependencies between containers
  22. Injecting Environment Variables

Managing Docker State

  1. State and Data in Docker
  2. Volumes
  3. More About Volumes
  4. Uses for Volumes
  5. Working With Volumes
  6. Create Volume
  7. Use Volumes with Containers
  8. Bind Mounts
  9. Using Bind Mounts
  10. tmpfs Mounts
  11. Storing Data in the Container
  12. Storage Drivers
  13. Remote Data Storage
  14. Networking
  15. The Default Bridge Network
  16. User-Defined Bridge Networks
  17. Docker Network Commands
  18. Creating a User-Defined Bridge Network

Open Container Initiative and Container Runtime Interface

  1. Open Container Initiative (OCI)
  2. Docker
  3. Docker Engine Architecture
  4. runC
  5. containerd
  6. containerd Benefits
  7. CRI-O
  8. CRI-O Components
  9. Kubernetes and CRI-O
  10. Using Container Runtimes with Minikube
  11. Docker Runtime and Kubernetes
  12. Putting Things Together

Kubernetes Architecture

  1. Kubernetes Basics
  2. What is Kubernetes?
  3. Container Orchestration
  4. Architecture Diagram
  5. Components
  6. Kubernetes Cluster
  7. Master Node
  8. Kube-Control-Manager
  9. Nodes
  10. Pod
  11. Using Pods to Group Containers
  12. Label
  13. Label Syntax
  14. Label Selector
  15. Annotation
  16. Persistent Storage
  17. Resource Quota
  18. Interacting with Kubernetes

Working with Kubernetes

  1. Installation
  2. Startup
  3. Kubernetes Tools
  4. kubectl Command Line Interface
  5. API Proxy
  6. Dashboard
  7. Kubernetes Component Hierarchy
  8. Deployments
  9. Deployment Commands
  10. Updating Deployments
  11. Network Considerations
  12. Services
  13. Namespaces
  14. Labels
  15. Annotations
  16. Other Useful Commands

Kubernetes Workload

  1. Kubernetes Workload
  2. Kubernetes Workload (contd.)
  3. Managing Workloads
  4. Imperative commands
  5. Imperative Object Configuration
  6. Declarative Object Configuration
  7. Configuration File Schema
  8. Understanding API Version
  9. Obtaining API Versions
  10. Obtaining API Versions (contd.)
  11. Stateless Applications
  12. Sample Deployment Manifest File
  13. Working with Deployments
  14. Stateful Applications
  15. Sample Stateful Manifest File
  16. Sample Stateful Manifest File (Contd.)
  17. Working with StatefulSet
  18. Jobs
  19. Sample Job Manifest File
  20. Sample Job Manifest File (Contd.)
  21. Working with Batch Job
  22. DaemonSets
  23. DaemonSets (contd.)
  24. Sample Daemon Manifest File
  25. Rolling Updates
  26. Rolling Updates (Contd.)

Scheduling and Node Management

  1. Kubernetes Scheduler
  2. Kubernetes Scheduler Overview (contd.)
  3. Skip Kubernetes Scheduler
  4. Scheduling Process
  5. Scheduling Process - Predicates
  6. Scheduling Process - Priorities
  7. Scheduling Algorithm
  8. Kubernetes Scheduling Algorithm
  9. Scheduling Conflicts
  10. Controlling Scheduling
  11. Label Selectors
  12. Label Selectors (contd.)
  13. Label Selectors (Contd.)
  14. Node Affinity and Anti-affinity
  15. Node Affinity Example
  16. Node Antiaffinity Example
  17. Taints and Tolerations
  18. Taints and Tolerations (Contd.)
  19. Taints and Tolerations - Example

Managing Networking

  1. Kubernetes Networking Components
  2. The Kubernetes Network Model
  3. Networking Scenarios
  4. Container-Container Communication
  5. Pod-Pod Communication
  6. 1.3 Pod-Service Communication
  7. External-Service Communication
  8. Accessing Applications
  9. Useful Commands
  10. Container Network Interface (CNI)
  11. What is CNI’s Role?
  12. CNI Configuration Format
  13. Sample CNI Configuration
  14. Running the CNI Plugins

Managing Persistent Storage

  1. Storage Methods
  2. Container OS file system storage
  3. Docker Volumes
  4. Kubernetes Volumes
  5. K8S Volume Types
  6. Cloud Resource Types
  7. configMaps
  8. Creating configMaps from Literals
  9. Creating configMaps from files
  10. Using configMaps
  11. emptyDir
  12. Using an emptyDir Volume
  13. Other Volume Types
  14. Persistent Volumes
  15. Creating a Volume
  16. Persistent Volume Claim
  17. Persistent Volume
  18. Pod that uses Persistent Volume
  19. Secrets
  20. Creating Secrets from Files
  21. Creating Secrets from Literals
  22. Using Secrets
  23. Security Context
  24. Security Context Usage

Working with Helm

  1. What is Helm?
  2. Installing Helm
  3. Helm and KUBECONFIG
  4. Helm Features
  5. Helm Terminology
  6. Searching for Charts with helm CLI
  7. Adding Repositories
  8. Helm Hub - Search
  9. Helm Hub - Chart Page
  10. Installing a Chart
  11. Upgrading a Release
  12. Rolling Back a Release
  13. Creating Custom Charts
  14. Common Chart Files
  15. Helm Templates
  16. Installing A Custom Chart
  17. Packaging Custom Charts

Logging, Monitoring, and Troubleshooting

  1. Differences Between Logging and Monitoring
  2. Logging in Kubernetes
  3. Basic Logging
  4. Logging Agents
  5. Fluentd and Elastic Stack
  6. Monitoring with Prometheus
  7. Kubernetes and Prometheus - Metrics
  8. Alerting
  9. Debugging Pods
  10. Debugging Pods (Contd.)
  11. Debugging Nodes
  12. Debugging Replication Controllers and Services
  13. Upgrading Kubernetes
  14. Upgrade Process
  15. Determine Which Version to Upgrade To
  16. Upgrade kubeadm
  17. Upgrade Control Plane Node
  18. Upgrade kubelet and kubectl
  19. Upgrade Worker Nodes
  20. Recovering From a Failure State

Continuous Integration Fundamentals

  1. Jenkins Continuous Integration
  2. Jenkins Features
  3. Running Jenkins
  4. Downloading and Installing Jenkins
  5. Running Jenkins as a Stand-Alone Application
  6. Running Jenkins on an Application Server
  7. Installing Jenkins as a Windows Service
  8. Different types of Jenkins job
  9. Configuring Source Code Management(SCM)
  10. Working with Subversion
  11. Working with Subversion (cont'd)
  12. Working with Git
  13. Build Triggers
  14. Schedule Build Jobs
  15. Polling the SCM
  16. Maven Build Steps
  17. Configuring Jenkins to Access Kubernetes
  18. Jenkins Pipeline
  19. Jenkins Pipeline Output
  20. Installing Jenkins Plugins

Lab Exercises

  • Lab 1. Creating a Docker Account and Obtain an Access Token
  • Lab 2. Managing Containers
  • Lab 3. Building Images
  • Lab 4. Dockerfiles
  • Lab 5. Getting Started with Docker Compose
  • Lab 6. Docker Volumes
  • Lab 7. Custom Network Management
  • Lab 8. Configuring Minikube/Kubernetes to Use a Custom Docker Account
  • Lab 9. Accessing the Kubernetes API
  • Lab 10. Working with Kubernetes Workloads
  • Lab 11. Scheduling and Node Management
  • Lab 12. Accessing Applications
  • Lab 13. Using Persistent Storage
  • Lab 14. Getting Started with Helm
  • Lab 15. Build CI Pipeline with Jenkins
  • Lab 16. Appendix: Deploying Stateful Services in Docker
TENHO INTERESSE

Cursos Relacionados

Curso SAP PI 7.5 Process Integration

32 horas

Curso SAP Metodologia Activate

16 horas

Curso Solution Manager Configuração de Gerenciamento Serviços de TI

32 horas

Curso SolMan - Projetos de Execução com SAP Solution Manager

40 horas

Curso SAP Activate Entrega de Projetos Ágeis

16 horas

Curso Web Intelligence Report Design

16 horas