[GAB2016] Workshop - Industrialisez vos expérimentations Azure Machine Learni...
Integration Summit 16 - Hybrid Integration
1. Hybrid Integration : Logic
Apps, BizTalk Server better
together
Integration Summit @Microsoft !
2. Radoine Douhou
Consulting Manager Cloud & Integration
Jacques Nhouyvanisvong
Senior Integration Architect
Jean-Pierre Auconie
Senior Escalation Engineer
BizTalk EMEA support team
Microsoft France
3. Microsoft Hybrid Integration
Face à un Système d’Information Hybride, une plateforme d’intégration Hybride devient
indispensable pour garantir continuité et fluidité des processus métiers d’une
organisation au-delà de ses frontières !
4. 1 Notre scénario
3
L’intégration hybride avec Logic Apps et BizTalk Server2
BizTalk Server 2016
Application On-premises vers Application Cloud
Application Cloud vers Application On-premises
4 Questions
Les nouveautés BizTalk Server 2016
BizTalk Health Monitor v4
5. Nos scénarios : synchronisation de référentiels
Les clients crées ou modifiés dans
SalesForce à synchroniser avec le
Back Office de mon SI
BizTalk Server
Azure Logic
Apps
DEBMAS
Push Account
When Account is
created or updated
3
2
1
BizTalk Server
Azure Logic
Apps
MATMAS
Push Product
Upsert Product
1
2
3
Les Produits crées ou modifiés
dans mon Back Office à
synchroniser dans mon SI
#1 #2
6. Scénario #1 : La solution hybride
Salesforce
Azure Logic App
(Azure Service Bus)
On-premises data gateway
On-premises BizTalk Server
Logic App Adapter
Azure On-premises data gateway
connection
On-premises data gateway
On-premises data gateway sert de pont entre Azure et le
serveur local.
Le transfert de données est sécurisé par l’intermédiaire d’un
Service Bus Azure Relay.
Le Service Bus crée un canal sécurisé entre Azure et le server
local via une connexion sortante sur la passerelle en utilisant
les ports 443, 5671, 5672, 9350 à 9354.
Pas de connexion entrante sur le serveur on premise.
Logic App Adapter
BizTalk Server dispose désormais d’un nouvel adapter bi-
directionnel pour communiquer avec Azure Logic App.
7. Etape #1 : BizTalk Server Logic App Adapter
1. Installer le Logic App Adapter pour BizTalk Server.
Le Logic App adapter est un adapter bi-directionnel.
2. Configurer les 2 EndPoints IIS.
1 AppPool pour BizTalk Server.
1 EndPoint pour le Logic App Adapter BizTalkManagementService.
1 Endpoint pour le Logic App Adapter BizTalkWcfService.
Salesforce
Azure Logic App
(Azure Service Bus)
On-premises data gateway
On-premises BizTalk Server
Logic App Adapter
Azure On-premises data gateway
connection
8. Etape #2 : On-premises Data Gateway
1. Installer l’On-premises data gateway
L’On-premises data gateway sert de pont entre Azure et le serveur
local.
Le transfert de données est sécurisé par l’intermédiaire d’un Service
Bus Azure.
Le Service Bus crée un canal sécurisé entre Azure et le server local
via une connexion sortante sur la passerelle en utilisant les ports
443, 5671, 5672, 9350 à 9354.
Pas de connexion entrante sur le serveur local.
2. Créer un utilisateur dans l’Azure Active Directory de
votre organisation.
La configuration de l’On-premises data gateway requiert
impérativement un utilisateur du type
onpremdatagatewayuser@yourorganization.onmicrosoft.com.
Cet utilisateur doit être créer depuis le portail Azure Classic.
Cet utilisateur doit être co-administrateur de votre souscription
Azure.
3. Configurer l’On-premises data gateway sur le serveur
BizTalk
Se connecter à Azure en utilisant le compte
onprematagatewayuser@yourorganization.onmicrosoft.com.
Redémarrer le service après la configuration.
Salesforce
Azure Logic App
(Azure Service Bus)
On-premises data gateway
On-premises BizTalk Server
Logic App Adapter
Azure On-premises data gateway
connection
9. Etape #3 : On-premises data gateway connexion
1. Ajouter une ressource de type On-premises
data gateway depuis le portail Azure.
Cette connexion va permettre à Logic App de
communiquer avec BizTalk Server on-premises
via la « data gateway ».
Salesforce
Azure Logic App
(Azure Service Bus)
On-premises data gateway
On-premises BizTalk Server
Logic App Adapter
Azure On-premises data gateway
connection
10. Etape #4 – Le ½ flux Logic App
Salesforce
Azure Logic App
(Azure Service Bus)
On-premises data gateway
On-premises BizTalk Server
Logic App Adapter
Azure On-premises data gateway
connection
Créer un Logic App avec 3 steps :
Pour scruter dans Salesforce à intervalle
régulier la creation ou modification d’un
client.
Pour transformer le message du format
Saleforce JSON au format BizTalk XML.
Cet API affichera l’ensemble des schémas
déployés sur la plateforme BizTalk Server on-
premises grâce l’« On-premises data gateway
».
Pour envoyer le message vers le port de
réception de BizTalk.
Cet API affichera l’ensemble des Receive
Location de type Logic App sur la plateforme
BizTalk Server on-premises toujours grâce à l’ «
On-premises data gateway ».
11. Etape #5 – Configurer le Receive Port BizTalk
Salesforce
Azure Logic App
(Azure Service Bus)
On-premises data gateway
On-premises BizTalk Server
Logic App Adapter
Azure On-premises data gateway
connection
1. Créer un Receive port/Receive Location de
type Logic App.
Configurer l’URI pour pointer sur le EndPoint IIS
BizTalkWcfService.
13. Tutoriels pour la démo #1
Créer un compte professionnel dans Azure Active Directory
https://docs.microsoft.com/en-us/azure/virtual-machines/virtual-machines-windows-create-aad-work-id#locate-your-default-
directory-in-the-azure-classic-portal
Installer On-premises data gateway pour Logic App
https://docs.microsoft.com/en-us/azure/app-service-logic/app-service-logic-gateway-install
Se connecter à l’On-premises data gateway pour Logic App
https://docs.microsoft.com/en-us/azure/app-service-logic/app-service-logic-gateway-connection
Installer et configurer l’adapter Logic App
https://msdn.microsoft.com/en-us/library/mt787163.aspx
14. Salesforce
On-premises BizTalk Server
Logic App Adapter
Azure Logic App
Azure Integration Account
Azure Function
Scénario #2 : La solution hybride(App On-premises
vers App Cloud)
Azure Integration Account
Integration Account est un compte Azure pour stocker
schémas, mappings, certificats, partenaires et contrats
utilisable par les Logic Apps.
Azure Function
Azure Function est une solution « serverless architecture »
conçue pour exécuter des petits morceaux de code dans le
Cloud.
Logic App Adapter
• BizTalk Server dispose désormais d’un nouvel adapter bi-
directionnel pour communiquer avec Azure Logic App.
15. Etape #1 : Installer Logic App Adapter
1. Installer le Logic App Adapter pour BizTalk Server.
Le Logic App adapter est un adapter bi-directionnel.
Salesforce
On-premises BizTalk Server
Logic App Adapter
Azure Logic App
Azure Integration Account
Azure Function
16. Etape #2 : Créer un Azure Integration Account
1. Créer un Azure Integration Account.
Integration Account est un compte Azure pour
stocker schémas, mappings, certificats, partenaires
et contrats utilisable par les Logic Apps.
Uploader les schémas et mapping XSLT
développés pour BizTalk Server.
Salesforce
On-premises BizTalk Server
Logic App Adapter
Azure Logic App
Azure Integration Account
Azure Function
17. Etape #3 : Créer un Azure Function
La création d’un Azure Function est nécessaire pour
exécuter le mapping XSLT.
1. Créer un Azure Function en utilisant un template
ARM disponible sur github.
https://github.com/Azure/azure-quickstart-
templates/tree/master/201-logic-app-
transform-function
Ce template permet de créer rapidement une
Azure Function utilisable par Azure Logic App
pour faire de la transformation XML.
Cette fonction renvoi par défaut un message
XML.
Salesforce
On-premises BizTalk Server
Logic App Adapter
Azure Logic App
Azure Integration Account
Azure Function
18. Etape #4 – Créer un Logic App
Créer un Logic App avec 4 steps :
Avant de construire le Logic App, il faut associer
l’Azure Integration Account.
1. Utiliser un connecteur HTTP Post Request pour
que ce Logic App soit exposé en tant que
service et recevoir un message JSON multi-
occurrence.
2. Convertir le message JSON en XML.
• Cet API affichera l’ensemble des schémas qui ont
été uploadés dans l’Azure Integration Account.
3. Transformer le message BizTalk en message
SalesForce.
Cet API permet d’appeler l’Azure Function créé
précédemment en passant en paramètre le
message XML et le mapping XSLT à utiliser.
4. Boucler sur chaque occurrence et créer l’objet
dans SalesForce.
Salesforce
On-premises BizTalk Server
Logic App Adapter
Azure Logic App
Azure Integration Account
Azure Function
19. Etape #4 – Configurer le Send Port BizTalk
1. Créer un Send Port de type LogicApp.
Renseigner l’URI du Logic App à appeler.
Renseigner le HTTP Header avec « Content-
Type:application/json ».
Salesforce
On-premises BizTalk Server
Logic App Adapter
Azure Logic App
Azure Integration Account
Azure Function
21. Tutoriels pour la démo #2
Vue d’ensemble de Azure Integration Account
https://docs.microsoft.com/en-us/azure/app-service-logic/app-service-logic-enterprise-integration-accounts
Template ARM pour créer une Azure Function pour faire de la transformation XML
https://github.com/Azure/azure-quickstart-templates/tree/master/201-logic-app-transform-function
Installer et configurer l’adapter Logic App
https://msdn.microsoft.com/en-us/library/mt787163.aspx
22. Conclusion
Logic Apps :
Connecteur SalesForce prêt à l’emploi en mode Push et Poll. L’ensemble des entités SalesForce accessible
Iteration, Transformation des messages.
Integration Account :
Réutilisation de composants existants On Premise : Schema et Mappings xslt.
BizTalk Server : Adapter Bi-directionnels avec Logic Apps.
On-Premise Data Gateway : la glue entre le Cloud et On-Premise.
Basé sur Azure Service Bus Relay
Ouverture de ports OUTBOUND uniquement.
Les données référentielles circulent de manière fluide au fil de l’eau entre mes systèmes grace à la
plateforme d’Integration Hybride.
Commentaires
Ces 2 EndPoints servent uniquement en réception depuis BizTalk pour communiquer avec la « gateway ».
Bon à savoir : l’On-premises data gateway est nécessaire dans les cas de figure suivants :
Serveur BizTalk on-premises.
Serveur BizTalk sur Azure IaaS non exposé en tant que EndPoint HTTP.