Course Code: microaws
Duration: 21 hours

Prerequisites:

Účastníci by měli mít:

  • Základní až středně pokročilé zkušenosti s jazykem Python
  • Základní pochopení REST API, HTTP a konceptů webových aplikací.
  • Základní obeznámenost s Linux příkazovými nástroji a Gitem.
  • Základní pochopení Dockeru a konceptů kontainerizace je doporučeno, ale není povinné.
  • Základní obeznámenost s koncepty cloud computing a službami AWS je výhodné

Overview:

Tento kurz nabízí praktické úvodní poznámky do oblasti navrhování, budování, nasazování a správy cloud-nativních mikroslužeb na platformě Amazon Web Services (AWS). Účastníci si osahají principy architektury mikroslužeb, vývoj založený na Dockeru, událostmi řízenou komunikaci i asynchronní zprávy pomocí služeb jako Amazon SQS, SNS a EventBridge.

Kurz pokrývá celý životní cyklus mikroslužeb, včetně nasazování pomocí Amazon ECS a AWS Lambda, správy API prostřednictvím Amazon API Gateway, pozorovatelnosti (observability) pomocí CloudWatch, AWS X-Ray a OpenTelemetry, stejně jako klíčových konceptů zabezpečení, CI/CD a Infrastructure as Code. Skrze praktické cvičení si účastníci vybudují a propojí distribuované služby a získají praktické zkušenosti s jádrem AWS technologií používaných v moderních architekturách mikroslužeb.

Course Outline:

Úvod do architektury mikroslužeb 

  • Co jsou mikroslužby?
  • Výhody a výzvy mikroslužeb
  • Srovnání s monolitickými architekturami

Nastavení AWS Cloud9 pro vývoj mikroslužeb — Rychlé nastavení

  • Vytvoření prostředí AWS Cloud9
  • Konfigurace vývojového prostředí
  • Připojení AWS služeb k Cloud9

Budování mikroslužeb s Dockerem

  • Úvod do Dockeru a kontainerizace
  • Budování a testování Docker kontejnerů
  • Použití Docker Compose pro aplikace s více kontejnery
  • Praktické cvičení: budování aplikace s více kontejnery lokálně

Událostmi řízená architektura a asynchronní zpravodajství

  • Principy událostmi řízené architektury a synchronní vs. asynchronní komunikace
  • Amazon SQS pro zpravodajství založené na frontách (queue-based messaging)
  • Amazon SNS pro publikování a předplatné zpravodajství (publish-subscribe messaging)
  • Amazon EventBridge pro směrování a distribuci událostí
  • Kafka a Amazon MSK jako alternativa pro vysokovýkonný streaming (high volume streaming) – pouze přehled, volitelné
  • Praktické cvičení: implementace asynchronní komunikace mezi dvěma službami pomocí SQS a SNS, následně rozšíření o směrování EventBridge

Nasazování mikroslužeb na AWS (ECS, Lambda a EKS)

  • Nastavení Amazon ECS pro orchestraci kontejnerů
  • Nasazování mikroslužeb pomocí AWS Lambda
  • Úvod do Kubernetes a Amazon EKS jako alternativní možnosti orchestrace – pouze přehled, srovnání s ECS
  • Zjištění služeb (service discovery) v architektuře mikroslužeb
  • Škálování mikroslužeb v AWS
  • Praktické cvičení: nasazení na ECS a srovnání s nastavením EKS

Správa API pomocí AWS API Gateway

  • Vytváření a správa RESTful API
  • Připojení API k mikroslužbám
  • Verziování a omezování rychlosti API (throttling)
  • Praktické cvičení: vystavení mikroslužeb skrze API Gateway s verziováním

Pozorovatelnost, monitorování, logování a distribuované sledování (tracing)

  • Použití AWS CloudWatch pro monitorování
  • Nastavení logování pomocí Amazon CloudWatch Logs
  • Implementace alarmů a notifikací
  • Koncepce distribuovaného sledování (distributed tracing)
  • AWS X-Ray pro sledování požadavků
  • OpenTelemetry pro nezávislou instrumentaci nezávislou na výrobci
  • Praktické cvičení: instrumentace mikroslužeb pomocí X-Ray a OpenTelemetry a sledování požadavku napříč službami

CI/CD a Infrastructure as Code 

  • Koncepce CI/CD pipeline pro mikroslužby
  • Přehled Terraformu pro zprovoznění infrastruktury (provisioning)

