cellenza dev test - azure service fabric - v1.0 - slideshare

33
Azure Service Fabric et Containers Radoine Douhou Michel Hubert

Upload: radoine-douhou

Post on 13-Apr-2017

119 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Azure Service Fabric et ContainersRadoine Douhou

Michel Hubert

Page 2: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Demain est aujourd’hui

Page 3: Cellenza   dev test - azure service fabric - v1.0 - slideshare

DevOps

Page 4: Cellenza   dev test - azure service fabric - v1.0 - slideshare

DevOps, pas une méthode mais une philosophie

Page 5: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Avec un focus particulier sur la collaboration

UI specialist

dba

Middleware

Page 6: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Containers

Page 7: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Les Containers

Scalabilité.

Déplacements / Reversibilité

Cloud Public / Privé

Disponibilité / Performance.

Containers

Dev Ops « Write once, run everywhere ».

Applications distribuées

Environnement Dev / Test.

Continuous deployment / Packaging

Agile testing

Indépendant

Léger.

Agile.

Page 8: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Docker

.NET Core

ASP.NET 5

Page 9: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Docker dans Azure

Simplifier la création / configuration, la gestionde cluster de VM Azure pour des applicationscontainerisés.

Apache Mesos ou Docker Swarm pourl’orchestration des applications au sein d’uncluster de machines ou seront distribués .

Docker extension pour VM Linux

Azure Container Service

Pur IAAS Architecture à construire

Azure Scale Set

Page 10: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Docker dans Windows Server 2016

Page 11: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Micro-services

Page 12: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Applications monolithiques

Toutes les fonctionnalités dans un seul process….

Le scalling se fait en répliquant l’application complèteSur plusieurs serveurs.

Page 13: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Applications monolithiques

Toutes les fonctionnalités dans un seul process….

Chaque fonctionnalité de l’application se traduit par un service

Les services sont répliqués sur différents serveurs En fonction des besoins.

Page 14: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Une définition des micro-services

Qu’est-ce qu’un micro-service?

Page 15: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Les caractéristiques des micro-services

« Componentization» (Autonome / isolé)

Organisé autour de « business capabilities »

Elastique, Résiliant et « Responsive »

Orienté message et « Smart end points »

Configurable et automatisé

Gouvernance décentralisée et monitoring intelligent

La techno adaptée au besoin

Page 16: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Organisé autour de business capabilities

UI specialist

Middleware

dba

Front

Page 17: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Organisé autour de business capabilities

Page 18: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Un principe de base fort

« You build it,

you deploy it,

you run it »

Page 19: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Data Management décentralisé

Front Front

Page 20: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Quelle est la taille d’un micro-service ?

« Quelle est la bonne

granularité ? »

2 équipes, 10 micro-services

10 équipes, 10 micro-services

10 équipes, 100 micro-services

2 équipes, 100 micro-services

Page 21: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Quelques idées reçues

• Mon application est sur Docker donc elle est micro-service.• Les architectures micro-services vont résoudre tous mes problèmes.• Les applications monolithiques sont « has been ».• Les micro-services remplacent la SOA.

Page 22: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Une filiation avec la SOA ?

Qu’est-ce que SOA ?

Capacité d’une application à exposer sesfonctionnalités sous forme de services (web),découvrables et consommables ?

Bus de service (ESB) centralisé dans lequelbeaucoup (trop) de règles métiers ont été codéeset qui est une étape indispensable à laconsommation/ exposition d’un service ?

Micro-services

»

Page 23: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Architecture en couches

Page 24: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Architecture d’un micro-service

Page 25: Cellenza   dev test - azure service fabric - v1.0 - slideshare

API

Qui dit micro-service, dit API !

2 API : API public pour communiquer avec le « monde extérieur »

API privée dite admin pour administrer, paramétrer le service

Deux techniques pour requêter un service : GetProfilesById

GET http://myapi.looksfamiliar.com/profiles/user/id/99999

GetProfilesByLocation GET http://myapi.looksfamiliar.com/profiles?location=Massachusetts

Page 26: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Du monolithe aux micro-services

En ai-je vraiment besoin ?

Mon organisation

est-elle mature ?

Mon infra et mes

pratiques logicielles sont-elles matures ?

Page 27: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Azure Service Fabric

Page 28: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Azure Service Fabric

Page 29: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Démo

Page 30: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Framework de développement

Reliable Service Reliable Actor

Statefull

Stateless Mono-threadFortement distribué

Peu de communication Grand nombre de

services

Compute & Etat Indépendant

Communication entre services

Gérer son état via Reliable Collections

Piloter son schéma de répartition /

distribution

Page 31: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Démo

Page 32: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Un exemple ?

• Connaissez-vous une plateforme écrite sous forme de micro-services avec Service Fabric ?

Page 33: Cellenza   dev test - azure service fabric - v1.0 - slideshare

Conclusion – Containers et Micro-services

Azure VM & VM Scale Set

Azure Container Services

Azure Service Fabric

IAAS

PAAS