Ce diaporama a bien été signalé.
Le téléchargement de votre SlideShare est en cours. ×

Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle solution pour mes besoins

Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Chargement dans…3
×

Consultez-les par la suite

1 sur 26 Publicité

Plus De Contenu Connexe

Diaporamas pour vous (20)

Similaire à Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle solution pour mes besoins (20)

Publicité

Plus récents (20)

Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle solution pour mes besoins

  1. 1. Lost in serverless AWS Lambda, Google Cloud Function, Azure Function quelle solution pour mes besoins ! BDX.IO 2018
  2. 2. Ippon Technologies 2018 The market for public cloud is predicted to reach from $260 billion in 2017 to around $411 billion in 2020. Gartner Plus d’un million de clients chez AWS. Autour de ~6 millions de VM actives chez AWS PIB Norvège: 406 Milliards $
  3. 3. Ippon Technologies © 2018 About Sébastien Moreno @sebastienmoreno #devops #cloud #java #docker
  4. 4. Ippon Technologies © 2018 XaaS ?
  5. 5. Ippon Technologies © 2018 ● FaaS ➔ Plateforme Cloud permettant d’exécuter des fonctions d’une application sans gérer l’infrastructure ➔ Ex.: batch processing, stream processing, ETL, IoT services ● BaaS ➔ Middleware fournissant API et SDK pour se connecter aux services du Cloud ➔ Ex.: cloud storage, push notifications, server code, user and file management, social networking integration, location services, user management... ● SaaS ➔ Services accessibles par le web ➔ Ex.:customer relationship management (CRM), document management, accounting, human resource (HR) management Cloud et Serverless
  6. 6. Ippon Technologies © 2018 Caractéristiques Infrastructure Containers Plateforme Fonctions Scalabilité A la demande: pas de serveur coût faibleEvent-driven
  7. 7. Ippon Technologies © 2018 Use cases ? ● Authentification ● Transformation de fichiers ● Interrogation référentiel ● Batch processing ● Stream processing ● ETL ● IoT services ● … trigger pour d’autres FaaS ● ...
  8. 8. Ippon Technologies © 2018 Exemples: Alexa skills
  9. 9. Ippon Technologies © 2018 Exemples: e-commerce
  10. 10. Ippon Technologies © 2018 Exemples: Station Météo
  11. 11. Ippon Technologies © 2018 Exemple: traitement d’images
  12. 12. Ippon Technologies © 2018 Faas: du positif… et du négatif ! + La scalabilité + Le coût + Disponibilité + Maintenance + Déploiement - Architecture complexe - Vendor lock-in - Limitations techniques
  13. 13. Ippon Technologies © 2018 AWS Lambda Google Cloud Functions Azure Functions Principales plateformes FaaS AWS Lambda Novembre 2014 référence serverless intégration services Azure Functions Novembre 2016 2 Runtimes : 1.x (Portail Azure) 2.x (.NET Core 2) Windows/Linux (Preview) Google Cloud Functions alpha février 2016 (officiel juillet 2018) HTTP (synchrone) et Background (asynchrone)
  14. 14. Ippon Technologies © 2018 AWS Lambda Google Cloud Functions Azure Functions Langages ● .Net Core 1.0 (C#) ● .Net Core 2.0 (C#) ● .Net Core 2.1 (C#/PowerShell) ● Go 1.x ● Java 8 ● Node.js 4.3 ● Node.js 6.10 ● Node.js 8.10 ● Python 2.7 ● Python 3.6 HTTP et Background functions: ● Javascript (NodeJS) ● Python Runtimes: ● Node.js 6 ● Node.js 8 (beta) ● Python 3.7 (beta) Supported ● C# (1.x: .NET Framework 4.7) (2.x: .NET Core 2) ● JavaScript (1.x: NodeJS 6) (2.x:NodeJS 8 & 10) ● F# (1.x: .NET Framework 4.7) (2.x: .NET Core 2) ● Java8 (1.x:N/A) (2.x:Preview ● TypeScript (2.x) Experimental 1.x ● Python ● TypeScript (2.x) ● PHP ● Batch (.cmd, .bat) ● Bash ● PowerShell
  15. 15. Ippon Technologies © 2018 AWS Lambda Google Cloud Functions Azure Functions Développement ● Cloud Functions Node.js Emulator (NodeJS 6.10) ● Outils de dev classiques pour NodeJS, Python ● From scratch / Blueprints ● Cloud9-based code editor ● Serverless Application Model ➔ SAM Template ➔ SAM CLI ● IDE: ➔ AWS Toolkit for Eclipse ➔ Toolkit for Visual Studio IDE (Lambda .Net) ➔ IntelliJ Connector for AWS Lambda ● SDK (Go, .Net, NodeJS…) ● OS Windows: .Net,JS,Java ● OS Linux(preview): JS,.Net,Docker ● Azure Functions Core Tools (test, deploy) ● On-premise runtime: Azure Functions Runtime ● Maven: Archetype, plugin(build,test local, deploy...) ● IDE: ➔ VS Code ➔ VS IDE ➔ IntelliJ (preview) ➔ Eclipse (preview)
  16. 16. Ippon Technologies © 2018 AWS Lambda Google Cloud Functions Azure Functions ● Serverless Application Model (SAM) ● Cloudformation ● The serverless.com framework (multi language) ● Apex (multi language) ● Chalice (Python) ● ClaudiaJS (NodeJS) ● Serverless Express(ExpressJS) ● Sparta(Go) ● Zappa(Python) ● Serverless Java Container ● SLAppForge Sigma ● Terraform Outils déploiement ● gcloud SDK ● Terraform ● The serverless.com framework ● SLAppForge Sigma (bientôt) ● azure CLI ● Terraform ● The serverless.com framework ● SLAppForge Sigma (bientôt)
  17. 17. Ippon Technologies © 2018 AWS Lambda Google Cloud Functions Azure Functions ● Déploiement: stockage S3 ● CI AWS: ➔ AWS CODESTAR ➔ AWS CODEPIPELINE ➔ AWS CODEBUILD ➔ AWS CODEDEPLOY ● Jenkins: Plugin AWS Lambda ● Autres: CloudBees, Codeship... ● Versions: ➔ Version / Aliases (DEV, PROD) Outils DevOps ● Déploiement: Cloud Storage ● Repository proxy: connexion entre Github, Bitbucket et Google Source Repository ● CI Google: Code Build (gcloud build step) ● Jenkins: Plugin Google Cloud, gcloud ● Versions: pas de versions ● Déploiement zip: Azure CLI ● Repositories: BitBucket, Dropbox, GitHub et Azure DevOps ● CI Azure: App Services ● Jenkins: plugins Azure (deploy et App Services) ● Versions: pas de versions, mais “Environnements slots(preview)”
  18. 18. Ippon Technologies © 2018 AWS Lambda Google Cloud Functions Azure Functions Monitoring ● Logs: CloudWatch Logs ● Monitoring: CloudWatch, CloudTrail ● Analyser et déboguer: XRay ● Autres: IOpipe, Datadog, Loggly, Splunk et Sumo Logic ● Logs & Monitoring: StackDriver ● Logs: gcloud ● Logs & Monitoring: Azure Application Insights ➔ Logs streaming ➔ Process Explorer ➔ Metrics ➔ Alertes ● Logs ➔ Kudu ➔ Table Storage
  19. 19. Ippon Technologies © 2018 AWS Lambda Google Cloud Functions Azure Functions Triggers • Amazon S3 Bucket • Amazon DynamoDB • Amazon Kinesis Data Streams • Amazon Simple Notification Service • Amazon Simple Email Service • Amazon Cognito • CloudFormation • CloudWatch Logs / Events • CodeCommit • Scheduler • Resource Configuration • Alexa • Lex • HTTP • IOT • CloudFront • Kinesis Data Firehose ● Firebase real-time database ● Firebase authentication ● Firebase Analytics ● Cloud Storage ● Cloud Pub/Sub ● HTTP ● Stack driver logging • Blob Storage • Cosmos DB • Event Grid • Event Hubs • HTTP • Microsoft Graph • Queue storage • Service Bus • Timer • Webhooks
  20. 20. Ippon Technologies © 2018 AWS Lambda Google Cloud Functions Azure Functions Coût Free tier par mois: 1 million de requêtes 400,000 Gb-s Ensuite: 0,20$ par million de requête 0,000 016$/GB-s Data In: Gratuit Data Out: 0,05-0,09$/GB Free tier par mois: 2 millions de requêtes 400,000 Gb-s et 200,000 GHz-s CPU 5GB of Internet egress traffic Ensuite: 0,40$ par million de requête 0,0000025$/GB-s et 0,00001$/GHz- s Data In: Gratuit Data Out: 0,12$/GB Free tier par mois: 1 million de requêtes 400,000 Gb-s Ensuite: 0,20$ par million de requête 0,000 016 67$/GB-s Data In: 0,1$ 0,2$ VPC/Région Data Out: 0,05-0,09$/GB Les services du Cloud utilisés peuvent changer le coût global de l’architecture.
  21. 21. Ippon Technologies © 2018 Exemple de coût 3 Millions d’exécutions, à 512Mo (800MHz), de 1 seconde chaque: http://serverlesscalc.com Ne prends pas en compte trafic réseau et autres services (stockage, API...).
  22. 22. Ippon Technologies © 2018 AWS Lambda Google Cloud Functions Azure Functions Limitations Exécutions concurrentes: 1000 Mémoire max 3008 Mo Durée 5 minutes -> 15 minutes Déploiement: 50 MB (zipped), 256 MB (unzipped), 3 MB (console editor) Exécutions concurrentes: 1000 Mémoire max 2048 Mo Durée 9 minutes Déploiement: 100MB (compressed) for sources. 500MB (uncompressed) for sources plus modules. Exécutions concurrentes: 200 Mémoire max 1536 Mo Durée 10 minutes
  23. 23. Ippon Technologies © 2018 AWS Lambda Google Cloud Functions Azure Functions Avantages: ● Mise en oeuvre simple (HTTP, Background) ● Capitalise sur la plateforme mobile Firebase ● Ergonomie, Simplicité Inconvénients: ● Juste sortie de la beta ● Basique, peu de langages ● Outillage basique ● Intégrations services limités Conclusions Avantages: ● Pionnier du Cloud Serverless ● Bonne maturité ● Langages ● Forte intégration avec autres services ● Outils riches Inconvénients: ● Complexe ● Coûts global Avantages: ● Scénarios d’usage riches ● Ergonomie ● Outils riches ● Outillage Dev Inconvénients: ● Intégrations services limités ● Runtimes inégaux ● Manque de maturité (previews)
  24. 24. Ippon Technologies © 2018 Pour aller plus loin ● Les besoins en services Cloud peuvent être déterminants ● AWS mise beaucoup sur Lambda comme feature clé ➔ Nouvelles fonctionnalités très régulières ➔ Fait sauter limitations ➔ Très large: IOT (Greengrass), Data, API, Alexa... ● Azure est challenger ➔ Fonctionnalités proches ➔ Propose fonction à base de container Docker ➔ Durable functions (états) et Webjobs functions (tâches arrière-plan) ● Google Cloud Function ➔ Mise sur simplicité, bonne intégration Firebase (mobile) ➔ Projet OSS Knative pour serverless dans Kubernetes
  25. 25. Merci !
  26. 26. Ippon Technologies 2018 Ippon.fr contact@ippon.fr +33 1 46 12 48 48 @IpponTech

×