SlideShare une entreprise Scribd logo
1  sur  58
Télécharger pour lire hors ligne
Responsable technique - MVP Azure
Construire des
applications Serverless
avec Azure
Samir AREZKI
@itfana
Meetup .NET Toulouse#DotnetTlse
SPEAKER
Samir AREZKI
Responsable technique chez Groupe HBF
Microsoft MVP Azure
@itfana
AGENDA
1. Serverless
2. La plateforme Serverless
d’Azure
3. Étude de cas
4. Mise en place
5. Pour aller plus loin
6. Questions / Réponses
SERVERLESS
L’ÉVOLUTION DES ARCHITECTURES APPLICATIVES
MONOLITHE
1 2 3 4
MICROSERVICES
SOA SERVERLESS
1 application = 1
système
Découpage en
services
Découpage en plus
petits services
Découpage en
fonctions
ÉVOLUTION DES PLATES-FORMES D’APPLICATIONS
SERVERLESS
• Function as a Service (FaaS)
– Exécution du code de votre fonction à la demande
– Paiement seulement pour le temps d’exécution de votre fonction
• Serverless = Compute + Patterns
• Les caractéristiques d’une application Serverless :
– Pas de serveurs à gérer
– Continuous scaling
– Ne jamais payer pour les serveurs inactifs (Never pay for idle)
– Utilisation de services tiers (Third party services)
LES PROMESSES D’UNE APPLICATION SERVERLESS
Scaling
automatique
Paiement
à l’utilisation
Abstraction
des serveurs
LES SCENARIOS
• Web
• Backends
• IoT
• Integration
• Bots
• IT Automation
• …
LES PLATEFORMES SERVERLESS
• Microsoft Azure Functions
• Amazon Lamda
• Google Cloud Functions
• …
PLATFORME SERVERLESS D’AZURE
PLATFORME SERVERLESS d’AZURE
Source : Microsoft
AZURE FUNCTIONS
• Azure Functions est un service de calcul qui permet d’exécuter du code à la
demande sans explicitement configurer ou gérer l’infrastructure.
– Calcul à la demande déclenché par des évènements
• Les langages de développement supportés :
– C#, F#, Node.js, Java, Python, TypeScript, PHP, Batch (.cmd, .bat), PowerShell
=
AZURE FUNCTIONS
• Deux plans d’hébergement:
– Plan App Service :
• Function App exécutées sur App Service plan tout comme les Web App (Basic, Standard
ou Premium)
• Gestion mise à l’échelle (horizontale, verticale)
• Paiement à la machine
• Modèle PaaS
– Plan dynamique de consommation (Dynamic) :
• Les Functions sont exécutées sur des serveurs mutualisés
• Mise à l’échelle dynamique
• Paiement à l’exécution (temps, mémoire)
• Modèle Serverless
AZURE FUNCTIONS - DEVELOPER EXPERIENCE & TOOLS
• Visual Studio Tools for
Azure Functions :
– Projet Visual Studio
– Debug en local
– Versionning
– Source Control (Git) & CI/CD
• Azure Functions Tools -
Extensions for VS Code
– https://github.com/johnpapa/v
scode-azure-functions-tools
AZURE FUNCTIONS WORKFLOW
1) Trigger
7) Develop Locally
3) Develop 4) Execute
6) Monitor and Improve
2) Input Binding 5) Output Binding
Web
Hooks
Azure Services Azure Services
App Services
Hosting Plans
Azure Services
Source : Microsoft
Azure Functions - Monitoring
• Intégration native avec Application Insights
– https://blogs.msdn.microsoft.com/appserviceteam/2017/04/06/azure-
functions-application-insights/
AZURE LOGIC APPS
• Service d’intégration
– Connecter les applications : on-
premises, hybrid et cloud
– Exécuter des scénarios d'intégration
complexes avec facilité
• Orchestration de workflow
• Notions de déclencheurs et d’actions
• Passage des paramètres d’actions en
actions
• Monitoring de l’exécution de chaque étape
• Plusieurs dizaines de modèles existants
AZURE LOGIC APPS CONNECTORS
• Connecteurs prêts à
l’emploi
– Connecteurs mangés
par la plateforme
• API connections
– Réutilisation
– Gestion depuis le
portal
Protocols/Native
XML & EDI
Hybrid
SaaS
AZURE LOGIC APPS : OUTILLAGE
• Logic Apps tools for Visual
Studio
– Logic Apps designer
– Deployment templates
– Source Control & CI/CD
AZURE LOGIC APPS : MONITORING
• Debugging and History
• Trigger history
• Run history
• Tracking
– Azure Monitoring
– Emit core tracking events
– Send to storage or event hub
– Use TrackedProperties for your
own tracking data
• Monitoring view
• Diagnostics & Alerts
Azure
ETUDE DE CAS
LE CONTEXTE
• Client : mySmartHome
– Métier de l’entreprise : Domotique & maison connectée
– Production, distribution et commercialisation de produits domotiques
• Canaux de vente :
– De la vente directe : un site web (e-commerce)
– De la vente indirecte : marketplaces (Amazon, Cdiscount,
Manomano….)
LE BESOIN
• Lancement d’une nouvelle offre domotique
• Les services à développer pour lancer la nouvelle offre :
– Une plateforme IoT (backend)
– Des APIs pour faciliter le développement d’applications
(web et mobile)
– Des dashboards pour le département marketing pour
suivre les ventes et la satisfaction (ou non) des clients
– ….
LES EXIGENCES
• Lancer la nouvelle offre rapidement
• Réduire les coûts de développement, de maintenance et
d’exploitation
• Garantir un niveau de service (SLA)
• Garantir les performances
• Faciliter la surveillance et la supervision
• Sécurité
MISE EN PLACE
LES SOLUTIONS POSSIBLES
VMs (IaaS) vs Containers (Docker) vs Serverless !!
MYSMARTHOME - ARCHITECTURE TECHNIQUE SERVERLESS
DocumentDB
IoT Hub
Functions
Capteurs
Functions
Application
Mobile
Logic App
Cognitives
Services
PowerBI
Marketplaces Webhook
Functions
App Service
DEMO 1 : IoT
DocumentDB
IoT Hub
Functions
Capteurs
IoT : Ingestion, traitement et stockage des trames
DEMO 1 : IOT
IoT : Ingestion, traitement et stockage des trames
Création d’une Azure Function
« mysmarthome-functionapp »
Configuration d’Azure Function : IoT Hub (EventHub)
Configuration d’Azure Function : IoT Hub (EventHub)
Configuration d’Azure Function : Bindings
Le code
{
"deviceId": "device_1",
"ip": "192.168.104.80",
"mac": "34:ea:34:e4:97:30",
"temperature":23 ,
"humidity": 51,
"airQuality": 0,
"lightLevel": 2,
"noiseLevel" : 1
},
Une trame :
Stockage dans Azure Documetdb.
DEMO 2 : API
DocumentDB
IoT Hub
Functions
Functions
Capteurs
Application
Mobile
API : Restitution des trames pour les applications
DEMO 2 : API
Restitution des trames pour les applications
Creation d’Azure Function : HTTP Trigger
Les bindings
Le code
Creation Azure Function Proxy
https://mysmarthome-functionapp.azurewebsites.net/frames/device_3
API :
DEMO 3 : E-commerce
E-commerce : analyse des commentaires clients sur les produits
DocumentDBLogic App
Cognitives
Services
PowerBI
Marketplaces Webhook
DEMO 3 : E-COMMERCE
E-commerce : analyse des commentaires clients
sur les produits
Workflow Logic Apps
Appel (HTTP) du Logic App
Stockage des commentaires dans DocumentDb
Dashboard Realtime PowerBI
POUR ALLER PLUS LOIN
STATIC WEBSITES WITH BLOB STORAGE AND FUNCTIONS
PROXIES
• https://markheath.net/post/static-websites-
azure-blob-storage-functions-proxies
AZURE FUNCTIONS – FONCTIONNALITÉS AVANCÉES
• Durable Functions :
– Fonctions durables
– Une extension d’Azure Functions permettant de
gérer les workflows Stateful
• Exemple : chainage de fonctions
– https://docs.microsoft.com/fr-fr/azure/azure-
functions/durable-functions-overview
AZURE FUNCTIONS – FONCTIONNALITÉS AVANCÉES
• Functions Runtime 2.0 (preview)
– https://blogs.msdn.microsoft.com/appserviceteam/2017/09/25/develop
-azure-functions-on-any-platform/
• Functions on Linux (preview)
– https://blogs.msdn.microsoft.com/appserviceteam/2017/11/15/functions
-on-linux-preview/
• Functions in IoT Edge (preview) :
– https://blogs.msdn.microsoft.com/appserviceteam/2017/11/15/azure-
functions-on-iot-edge/
Azure LOGIC APPS - FONCTIONNALITÉS AVANCÉES
• On-premises Data Gateway avec logic apps (hybrid)
– Pour accéder aux données locales, vous pouvez configurer une Data
Gateway pour les connecteurs Azure Logic Apps compatibles :
• BizTalk Server
• DB2
• File System
• Informix
• MQ
• MySQL
• Oracle Database
• SAP Application Server
• SAP Message Server
• SharePoint for HTTP only, not HTTPS
• SQL Server
• Teradata
– https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-gateway-
connection
CONCLUSION
AVANTAGES / INCONVÉNIENTS
Pros
- Pas de serveurs à gérer
- Évolutivité et flexibilité
- Coût plus bas*
- Moins de code
Cons
- Pas pour toutes les
applications
- Vendor lock-in*
- Décentralisation
QUESTIONS ?

