Top Banner
Micro-Services sur AWS Cédric DUPUI Solutions Architect [email protected] @aws_actus
27
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: MicroServices sur AWS

Micro-Services sur AWSCédric DUPUI – Solutions Architect

[email protected]

@aws_actus

Page 2: MicroServices sur AWS

Micro

Services

Source: Pixabay

Page 3: MicroServices sur AWS

#1 Componentization

via Services

Source: littlevisuals.co

Page 4: MicroServices sur AWS

#2 Organized around

Business Capabilities

Source: http://moicani.over-blog.com/2014/03/hey-monsieur-l-homme-orchestre.html

Page 5: MicroServices sur AWS

#3 Products

not Projects

Source: lyzadanger via Wikimedia Commons

Page 6: MicroServices sur AWS

#4 Smart endpoints

and dumb pipes

Source: David Shankbone via Wikimedia Commons

Page 7: MicroServices sur AWS

#5 Decentralization

Source: Ishift via Wikimedia Commons

Page 8: MicroServices sur AWS

#6 Infrastructure

Automation

Source: Vincent Diamante via Wikimedia Commons

Page 9: MicroServices sur AWS

#7 Design

for failure

Source: Robert Lawton via Wikimedia Commons

Page 10: MicroServices sur AWS

#8 Evolutionary

Design

Source: http://themetapicture.com/evolution-of-a-gamer/

Page 11: MicroServices sur AWS

AldebaranCloudServices

Page 12: MicroServices sur AWS

Aldebaran Technological Context

• Small team of Cloud folks developing« Cloud oriented » applications

• Embedded software developers– Not familiar with Web/Cloud

specific constraints• Scalability ?• Exploitation?• Many languages / technologies

to learn

– Need tools and methods to easilybuild and run new services

Source: nDevilTV via Wikimedia Commons

Page 13: MicroServices sur AWS

Limitations

• Monolithic services

• Hard to evolve (“/api/1” only)

• Strongly coupled one with another and withclients code

• Each service encompasses features thatmay be spreaded across the wholearchitecture

• Services may provide illegitimate featureswith respect to their business concerns

Source: CATHERINE PRIOR via Wikimedia Commons

Page 14: MicroServices sur AWS

Towards a Modular ArchitectureS3 DynamoDB SQS

EC2DynamoDB

Page 15: MicroServices sur AWS

µService Model Pros & Cons

• Time to market: Lifecycle releases

of services are “independant”

• Increased evolutivity and new

services creation enabler

• Better control over QoS properties

• Increased workload to set up and

manage multiple environments

• Architecture rationalization

• Services Governance

DevOps Approach

✓ ✗

Page 16: MicroServices sur AWS

DevOps Methodology & Tooling

Tools of the Trade:

Jenkins, GIT, RedMine, Chef, CloudFormation,

Elastic Beanstalk, Docker (!), etc.

Page 17: MicroServices sur AWS

Challenges and Enablers

• Too many resources: O( NbOfServices x Versions x Environments )

Finer grained resource mutualisation is required

• high workload to setup & manage all these environments

Better integration of DevOps tooling

• Development / Production environments descrepancies

Container technology can help

DevOps dream is to allow logic to be easily executed

upon events within a specific infrastructure context

that has controlable QoS properties

Page 18: MicroServices sur AWS

Ideal World …

Page 19: MicroServices sur AWS

Introducing Amazon EC2 Container Service

http://aws.amazon.com/ecs/

A fully Docker-compatible, fully managed, Linux container service

Page 20: MicroServices sur AWS

Why Containers ?

Benefits for micro-services

• Speed

• Consistency

• Density / Resource Efficiency

• Flexibility

Source: Pixabay

Page 21: MicroServices sur AWS

Key Components

• Container-Enabled AMIs

• ECS Agent

• Cluster Manager

• Container Scheduler

• Tasks/Task Definitions

• Repositories / Storage / Networking

Source: Morio via Wikimedia Commons

Page 22: MicroServices sur AWS

Introducing AWS Lambda

http://aws.amazon.com/lambda/

“A PaaS for event-driven micro-services”

Werner Voegels.

Page 23: MicroServices sur AWS

AWS Lambda

Respond quickly to new information

Build back-end services that perform at scale

Run your code without managing infrastructure

Cost-effective and efficient

Page 24: MicroServices sur AWS

NodeJS module

Event Handler

IAM Role for lamda

execution

Resource limits

Page 25: MicroServices sur AWS

Triggering Events

Lambda function to invoke

Invoking IAM role

Page 26: MicroServices sur AWS

Inscrivez-vous gratuitement à l’adresse :

aws.amazon.com/summits/paris

Page 27: MicroServices sur AWS

Thank You