Course Outline
Introduction to Microservices Architecture
- Defining microservices
- Advantages and complexities of microservices
- Contrast with monolithic architectures
Configuring AWS Cloud9 for Microservices Development — Rapid setup
- Provisioning an AWS Cloud9 environment
- Tailoring the development workspace
- Integrating AWS services with Cloud9
Developing Microservices with Docker
- Fundamentals of Docker and containerisation
- Constructing and validating Docker containers
- Leveraging Docker Compose for multi-container stacks
- Practical task: assembling a multi-container application locally
Event-Driven Architecture and Asynchronous Messaging
- Core tenets of event-driven design and synchronous versus asynchronous interactions
- Amazon SQS for queue-based messaging
- Amazon SNS for publish-subscribe models
- Amazon EventBridge for event routing and dispatch
- Overview of Kafka and Amazon MSK as high-volume streaming alternatives — Optional, overview only
- Practical task: establishing asynchronous communication between two services via SQS and SNS, followed by EventBridge routing
Deploying Microservices on AWS (ECS, Lambda, and EKS)
- Initialising Amazon ECS for container orchestration
- Deploying microservices via AWS Lambda
- Introduction to Kubernetes and Amazon EKS as an alternative orchestration platform — Overview only, compared with ECS
- Service discovery mechanisms in microservices
- Scaling microservices within AWS
- Practical task: deploying on ECS and evaluating against an EKS configuration
API Management with AWS API Gateway
- Creating and maintaining RESTful APIs
- Linking APIs to microservices
- API versioning and rate limiting
- Practical task: exposing microservices through an API Gateway with version control
Observability, Monitoring, Logging, and Distributed Tracing
- Utilising AWS CloudWatch for monitoring
- Configuring logging via Amazon CloudWatch Logs
- Setting up alerts and notifications
- Concepts in distributed tracing
- Request tracing with AWS X-Ray
- Vendor-agnostic instrumentation with OpenTelemetry
- Practical task: instrumenting microservices with X-Ray and OpenTelemetry to trace requests across services
CI/CD and Infrastructure as Code
- CI/CD pipeline principles for microservices
- Introduction to Terraform for infrastructure provisioning
Security Best Practices for Microservices
- Configuring IAM roles and policies
- Enhancing microservices security via API Gateway
- Encrypting data during transit and at rest
Requirements
Participants are expected to possess the following:
- Basic to intermediate proficiency in Python
- A fundamental understanding of REST APIs, HTTP protocols, and web application principles.
- Basic knowledge of Linux command-line utilities and Git.
- A foundational grasp of Docker and containerisation concepts is advisable, though not required.
- Basic familiarity with cloud computing principles and AWS services is beneficial
Custom Corporate Training
Training solutions designed exclusively for businesses.
- Customized Content: We adapt the syllabus and practical exercises to the real goals and needs of your project.
- Flexible Schedule: Dates and times adapted to your team's agenda.
- Format: Online (live), In-company (at your offices), or Hybrid.
Price per private group, online live training, starting from 3900 € + VAT*
Contact us for an exact quote and to hear our latest promotions
Testimonials (4)
The instructor was knowledgeable about the course topic and also other related topics, and was able to answer our questions, or even make a note of questions he didn't immediately know the answer to and got back to use later.
Abe Sabbagh - Enbridge
Course - Advanced RabbitMQ - 2 Days
Possibility to perform independent exercises in the training environment.
Tomasz - PKO Zycie Towarzystwo Ubezpieczen S.A.
Course - Kafka for Administrators
the technical preparation of teachers
Giorgio - Asystel-BDF S.p.A.
Course - Creating a Service Mesh with Istio and Kubernetes
Very practical examples. The trainer has tried to keep a pace where everybody is able to go with even though the group was quite inhomogeneous regarding the knowhow. He has provided a lot of support to basically everybody who asked for it :)