Contenu connexe

Tendances

Integration Summit 16 : Azure API Management
Integration Summit 16 : Azure API Management Integration Summit 16 : Azure API Management
Integration Summit 16 : Azure API Management Cellenza
 
Integration Summit 16 - Keynote Integration Trends
Integration Summit 16 - Keynote Integration TrendsIntegration Summit 16 - Keynote Integration Trends
Integration Summit 16 - Keynote Integration TrendsCellenza
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiAZUG FR
 
Integration Summit 16 - Hybrid Integration
Integration Summit 16 - Hybrid IntegrationIntegration Summit 16 - Hybrid Integration
Integration Summit 16 - Hybrid IntegrationCellenza
 
Azure Api management
Azure Api managementAzure Api management
Azure Api managementMichel HUBERT
 
Global Azure Bootcamp GAB Paris 2017
Global Azure Bootcamp GAB Paris 2017Global Azure Bootcamp GAB Paris 2017
Global Azure Bootcamp GAB Paris 2017Alex Danvy
 
Integration Summit 16 - Tour d'horizon d'Azure Logic Apps
Integration Summit 16 - Tour d'horizon d'Azure Logic AppsIntegration Summit 16 - Tour d'horizon d'Azure Logic Apps
Integration Summit 16 - Tour d'horizon d'Azure Logic AppsCellenza
 
