Curso MicroServices

Curso MicroServices

48 horas
Visão Geral

Curso MicroServices, MicroServices é uma variante do estilo arquitetônico de arquitetura orientada a serviços (SOA) que define o aplicativo como uma composição de pequenos serviços e unidades fracamente acoplados. Em MicroServices, serviços refinados são suportados por protocolos leves. Este Curso MicroServices, de arquitetura e implantação de microsserviços apresenta a arquitetura genérica de microsserviços com padrões e os cenários de implantação no cluster Kubernetes com mecanismo de contêiner docker em ambiente de rede distribuído.

Pre-Requisitos
  • Experiência em desenvolvimento de aplicações web. Ter exposição ao desenvolvimento de serviços SOAP e REST e integração contínua com gerenciamento de entrega contínua é o preferido
Materiais
Inglês + Exercícios + Lab Pratico
Conteúdo Programatico

SOA and Web services Overview

  1. SOA overview
  2. The need of SOA in the Enterprise
  3. Applications as service
  4. Soap Web services with XML
  5. SOAP,WSDL and dependencies
  6. SOAP services limitations
  7. Interoperability issues
  8. Heavyweight architecture
  9. Performance and integration issues
  10. Porting/migration issues
  11. Tight coupling with the platform

REST API applications

  1. The REST style of applications
  2. Using the HTTP protocol
  3. The unique resource URL as REST Noun
  4. The resource operations with HTTP Methods as verbs
  5. Models and Persistent Entities
  6. Define data formats for exchange
  7. Reuse and Linking the services

MicroServices Introduction

  1. Why MicroServices
  2. Monolith vs. MicroServices
  3. Decomposing into smaller service units
  4. Advantages
  5. Loose coupling
  6. Isolated development and isolated testing
  7. Performance enhancement and maintainability
  8. Scaling the services with ease

Generic discussion on MicroServices architecture and patterns

  1. Common Design Patterns overview
  2. Singleton
  3. Observer
  4. Mediator
  5. Bridge
  6. Session facade
  7. Chain of Responsibility
  8. SOLID Principles overview
  9. Modeling and Domain Driven Design

Architecture style and patterns

  1. API Gateway
  2. Circuit Breaker
  3. Service Discovery
  4. Self Registration
  5. Third Party Registration
  6. Event Driven Architecture
  7. Event Sourcing and collaboration
  8. Command Query Responsibility Segregation
  9. Sync vs. Async processing
  10. Reactive Microservices
  11. Shared Database

Asynchronous Request processing

  1. Message brokers
  2. Point to Point
  3. Publish - Subscribe
  4. Message Brokers
  5. AMQP
  6. STOMP

Deployment Scenarios overview

  1. Service instance per host
  2. Multiple service instances per host
  3. Scaling the instances
  4. Shared Database
  5. Database per Service
  6. Application events and logging

Application Deployments

  1. Applications in Enterprise
  2. Development and Deployment platforms
  3. Manage deployment across platforms
  4. Application dependencies
  5. Making it highly available with clustering
  6. Scaling for performance
  7. Load balancing and instance management with orchestration
  8. Deployment monitoring and instance management
  9. The need of VM
  10. Deployment in Virtual Machine environment
  11. The Virtual MC usage and limitations>
  12. The container deployment
  13. The container as isolated process
  14. The container vs. virtual machine
  15. The networking with containers
  16. Security in container applications

Starting with Docker Container

  1. Docker architecture
  2. Docker containers for application deployment
  3. Docker daemon and docker client
  4. Installing the Docker for Windows and Linux
  5. Docker commands overview
  6. Docker container and image
  7. Docker Hub registry for images
  8. Create and run first Docker container
  9. Access the docker container from the host system
  10. The host network mapping
  11. Port forwarding
  12. Inspect docker process and containers
  13. Inspect container logs
  14. Interactive and detached containers
  15. Start, Stop and remove containers
  16. Manage the docker images
  17. Pull more docker images from Docker Hub
  18. Docker container monitoring

Build docker container images

  1. Design MicroService image with Dockerfile
  2. The Dockerfile grammar
  3. Build and run the image
  4. The Docker Hub user with repository
  5. Push the docker images to Docker Hub
  6. Run database container
  7. Copy files/dirs from container to host and vice versa
  8. Connect to database container via terminal
  9. Manage the data in database
  10. Commit the modified container as image
  11. Update Docker container images
  12. Work with local Docker Registry
  13. Clean the docker environment

