Getting Started with AWS App Mesh Machine Intelligence Modern - - PowerPoint PPT Presentation

getting started with aws app mesh
SMART_READER_LITE
LIVE PREVIEW

Getting Started with AWS App Mesh Machine Intelligence Modern - - PowerPoint PPT Presentation

Getting Started with AWS App Mesh Machine Intelligence Modern Infrastructure http://mi2.live What is MI2? MI2 Webinars focus on the convergence of machine intelligence and modern infrastructure . Every alternate week, I deliver informative and


slide-1
SLIDE 1

Machine Intelligence Modern Infrastructure

http://mi2.live

Getting Started with AWS App Mesh

slide-2
SLIDE 2

What is MI2?

MI2 Webinars focus on the convergence of machine intelligence and modern infrastructure. Every alternate week, I deliver informative and insightful sessions covering cutting-edge technologies. Each webinar is complemented by a tutorial, code snippets, and a video. MI2 strives to be an independent and neutral platform for exploring emerging technologies.

Register at http://mi2.live

slide-3
SLIDE 3

Objectives

  • Overview of Microservices
  • Challenges involved with Microservices
  • Why use a Service Mesh?
  • Big Picture of AWS App Mesh
  • Demo
  • Summary
slide-4
SLIDE 4

Traditional 3 Tier Architecture

Business Logic UI Data

slide-5
SLIDE 5

Traditional 3 Tier Architecture

UI Data C1 C2 C3 AS 1 C1 C2 C3 AS 2 C1 C2 C3 AS 3 C1 C2 C3 AS 4

slide-6
SLIDE 6

Microservices Architecture

UI Data Cluster Manager Node 1 C3 C1 C2 C1 Node 2 C3 C1 C2 C3 Node 3 C3 C1 C2 C3 Node 4 C3 C1 C2 C3 Node 5 C3 C1 C2 C1

slide-7
SLIDE 7

Microservices Architecture

S1 S2 S3

slide-8
SLIDE 8

Challenges involved with Microservices

Service A Service B Service C Service D

External Service
slide-9
SLIDE 9

Challenges involved with Microservices

Service A Service B Service C Service D

External Service Python Java C# Ruby
slide-10
SLIDE 10

Challenges involved with Microservices

Service A Service B Service C Service D

External Service

Agent Agent Agent Agent

Python Java C# Ruby
slide-11
SLIDE 11

Challenges involved with Microservices

Service A Service B Service C Service D

External Service

Agent Agent Agent Agent

Python Java C# Ruby H T T P HTTP/2 gRPC GraphQL
slide-12
SLIDE 12

Challenges involved with Microservices

Service A Service B Service C Service D

External Service

Agent Agent Agent Agent

Python Java C# Ruby H T T P HTTP/2 gRPC GraphQL L7 L4
slide-13
SLIDE 13

Challenges involved with Microservices

Service A Service B Service C Service D

External Service

Agent Agent Agent Agent

Python Java C# Ruby H T T P HTTP/2 gRPC GraphQL L7 L4

Central Monitoring Service

slide-14
SLIDE 14

Challenges involved with Microservices

  • Polyglot programming model
  • Language-specific tools and SDKs
  • Diverse set of protocols
  • Multiple deployment targets
  • Combination of load balancers
  • Complex debugging
  • Lack of visibility and observability
  • Hard to implement the best practices of distributed computing
  • Decentralized authentication and authorization
slide-15
SLIDE 15

Service Mesh - A Possible Solution

  • Out of process architecture
  • Clean separation of data plane and control plane
  • Support internal and external load balancing (L3/L4/L7)
  • Consistent Service discovery
  • Extensible protocol support
  • Advanced health checks
  • Real-time monitoring, logging, tracing
  • Best practices of distributed computing
slide-16
SLIDE 16

Service Mesh – Control Plane vs Data Plane

Service A Service B Service C Service D

External Service

Proxy Proxy Proxy Proxy

Python Java C# Ruby H T T P HTTP/2 gRPC GraphQL L7 L4

Control Plane

slide-17
SLIDE 17

What is AWS App Mesh?

  • Managed service to monitor microservices running in AWS
  • Data plane is a combination of Envoy proxy and a router
  • Control plane is managed by AWS – exposed via CLI, API, Portal
  • Observability for microservices
  • Policy-driven communication and traffic routing
  • Scalable and available control plane
  • Tight integration with AWS services
slide-18
SLIDE 18

AWS App Mesh – Control Plane vs. Data Plane

Service A Service B Service C Service D

External Service

Proxy Proxy Proxy Proxy

Python Java C# Ruby H T T P HTTP/2 gRPC GraphQL L7 L4

AWS App Mesh – Control Plane

slide-19
SLIDE 19

Key Concepts of AWS App Mesh

Service Mesh

Logical boundary for network traffic between the services that reside within it

Virtual Node

Logical pointer to a particular task group, such as an ECS service or a Kubernetes deployment

Virtual Router

Handles traffic for one or more service names within your mesh

Virtual Route

Associated with a virtual router to direct traffic to one or more virtual nodes

slide-20
SLIDE 20

Virtual Node

Virtual Node

Backends Listeners Service Discovery

slide-21
SLIDE 21

Virtual Router

Protocol Prefix Targets Virtual Node 1 Virtual Node 2

Virtual Router

slide-22
SLIDE 22

Virtual Route

Protocol Prefix

Targets

Virtual Node 1 Virtual Node 2

slide-23
SLIDE 23

AWS App Mesh – The Big Picture

slide-24
SLIDE 24

Microservice 1 Microservice 2 Proxy Proxy

AWS App Mesh Control Plane Observability Network Management Service Discovery Maps & Policy Definition

AWS App Mesh

slide-25
SLIDE 25

What are we building?

  • Three microservices connected via AWS App Mesh
  • Order
  • Product
  • Customer
  • Each service is a Kubernetes deployment
  • Order is exposed via ELB
  • Canary releases of Product and Customer services
  • Divert 50% of the traffic to Product v2
  • Divert 25% of the traffic to Customer v1.5
  • Maintain zero downtime!
slide-26
SLIDE 26

Demo Scenario

Load Balancer

Order Product V1 Product V2 Customer V1.5 Customer V1.5

slide-27
SLIDE 27

DEMO

https://github.com/janakiramm/app-mesh-tutorial

Performing Canary Releases with App Mesh

slide-28
SLIDE 28

Summary

  • App Mesh is AWS’ implementation of Service Mesh
  • Each microservice runs an Envoy proxy
  • App Mesh control plane governs the traffic policies
  • Policies can be updated via CLI, SDK, or Console
  • Observability is available through CloudWatch and 3rd parties
slide-29
SLIDE 29

MI2 Sponsors

slide-30
SLIDE 30

Next Webinar

Bu Buil ilding ing Conv nvolutio iona nal Neural Networks s wit ith NVID VIDIA IA DIGIT IGITS

NVIDIA DIGITS is a wizard-style framework to build convolutional neural networks. Attend this session to learn how to setup and configure NVIDIA DIGITS for building deep neural networks based on popular frameworks such as Caffe and TensorFlow. In this webinar, I will walk you through everything from data preparation to hyperparameter tuning to model serving.

Thursday, February 7th, 2019 9:00 AM PST / 10:30 PM IST

Register at http://mi2.live