Investir sur son API web (in French)
Investir sur son API web (in French)Investir sur son API web (in French)
Investir sur son API web (in French)Restlet
 
Integration Summit 16 - Citizen Integrator / Flow - Power apps
Integration Summit 16 - Citizen Integrator / Flow - Power appsIntegration Summit 16 - Citizen Integrator / Flow - Power apps
Integration Summit 16 - Citizen Integrator / Flow - Power appsCellenza
 
APIs dans Azure : serverless ou pas serverless?
APIs dans Azure : serverless ou pas serverless?APIs dans Azure : serverless ou pas serverless?
APIs dans Azure : serverless ou pas serverless?Marius Zaharia
 
A la découverte d'Azure Logic App
A la découverte d'Azure Logic AppA la découverte d'Azure Logic App
A la découverte d'Azure Logic AppRadoine Douhou
 
Integration Summit 16 - Les nouveautés BizTalk Server 2016
Integration Summit 16 - Les nouveautés BizTalk Server 2016Integration Summit 16 - Les nouveautés BizTalk Server 2016
Integration Summit 16 - Les nouveautés BizTalk Server 2016Cellenza
 
Api gateway
Api gatewayApi gateway
Api gatewayMSDEVMTL
 
Architecture Moderne dans le Cloud en 2018
Architecture Moderne dans le Cloud en 2018Architecture Moderne dans le Cloud en 2018
Architecture Moderne dans le Cloud en 2018Marius Zaharia
 
SharePoint Framework : le développement SharePoint nouvelle génération
SharePoint Framework : le développement SharePoint nouvelle générationSharePoint Framework : le développement SharePoint nouvelle génération
SharePoint Framework : le développement SharePoint nouvelle générationMicrosoft Technet France
 
Integration Summit 16 : IoT, Service Fabric et Logic App
Integration Summit 16 : IoT, Service Fabric et Logic AppIntegration Summit 16 : IoT, Service Fabric et Logic App
Integration Summit 16 : IoT, Service Fabric et Logic AppCellenza
 
[GAB2016] La sécurité dans Azure - Estelle Auberix
[GAB2016] La sécurité dans Azure - Estelle Auberix[GAB2016] La sécurité dans Azure - Estelle Auberix
[GAB2016] La sécurité dans Azure - Estelle AuberixCellenza
 
back from ignite - digest uc
back from ignite - digest ucback from ignite - digest uc
back from ignite - digest uc2SeeU
 
Gouvernance de Sharepoint 2013 et architectures hybrides
Gouvernance de Sharepoint 2013 et architectures hybridesGouvernance de Sharepoint 2013 et architectures hybrides
Gouvernance de Sharepoint 2013 et architectures hybridesNabil Babaci
 