Docker container networking

  1. Docker networks
  2. Host network mapping
  3. Host Port Mapping
  4. Dynamic port mapping
  5. Default bridge network
  6. The overlay network used in cluster
  7. Linking the containers
  8. Use of Nginx for host-container mapping
  9. Docker security overview

Docker container State management

  1. Sharing the data across containers with volume
  2. Mount persistent volumes to containers from host system

Docker Compose and docker-machine tools

  1. Container configuration with YML files
  2. Docker-compose commands
  3. Configure and Deploy micro-service with database
  4. Monitor the micro-service in container
  5. Docker-Machine to manage multiple docker hosts
  6. Interaction with docker-machine

Docker Container Orchestration with Swarm

  1. High availability with Cluster
  2. The nodes in cluster
  3. Docker Swarm manager and worker nodes
  4. Deploy an application across multiple docker host nodes
  5. Load balancing and instance management
  6. Application updates (rolling updates) and roll back
  7. Scale the containers
  8. Monitor the containers
  9. Inspect the services
  10. Using logging drivers
  11. Custom network plug-in

Kubernetes for Container orchestration

  1. Kubernetes for orchestration of containers
  2. Kubernetes cluster
  3. Kubernetes architecture and features
  4. Kubernetes Core Concepts
  5. Kubernetes tools
  6. Using the VM Drivers
  7. Start basic single node minikube cluster
  8. The minikube commands overview
  9. Basic objects
  10. Pod
  11. Service
  12. Volume
  13. Namespace
  14. The kubectl commands for deployment and monitoring
  15. The pod configuration in YML file
  16. Create and manage pods with kubectl
  17. The host network and host port mode
  18. Run and monitor the pods with logs
  19. Inspect the pods
  20. Interact with pods
  21. Kubernetes docker daemon
  22. Pods with multiple containers: inspect, interact and logs
  23. Linking the containers in pod
  24. Rolling updates
  25. Monitor and manage the cluster with dashboard

Manage the container state with volume

  1. The pods with volume
  2. Sharing the data across containers with volume
  3. Making the volume data persistent by mounting from host system
  4. Configure PersistentVolume and PersistentVolumeClaim objects
  5. Using the PersistentVolumeClaim in the container

Kubernetes Cluster Deployments

  1. Deployment : to group multiple pod instances
  2. Replication : To manage multiple replicas of pods
  3. Staefulset: To manage the Stateful applications
  4. DaemonSet : To manage the group of pods across hosts
  5. Job :Grouping of pods
  6. Create deployment
  7. The deployment options
  8. The labels and selectors in deployment
  9. The service types
  10. ClusterIP
  11. NodePort
  12. Loadbalancer
  13. ExtrenalName
  14. Expose the deployment with service
  15. Service port mapping : fixed and dynamic
  16. Inspect and log the service
  17. Scale the service
  18. Service Discovery
  19. Default services and namespaces
  20. Communication with outside world
  21. The service updates(rolling update) and rollbacks
  22. The service load balancing
  23. Ingress Controller for load balancing
  24. Dashboard to monitor the cluster objects

Kubernetes Distributed Cluster

  1. Cluster tools
  2. Kubeadm
  3. Kubelet
  4. Kube-proxy
  5. Kubectl
  6. Configure Cluster in network with master and nodes
  7. Kubernetes Kops cluster overview
  8. Deploying and Monitoring the Kubernetes cluster
  9. Kubernetes REST API for Control and analyze
  10. Health Checks and live-ness for pods/applications
  11. Resource Quotas
  12. Working with Namespaces
  13. User/security Management

Helm for Kubernetes applications and deployments

  1. Manage the Kubernetes applications
  2. Install Helm CLI and Tiller
  3. The charts YAML file structure
  4. Versioning and dependencies and tags
  5. Define the requirements
  6. The Helm Charts to define, install and upgrade
  7. Search and publish the apps with charts
  8. Using Helm to manage the deployments
TENHO INTERESSE

Cursos Relacionados

Curso ITIL v3 Foundation Preparatório Para o Exame

16 horas

Curso Análise de Negócios Fundamentos

16 horas

Curso SAP Contas a Receber & Contas a Pagar Customizing

32 horas

Curso Oracle 18c Oracle Database Conceitos de Data Warehousing

32 horas

CURSO BLOCKCHAIN EXPERT PREPARATORIO PARA A CERTIFICAÇÃO

16 horas

CURSO INNOVATION MANAGEMENT EXPERT PREPARATORIO PARA A CERTIFICAÇÃO

16 horas