Dobré postupy zabezpečení mikroslužeb

  • Implementace IAM rolí a politik
  • Zabezpečení mikroslužeb pomocí API Gateway
  • Šifrování dat v pohybu a ve stálém stavu

Sites Published:

United Arab Emirates - Microservices on AWS (with Python)

Qatar - Microservices on AWS (with Python)

Egypt - Microservices on AWS (with Python)

Saudi Arabia - Microservices on AWS (with Python)

South Africa - Microservices on AWS (with Python)

Brasil - Microserviços no AWS (com Python)

Canada - Microservices on AWS (with Python)

中国 - AWS上的微服务(结合Python)

香港 - Microservices on AWS (with Python)

澳門 - Microservices on AWS (with Python)

台灣 - AWS上的微服務(搭配Python)

USA - Microservices on AWS (with Python)

Österreich - Microservices auf AWS (mit Python)

Schweiz - Microservices auf AWS (mit Python)

Deutschland - Microservices auf AWS (mit Python)

Czech Republic - Mikroslužby na AWS (s Pythonem)

Denmark - Microservices on AWS (with Python)

Estonia - Microservices on AWS (with Python)

Finland - Microservices on AWS (with Python)

Greece - Microservices σε AWS (με Python)

Magyarország - Microservice-ek az AWS-en (Python használatával)

Ireland - Microservices on AWS (with Python)

Luxembourg - Microservices on AWS (with Python)

Latvia - Microservices on AWS (with Python)

España - Microservicios en AWS (con Python)

Italia - Microservizi su AWS (con Python)

Lithuania - Microservices on AWS (with Python)

Nederland - Microservices op AWS (met Python)

Norway - Mikrotjenester på AWS (med Python)

Portugal - Microserviços no AWS (com Python)

România - Microservices pe AWS (cu Python)

Sverige - Mikrotjänster på AWS (med Python)

Türkiye - AWS Üzerinde Mikro Hizmetler (Python ile)

Malta - Microservices on AWS (with Python)

Belgique - Microservices sur AWS (avec Python)

France - Microservices sur AWS (avec Python)

日本 - AWSでのマイクロサービス(Python使用)

Australia - Microservices on AWS (with Python)

Malaysia - Microservices on AWS (with Python)

New Zealand - Microservices on AWS (with Python)

Philippines - Microservices on AWS (with Python)

Singapore - Microservices on AWS (with Python)

Thailand - Microservices on AWS (with Python)

Vietnam - Microservices trên AWS (với Python)

India - Microservices on AWS (with Python)

Argentina - Microservicios en AWS (con Python)

Chile - Microservicios en AWS (con Python)

Costa Rica - Microservicios en AWS (con Python)

Ecuador - Microservicios en AWS (con Python)

Guatemala - Microservicios en AWS (con Python)

Colombia - Microservicios en AWS (con Python)

México - Microservicios en AWS (con Python)

Panama - Microservicios en AWS (con Python)

Peru - Microservicios en AWS (con Python)

Uruguay - Microservicios en AWS (con Python)

Venezuela - Microservicios en AWS (con Python)

Polska - Microserwisy na AWS (z wykorzystaniem Pythona)

United Kingdom - Microservices on AWS (with Python)

South Korea - AWS에서 마이크로서비스 구현 (Python 활용)

Pakistan - Microservices on AWS (with Python)

Sri Lanka - Microservices on AWS (with Python)

Bulgaria - Microservices на AWS (с Python)

Bolivia - Microservicios en AWS (con Python)

Indonesia - Microservices on AWS (with Python)

Kazakhstan - Microservices on AWS (with Python)

Moldova - Microservices pe AWS (cu Python)

Morocco - Microservices on AWS (with Python)

Tunisia - Microservices on AWS (with Python)

Kuwait - Microservices on AWS (with Python)

Oman - Microservices on AWS (with Python)

Slovakia - Microservices on AWS (with Python)

Kenya - Microservices on AWS (with Python)

Nigeria - Microservices on AWS (with Python)

Botswana - Microservices on AWS (with Python)

Slovenia - Microservices on AWS (with Python)

Croatia - Microservices on AWS (with Python)

Serbia - Microservices on AWS (with Python)

Bhutan - Microservices on AWS (with Python)

Nepal - Microservices on AWS (with Python)

Uzbekistan - Microservices on AWS (with Python)

US Government - Microservices on AWS (with Python)