Tendances (20)

Integration Summit 16 : Azure API Management
Integration Summit 16 : Azure API Management Integration Summit 16 : Azure API Management
Integration Summit 16 : Azure API Management
 
Integration Summit 16 - Keynote Integration Trends
Integration Summit 16 - Keynote Integration TrendsIntegration Summit 16 - Keynote Integration Trends
Integration Summit 16 - Keynote Integration Trends
 
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir ArezkiGab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
Gab 2017 Lyon - les strategies d'intégration avec Azure iPaaS - Samir Arezki
 
Integration Summit 16 - Hybrid Integration
Integration Summit 16 - Hybrid IntegrationIntegration Summit 16 - Hybrid Integration
Integration Summit 16 - Hybrid Integration
 
Azure Api management
Azure Api managementAzure Api management
Azure Api management
 
Global Azure Bootcamp GAB Paris 2017
Global Azure Bootcamp GAB Paris 2017Global Azure Bootcamp GAB Paris 2017
Global Azure Bootcamp GAB Paris 2017
 
Integration Summit 16 - Tour d'horizon d'Azure Logic Apps
Integration Summit 16 - Tour d'horizon d'Azure Logic AppsIntegration Summit 16 - Tour d'horizon d'Azure Logic Apps
Integration Summit 16 - Tour d'horizon d'Azure Logic Apps
 
Investir sur son API web (in French)
Investir sur son API web (in French)Investir sur son API web (in French)
Investir sur son API web (in French)
 
Integration Summit 16 - Citizen Integrator / Flow - Power apps
Integration Summit 16 - Citizen Integrator / Flow - Power appsIntegration Summit 16 - Citizen Integrator / Flow - Power apps
Integration Summit 16 - Citizen Integrator / Flow - Power apps
 
APIs dans Azure : serverless ou pas serverless?
APIs dans Azure : serverless ou pas serverless?APIs dans Azure : serverless ou pas serverless?
APIs dans Azure : serverless ou pas serverless?
 
A la découverte d'Azure Logic App
A la découverte d'Azure Logic AppA la découverte d'Azure Logic App
A la découverte d'Azure Logic App
 
Integration Summit 16 - Les nouveautés BizTalk Server 2016
Integration Summit 16 - Les nouveautés BizTalk Server 2016Integration Summit 16 - Les nouveautés BizTalk Server 2016
Integration Summit 16 - Les nouveautés BizTalk Server 2016
 
Api gateway
Api gatewayApi gateway
Api gateway
 
Architecture Moderne dans le Cloud en 2018
Architecture Moderne dans le Cloud en 2018Architecture Moderne dans le Cloud en 2018
Architecture Moderne dans le Cloud en 2018
 
SharePoint Framework : le développement SharePoint nouvelle génération
SharePoint Framework : le développement SharePoint nouvelle générationSharePoint Framework : le développement SharePoint nouvelle génération
SharePoint Framework : le développement SharePoint nouvelle génération
 
Integration Summit 16 : IoT, Service Fabric et Logic App
Integration Summit 16 : IoT, Service Fabric et Logic AppIntegration Summit 16 : IoT, Service Fabric et Logic App
Integration Summit 16 : IoT, Service Fabric et Logic App
 
Retour d'experience Hybride
Retour d'experience HybrideRetour d'experience Hybride
Retour d'experience Hybride
 
[GAB2016] La sécurité dans Azure - Estelle Auberix
[GAB2016] La sécurité dans Azure - Estelle Auberix[GAB2016] La sécurité dans Azure - Estelle Auberix
[GAB2016] La sécurité dans Azure - Estelle Auberix
 
back from ignite - digest uc
back from ignite - digest ucback from ignite - digest uc
back from ignite - digest uc
 
Gouvernance de Sharepoint 2013 et architectures hybrides
Gouvernance de Sharepoint 2013 et architectures hybridesGouvernance de Sharepoint 2013 et architectures hybrides
Gouvernance de Sharepoint 2013 et architectures hybrides
 

Similaire à Meetup - Construire des applications serverless avec Azure

Microsoft experiences azure et asp.net core
Microsoft experiences   azure et asp.net coreMicrosoft experiences   azure et asp.net core
Microsoft experiences azure et asp.net coreSébastien Ollivier
 
SharePoint & Azure, le couple gagnant
SharePoint & Azure, le couple gagnantSharePoint & Azure, le couple gagnant
SharePoint & Azure, le couple gagnantMicrosoft
 
Architecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinArchitecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinThierry Buisson
 
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...AZUG FR
 
Windows Azure Camp du mardi 10 décembre 2013
Windows Azure Camp du mardi 10 décembre 2013Windows Azure Camp du mardi 10 décembre 2013
Windows Azure Camp du mardi 10 décembre 2013Microsoft Technet France
 
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...Marius Zaharia
 
AWS Paris Summit 2014 - T4 - Créez votre PaaS avec AWS
AWS Paris Summit 2014 - T4 - Créez votre PaaS avec AWSAWS Paris Summit 2014 - T4 - Créez votre PaaS avec AWS
AWS Paris Summit 2014 - T4 - Créez votre PaaS avec AWSAmazon Web Services
 
Retour d'expérience : rendre votre IT agile grâce au cloud hybride
Retour d'expérience : rendre votre IT agile grâce au cloud hybrideRetour d'expérience : rendre votre IT agile grâce au cloud hybride
Retour d'expérience : rendre votre IT agile grâce au cloud hybrideMicrosoft Décideurs IT
 
Retour d'expérience : rendre votre IT agile grâce au cloud hybride
Retour d'expérience : rendre votre IT agile grâce au cloud hybrideRetour d'expérience : rendre votre IT agile grâce au cloud hybride
Retour d'expérience : rendre votre IT agile grâce au cloud hybrideMicrosoft Technet France
 
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019Bonitasoft
 
Serverless avec Azure Functions & Logic Apps
Serverless avec Azure Functions & Logic AppsServerless avec Azure Functions & Logic Apps
Serverless avec Azure Functions & Logic AppsSamir Arezki ☁
 
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...Microsoft
 
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...Microsoft Technet France
 
Armportal presentation
Armportal presentationArmportal presentation
Armportal presentationLocPellicano
 
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...Amazon Web Services
 
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...vlabatut
 
Exadays cloud – Enjeux et Transformation du SI
Exadays   cloud – Enjeux et Transformation du SIExadays   cloud – Enjeux et Transformation du SI
Exadays cloud – Enjeux et Transformation du SISamir Arezki ☁
 
Expérience pratique de développement Azure
Expérience pratique de développement AzureExpérience pratique de développement Azure
Expérience pratique de développement AzureLevio
 
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hecPpt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hecYves LE CLEACH
 

Similaire à Meetup - Construire des applications serverless avec Azure (20)

Microsoft experiences azure et asp.net core
Microsoft experiences   azure et asp.net coreMicrosoft experiences   azure et asp.net core
Microsoft experiences azure et asp.net core
 
Azure Serverless C2S
Azure Serverless C2SAzure Serverless C2S
Azure Serverless C2S
 
SharePoint & Azure, le couple gagnant
SharePoint & Azure, le couple gagnantSharePoint & Azure, le couple gagnant
SharePoint & Azure, le couple gagnant
 
Architecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et XamarinArchitecturez vos applications mobiles avec Azure et Xamarin
Architecturez vos applications mobiles avec Azure et Xamarin
 
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...
GAB 2017 PARIS - La santé de votre environnement Azure par Manon Pernin et Ma...
 
Windows Azure Camp du mardi 10 décembre 2013
Windows Azure Camp du mardi 10 décembre 2013Windows Azure Camp du mardi 10 décembre 2013
Windows Azure Camp du mardi 10 décembre 2013
 
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
La santé de votre environnement Azure, entre Monitor, AppInsights et Log Anal...
 
AWS Paris Summit 2014 - T4 - Créez votre PaaS avec AWS
AWS Paris Summit 2014 - T4 - Créez votre PaaS avec AWSAWS Paris Summit 2014 - T4 - Créez votre PaaS avec AWS
AWS Paris Summit 2014 - T4 - Créez votre PaaS avec AWS
 
Retour d'expérience : rendre votre IT agile grâce au cloud hybride
Retour d'expérience : rendre votre IT agile grâce au cloud hybrideRetour d'expérience : rendre votre IT agile grâce au cloud hybride
Retour d'expérience : rendre votre IT agile grâce au cloud hybride
 
Retour d'expérience : rendre votre IT agile grâce au cloud hybride
Retour d'expérience : rendre votre IT agile grâce au cloud hybrideRetour d'expérience : rendre votre IT agile grâce au cloud hybride
Retour d'expérience : rendre votre IT agile grâce au cloud hybride
 
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019
Bonita 7.10 - Nathalie Cotté - Bonitaday Paris 2019
 
