vos applications legacy ? réinventez les avec le …...haute disponibilité automatique mise à...
TRANSCRIPT
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Julien Lépine, Solutions Architect, AWS
AWS Summit Paris, 31 Mai 2016
Vos applications Legacy ?
Réinventez les avec le Cloud !
L’application du jour*
* Cette application est une œuvre de fiction. Néanmoins, toute coïncidence ou ressemblance
avec une application de portail d’entreprise réelle n'est ni fortuite ni involontaire.
Application de gestion documentaire Web
Application basée sur ASP.NET MVC (.NET 4.5)
Langage de programmation : C#
OS : Microsoft Windows Server 2012 R2
SGBD : Microsoft SQL Server Standard 2014
Environnement de Deploiement
1 seule machine
Base de données
Application Web
Architecture
PORTAIL
SERVICE
SITES
SERVICE
DOCUMENTS
SERVICE
IDENTITÉ
SERVICE
SÉCURITÉ
Démo : Document ManagerApplication de gestion de documents
Piliers d’une architecture cloud
SÉCURITÉ BUDGET OPTIMALFIABILITÉ PERFORMANCE
Étape 1 : Rehosting
Pas de changement de code
Pas de changements d’architecture
Projet mené par l’équipe opération
« Mon application sur le Cloud »
Projet « rapide », niveau d’effort minimal
Rehosting Replatforming Refactoring
Effort Level Costs Maintenance Effort
Étape 2 : Replatforming
Changements limités
Bénéficier des opportunités de la plateforme
Focus sur l’automatisation
Projet ops avec appui dev
« Mon application dans le Cloud »
Effort limité, supprimer les actions à faible valeur ajoutée
Rehosting Replatforming Refactoring
Effort Level Costs Maintenance Effort
Étape 3 : Refactoring
Optimisé pour le Cloud
Automatisation complète
En phase avec un cas d’usage métier
Projet IT global, appuyé par les métiers
« Mon application pour le Cloud »
Projet plus important, bénéfices maximaux
Rehosting Replatforming Refactoring
Effort Level Costs Maintenance Effort
Étape 3 (bis) : Cloud Native
Conçu pour le Cloud
Projets agiles et itératifs
Environnements adaptatifs
Projet piloté par les métiers
Équipes DevOps / SecOps / FinOps
Respect de l’état de l’art
Projets prévisibles, pilotés par la valeur métier
Déploiement continu
Rehosting Replatforming Cloud Native
Effort Level Costs Maintenance Effort
Haute Disponibilité
& Responsabilité Unique
Amazon RDS
■ Déploiement automatique
■ Haute disponibilité automatique
■ Mise à jour automatique (OS, SGBD)
■ Sauvegarde automatique
■ Restauration à la seconde près
Amazon RDS
■ Analyse du schéma source
■ Transformation vers le schéma cible
■ Transfert initial
■ Réplication continue des données*
Comment transférer mes données ?
AWS DMS
* Disponible sur certains SGBD/plateformes
Démo : Créer une BDDUtiliser Amazon RDS pour héberger le moteur de base de données
Transférer les données d’une base existante vers la destination
Le bon outil pour chaque mission
Stockage objet dans Amazon S3
var bucketName = "<BucketName>";
var fileName = "<FileName>";
var s3Client = new Amazon.S3.AmazonS3Client();
// Write Data to Amazon S3
s3Client.PutObject(new Amazon.S3.Model.PutObjectRequest {
BucketName = bucketName,
Key = fileName,
InputStream = fileStream
});
// Read Data from Amazon S3
var s3Object = s3Client.GetObject(bucketName, fileName);
Amazon S3
Couplage lâche avec Amazon SQS
var queueUrl = "https://sqs.<region>.amazonaws.com/<AcctNum>/<QueueName>";
var sqsClient = new Amazon.SQS.AmazonSQSClient();
// Send to Amazon SQS
sqsClient.SendMessage(queueUrl, "My Message Data");
// Process Amazon SQS
while(!exit) {
var messages = sqsClient.ReceiveMessage(queueUrl);
foreach(var message in messages.Messages) {
// Process message then delete
sqsClient.DeleteMessage(queueUrl, message.ReceiptHandle);
}
}
Amazon SQS
Démo : Migrer vers Amazon S3Utiliser Amazon S3 en lieu et place de la base de données locale pour les fichiers
Supervision et visibilité
Amazon CloudWatch
■ Supervision des ressources
■ Métriques personnalisées
■ Création d’alertesAmazon CloudWatch
Gestion Automatisée des Logs
Amazon
CloudWatch Logs
AWS Lambda
Amazon Kinesis
Amazon EC2
Amazon Elasticsearch
Service
Amazon S3
Démo : Logs et métriquesUtiliser Amazon CloudWatch pour centraliser les logs et gagner de la visibilité
Vous voulez des microservices*
*Ne dites pas non, tout le monde veut des microservices
Quand on parle microservice, on parle de :
Retour à la définition
■ Les services sont petits, et conçus pour remplir une seule fonction;
■ La culture de l’organisation doit prendre en compte l'automatisation dudéploiement et des tests. Cela simplifie la charge opérationnelle;
■ La culture et les principes de design doivent tolérer les pannes; à la manière des systèmes anti-fragile;
■ Chaque service est élastique, résilient, composable, minimal et complet.
https://fr.wikipedia.org/wiki/Microservices
Simpler
■ Un microservice est un service indépendant qui peut être
(re)construit en un maximum de deux semaines
Sam Newman, Building Microservices (format Kindle ou Broché)
https://www.amazon.fr/Building-Microservices-Sam-Newman/dp/1491950358/ref=sr_1_1
5 caractéristiques
■ C’est un service/application indépendant;
■ Il est rapide à (ré)écrire;
■ Il est centré sur une tâche;
■ Il est indépendant du langage de programmation;
■ Il sait que les pannes existent.
Découvrez une équipe gagnante
■ Menée par AWS Lambda:
■ Exécutez des fonctions en Node.js/Python/Java
■ Avec un peloton de services pour tous vos besoins:
■ Traitement de messages (Amazon SQS, Amazon SNS)
■ Base de données (Amazon DynamoDB)
■ Analytique (Amazon Kinesis, Amazon Machine Learning)
■ Et bien d’autres…
■ Et un frontal Web avec Amazon API GatewayAWS Lambda
Amazon
API Gateway
Automatisation pour tous les cas d’usage
IAAS*
Amazon EC2
AWS CloudFormation
AWS OpsWorks AWS Elastic
BeanStalk
AWS Lambda
PAAS*DEVOPS DEVOPS
AUTOMATION
* Appellations non contractuelles
Et la surprise
Découvrez Alexa
■ Assistant pilotable par la voix, pour tous vos besoins;
■ Entièrement programmable et extensible;
■ Intégré nativement avec AWS Lambda.
Démo : Pilotage VocalIntégrer Amazon Echo et Document Manager via Lambda et API Gateway
Nous vous accompagnons
Pensez à votre architecture
SÉCURITÉ BUDGET OPTIMALFIABILITÉ PERFORMANCE
Ressources AWS
Architectes Consultants Support Partenaires
AWS Training and Certification
Certification
aws.amazon.com/certification
Démontrez vos aptitudes,
connaissances, et
expertise sur la
plateforme AWS
Labs en ligne
aws.amazon.com/training/
self-paced-labs
Essayez des produits,
montez en compétence,
mettez en pratique les
technologies AWS
aws.amazon.com/training
Formation
Aiguisez vos compétences,
gagnez en confiance pour le
design, développement et
déploiement de vos
applications sur AWS
Merci !