Serverless avec Azure Functions & Logic Apps
Serverless avec Azure Functions & Logic AppsServerless avec Azure Functions & Logic Apps
Serverless avec Azure Functions & Logic Apps
 
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
Quelles architectures pour vos applications Cloud, de la VM au conteneur : ça...
 
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
Retour d'expérience Bouygues Telecom : Analyse BI à l'aide d'une appliance SQ...
 
Armportal presentation
Armportal presentationArmportal presentation
Armportal presentation
 
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...
AWS Summit Paris - Track 4 - Session 2 - Migration Cloud, modernisation des a...
 
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...
Techdays 2012 : Mise en place d'une démarche ALM avec Visual Studio pour Wind...
 
Exadays cloud – Enjeux et Transformation du SI
Exadays   cloud – Enjeux et Transformation du SIExadays   cloud – Enjeux et Transformation du SI
Exadays cloud – Enjeux et Transformation du SI
 
Expérience pratique de développement Azure
Expérience pratique de développement AzureExpérience pratique de développement Azure
Expérience pratique de développement Azure
 
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hecPpt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hec
 

Plus de Samir Arezki ☁

Développer des applications mobiles modernes avec Azure & Xamarin
Développer des applications mobiles modernes avec Azure & XamarinDévelopper des applications mobiles modernes avec Azure & Xamarin
Développer des applications mobiles modernes avec Azure & XamarinSamir Arezki ☁
 
Gab2016 - Découverte d'Azure IoT Hub
Gab2016 - Découverte d'Azure IoT Hub Gab2016 - Découverte d'Azure IoT Hub
Gab2016 - Découverte d'Azure IoT Hub Samir Arezki ☁
 
Azure Active Directory problématique Web SSO
Azure Active Directory problématique Web SSOAzure Active Directory problématique Web SSO
Azure Active Directory problématique Web SSOSamir Arezki ☁
 
Les services de données (SQL/NoSQL) sur Azure
Les services de données (SQL/NoSQL) sur AzureLes services de données (SQL/NoSQL) sur Azure
Les services de données (SQL/NoSQL) sur AzureSamir Arezki ☁
 
Tech days2015 cedricderue_samirarezki_approche_devops_pour_builder_une_soluti...
Tech days2015 cedricderue_samirarezki_approche_devops_pour_builder_une_soluti...Tech days2015 cedricderue_samirarezki_approche_devops_pour_builder_une_soluti...
Tech days2015 cedricderue_samirarezki_approche_devops_pour_builder_une_soluti...Samir Arezki ☁
 
Techdays Tour 2015 - Concevoir et développer une application saas sur microso...
Techdays Tour 2015 - Concevoir et développer une application saas sur microso...Techdays Tour 2015 - Concevoir et développer une application saas sur microso...
Techdays Tour 2015 - Concevoir et développer une application saas sur microso...Samir Arezki ☁
 

Plus de Samir Arezki ☁ (8)

Développer des applications mobiles modernes avec Azure & Xamarin
Développer des applications mobiles modernes avec Azure & XamarinDévelopper des applications mobiles modernes avec Azure & Xamarin
Développer des applications mobiles modernes avec Azure & Xamarin
 
Gab2016 - Découverte d'Azure IoT Hub
Gab2016 - Découverte d'Azure IoT Hub Gab2016 - Découverte d'Azure IoT Hub
Gab2016 - Découverte d'Azure IoT Hub
 
Azure IoT Suite
Azure IoT Suite Azure IoT Suite
Azure IoT Suite
 
Azure Active Directory problématique Web SSO
Azure Active Directory problématique Web SSOAzure Active Directory problématique Web SSO
Azure Active Directory problématique Web SSO
 
Les services de données (SQL/NoSQL) sur Azure
Les services de données (SQL/NoSQL) sur AzureLes services de données (SQL/NoSQL) sur Azure
Les services de données (SQL/NoSQL) sur Azure
 
Azure API Management
Azure API ManagementAzure API Management
Azure API Management
 
Tech days2015 cedricderue_samirarezki_approche_devops_pour_builder_une_soluti...
Tech days2015 cedricderue_samirarezki_approche_devops_pour_builder_une_soluti...Tech days2015 cedricderue_samirarezki_approche_devops_pour_builder_une_soluti...
Tech days2015 cedricderue_samirarezki_approche_devops_pour_builder_une_soluti...
 
Techdays Tour 2015 - Concevoir et développer une application saas sur microso...
Techdays Tour 2015 - Concevoir et développer une application saas sur microso...Techdays Tour 2015 - Concevoir et développer une application saas sur microso...
Techdays Tour 2015 - Concevoir et développer une application saas sur microso...
 

Meetup - Construire des applications serverless avec Azure

  • 1. Responsable technique - MVP Azure Construire des applications Serverless avec Azure Samir AREZKI @itfana Meetup .NET Toulouse#DotnetTlse
  • 2. SPEAKER Samir AREZKI Responsable technique chez Groupe HBF Microsoft MVP Azure @itfana
  • 3. AGENDA 1. Serverless 2. La plateforme Serverless d’Azure 3. Étude de cas 4. Mise en place 5. Pour aller plus loin 6. Questions / Réponses
  • 5. L’ÉVOLUTION DES ARCHITECTURES APPLICATIVES MONOLITHE 1 2 3 4 MICROSERVICES SOA SERVERLESS 1 application = 1 système Découpage en services Découpage en plus petits services Découpage en fonctions
  • 6. ÉVOLUTION DES PLATES-FORMES D’APPLICATIONS
  • 7. SERVERLESS • Function as a Service (FaaS) – Exécution du code de votre fonction à la demande – Paiement seulement pour le temps d’exécution de votre fonction • Serverless = Compute + Patterns • Les caractéristiques d’une application Serverless : – Pas de serveurs à gérer – Continuous scaling – Ne jamais payer pour les serveurs inactifs (Never pay for idle) – Utilisation de services tiers (Third party services)
  • 8. LES PROMESSES D’UNE APPLICATION SERVERLESS Scaling automatique Paiement à l’utilisation Abstraction des serveurs
  • 9. LES SCENARIOS • Web • Backends • IoT • Integration • Bots • IT Automation • …
  • 10. LES PLATEFORMES SERVERLESS • Microsoft Azure Functions • Amazon Lamda • Google Cloud Functions • …
  • 13. AZURE FUNCTIONS • Azure Functions est un service de calcul qui permet d’exécuter du code à la demande sans explicitement configurer ou gérer l’infrastructure. – Calcul à la demande déclenché par des évènements • Les langages de développement supportés : – C#, F#, Node.js, Java, Python, TypeScript, PHP, Batch (.cmd, .bat), PowerShell =
  • 14. AZURE FUNCTIONS • Deux plans d’hébergement: – Plan App Service : • Function App exécutées sur App Service plan tout comme les Web App (Basic, Standard ou Premium) • Gestion mise à l’échelle (horizontale, verticale) • Paiement à la machine • Modèle PaaS – Plan dynamique de consommation (Dynamic) : • Les Functions sont exécutées sur des serveurs mutualisés • Mise à l’échelle dynamique • Paiement à l’exécution (temps, mémoire) • Modèle Serverless
  • 15. AZURE FUNCTIONS - DEVELOPER EXPERIENCE & TOOLS • Visual Studio Tools for Azure Functions : – Projet Visual Studio – Debug en local – Versionning – Source Control (Git) & CI/CD • Azure Functions Tools - Extensions for VS Code – https://github.com/johnpapa/v scode-azure-functions-tools
  • 16. AZURE FUNCTIONS WORKFLOW 1) Trigger 7) Develop Locally 3) Develop 4) Execute 6) Monitor and Improve 2) Input Binding 5) Output Binding Web Hooks Azure Services Azure Services App Services Hosting Plans Azure Services Source : Microsoft
  • 17. Azure Functions - Monitoring • Intégration native avec Application Insights – https://blogs.msdn.microsoft.com/appserviceteam/2017/04/06/azure- functions-application-insights/
  • 18. AZURE LOGIC APPS • Service d’intégration – Connecter les applications : on- premises, hybrid et cloud – Exécuter des scénarios d'intégration complexes avec facilité • Orchestration de workflow • Notions de déclencheurs et d’actions • Passage des paramètres d’actions en actions • Monitoring de l’exécution de chaque étape • Plusieurs dizaines de modèles existants
  • 19. AZURE LOGIC APPS CONNECTORS • Connecteurs prêts à l’emploi – Connecteurs mangés par la plateforme • API connections – Réutilisation – Gestion depuis le portal Protocols/Native XML & EDI Hybrid SaaS
  • 20. AZURE LOGIC APPS : OUTILLAGE • Logic Apps tools for Visual Studio – Logic Apps designer – Deployment templates – Source Control & CI/CD
  • 21. AZURE LOGIC APPS : MONITORING • Debugging and History • Trigger history • Run history • Tracking – Azure Monitoring – Emit core tracking events – Send to storage or event hub – Use TrackedProperties for your own tracking data • Monitoring view • Diagnostics & Alerts Azure
  • 23. LE CONTEXTE • Client : mySmartHome – Métier de l’entreprise : Domotique & maison connectée – Production, distribution et commercialisation de produits domotiques • Canaux de vente : – De la vente directe : un site web (e-commerce) – De la vente indirecte : marketplaces (Amazon, Cdiscount, Manomano….)
  • 24. LE BESOIN • Lancement d’une nouvelle offre domotique • Les services à développer pour lancer la nouvelle offre : – Une plateforme IoT (backend) – Des APIs pour faciliter le développement d’applications (web et mobile) – Des dashboards pour le département marketing pour suivre les ventes et la satisfaction (ou non) des clients – ….
  • 25. LES EXIGENCES • Lancer la nouvelle offre rapidement • Réduire les coûts de développement, de maintenance et d’exploitation • Garantir un niveau de service (SLA) • Garantir les performances • Faciliter la surveillance et la supervision • Sécurité
  • 27. LES SOLUTIONS POSSIBLES VMs (IaaS) vs Containers (Docker) vs Serverless !!
  • 28. MYSMARTHOME - ARCHITECTURE TECHNIQUE SERVERLESS DocumentDB IoT Hub Functions Capteurs Functions Application Mobile Logic App Cognitives Services PowerBI Marketplaces Webhook Functions App Service
  • 29. DEMO 1 : IoT DocumentDB IoT Hub Functions Capteurs IoT : Ingestion, traitement et stockage des trames
  • 30. DEMO 1 : IOT IoT : Ingestion, traitement et stockage des trames
  • 31. Création d’une Azure Function « mysmarthome-functionapp »
  • 32. Configuration d’Azure Function : IoT Hub (EventHub)
  • 33. Configuration d’Azure Function : IoT Hub (EventHub)
  • 36. { "deviceId": "device_1", "ip": "192.168.104.80", "mac": "34:ea:34:e4:97:30", "temperature":23 , "humidity": 51, "airQuality": 0, "lightLevel": 2, "noiseLevel" : 1 }, Une trame :
  • 37. Stockage dans Azure Documetdb.
  • 38. DEMO 2 : API DocumentDB IoT Hub Functions Functions Capteurs Application Mobile API : Restitution des trames pour les applications
  • 39. DEMO 2 : API Restitution des trames pour les applications
  • 40. Creation d’Azure Function : HTTP Trigger
  • 45. DEMO 3 : E-commerce E-commerce : analyse des commentaires clients sur les produits DocumentDBLogic App Cognitives Services PowerBI Marketplaces Webhook
  • 46. DEMO 3 : E-COMMERCE E-commerce : analyse des commentaires clients sur les produits
  • 48. Appel (HTTP) du Logic App
  • 49. Stockage des commentaires dans DocumentDb
  • 52. STATIC WEBSITES WITH BLOB STORAGE AND FUNCTIONS PROXIES • https://markheath.net/post/static-websites- azure-blob-storage-functions-proxies
  • 53. AZURE FUNCTIONS – FONCTIONNALITÉS AVANCÉES • Durable Functions : – Fonctions durables – Une extension d’Azure Functions permettant de gérer les workflows Stateful • Exemple : chainage de fonctions – https://docs.microsoft.com/fr-fr/azure/azure- functions/durable-functions-overview
  • 54. AZURE FUNCTIONS – FONCTIONNALITÉS AVANCÉES • Functions Runtime 2.0 (preview) – https://blogs.msdn.microsoft.com/appserviceteam/2017/09/25/develop -azure-functions-on-any-platform/ • Functions on Linux (preview) – https://blogs.msdn.microsoft.com/appserviceteam/2017/11/15/functions -on-linux-preview/ • Functions in IoT Edge (preview) : – https://blogs.msdn.microsoft.com/appserviceteam/2017/11/15/azure- functions-on-iot-edge/
  • 55. Azure LOGIC APPS - FONCTIONNALITÉS AVANCÉES • On-premises Data Gateway avec logic apps (hybrid) – Pour accéder aux données locales, vous pouvez configurer une Data Gateway pour les connecteurs Azure Logic Apps compatibles : • BizTalk Server • DB2 • File System • Informix • MQ • MySQL • Oracle Database • SAP Application Server • SAP Message Server • SharePoint for HTTP only, not HTTPS • SQL Server • Teradata – https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-gateway- connection
  • 57. AVANTAGES / INCONVÉNIENTS Pros - Pas de serveurs à gérer - Évolutivité et flexibilité - Coût plus bas* - Moins de code Cons - Pas pour toutes les applications - Vendor lock-in* - Décentralisation