SlideShare a Scribd company logo
The Hitchhiker’s Guide to Hybrid
Connectivity
Daniel Toomey
linkedin.com/in/danieltoomey/
Presentation by
The Hitchhiker’s Guide
to Hybrid Connectivity
Dan Toomey
Integrating the DigitalEnterprise
Who am I?
• Principal Consultant, Mexia
• Microsoft Azure MVP
• MCSE, MCT, MCPD, MCTS BizTalk & Azure
• Pluralsight Author
• www.mindovermessaging.com
• @daniel2me
Integrating the DigitalEnterprise
Who was I?
• Principal Trombonist, Singapore Symphony
• USAF Band of Liberty
• M.Mus, B.Mus - The Juilliard School
• Founding member:
– Paragon Ragtime Orchestra
– Palisades Brass Quintet
Photo by Brian Merritt
Integrating the DigitalEnterprise
What This Talk is NOT About
• Integration Patterns
– Specifically focuses on connectivity options
– Excludes async patterns (i.e. Service Bus queues / topics)
• Demos
– Theoretical talk only due to time constraints
• Network Level Connectivity
– Mentioned as an option, but not the primary focus
– Concentrates on non-network options
• Demos
– Theoretical talk only due to time constraints
Yes…DEMOS!!
The Hitchhiker’s Guide to
Synchronous Hybrid Connectivity
with
Limited Network Changes
Integrating the DigitalEnterprise
Network Based
Options
Integrating the DigitalEnterprise
Azure Virtual Network
image: https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-overview
Types:
– Point to Site (P2S)
– Site to Site (S2S)
– ExpressRoute
P2S, S2S
ExpressRoute
Integrating the DigitalEnterprise
VNET Integration for Web / Mobile Apps
• Requires Standard or Premium
App Service Plan
• VNET must be in same
subscription as ASP
• Must have P2S enabled
• Must have Dynamic routing
gateway
image: https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-integrate-with-vnet
Integrating the DigitalEnterprise
VNET with API Management
• Added layer of security
• All the benefits of APIM
NSG
Corporate Network
Application
Server
BizTalk Server
Database
Server
Virtual Network
API Mgmt
Application
Gateway
VPN
Gateway
NSG
External
Client
Integrating the DigitalEnterprise
Non-Network Based
Options
Integrating the DigitalEnterprise
Relay – An Alternative Approach
• Relay underpins all of the non-network connectivity options
– Azure Relay
• WCF Relay
• Hybrid Connections
– On Prem Data Gateway
Integrating the DigitalEnterprise
Load Balancer
Network Address Translation
Router
H/W FIrewall
S/W FIrewall
Why the Relay?
• Traffic OUT is not usually a problem
• Traffic IN – different story!
Application
Server
Client Network Target Network
Application
Server
Integrating the DigitalEnterprise
Application
Server
Client Network Your Network
Application
Server
Relay
Service
How Relay Works
• Concepts:
– Secured listener endpoint in the
cloud
– Opened via an outbound
connection from within corporate
network
– Clients send messages via the
listener’s endpoint
– No changes to corporate firewall or
network required
• As long as it allows outbound
traffic on
port 80/443
Integrating the DigitalEnterprise
Azure Relay
• Generally Available as of 27 March 2017
• One of the three Service Bus offerings
• Comprised of two services:
– WCF Relay
– Azure Relay Hybrid Connections
Integrating the DigitalEnterprise
WCF Relay
WCF Service
Application
Server
Client Network
Microsoft
Azure
Your Network
WCF Relay – How It Works
• WCF Relay point within a Service Bus namespace
• Outbound connection from an on-prem WCF service
• Uses WCF relay bindings:
– NetTcpRelayBinding
– BasicHttpRelayBinding
– WS2007HttpRelayBinding
– NetOnewayRelayBinding
– NetEventRelayBinding
– WebHttpRelayBinding
– NetMessagingBinding
• Security via Shared Access Signatures (SAS)
• Accessible from a variety of services & locations
BizTalk Server
API Management
Azure
Function
Web App
BizTalk Server
Integrating the DigitalEnterprise
WCF Relay – Constraints
• Needs a self-provided listener
service
• Relies on Windows / .NET
framework
• Optimised for XML messaging
BizTalk Server
API Management
Azure
Function
Web App
BizTalk Server
WCF Relay
WCF Service
Application
Server
Client Network
Microsoft
Azure
Your Network
Integrating the DigitalEnterprise
WCF Relay – Pricing
WCF RELAY PRICING
Relay hours $0.10 for every 100 relay hours
Messages $0.01 for every 10,000 messages
The monthly prices are calculated based on 744 hours of use. Connections will be charged in one hour increments.
MONTHLY USAGE SCENARIO:
1 connection x 744 hours + 1 million messages** = US $1.74*
*Excludes data egress charges
**Message size up to 64KB
Integrating the DigitalEnterprise
Hybrid Connections
• Works at the transport level (web sockets)
• Relies on port forwarding (hostname + port)
• Requires only a Service Bus namespace (no MABS)
• Cross Platform (Windows & Linux)
• Codeless experience for Web Apps / Mobile Apps
• API accessible for other scenarios
Integrating the DigitalEnterprise
Hybrid Connections – How It Works
• Connection created in Azure (Service Bus)
• Hybrid Connection Manager installed on prem
Web App
Mobile App
Corporate Network
Microsoft SQL Server
Hybrid Connection
Other published resources
Hybrid Connection
Manager
Integrating the DigitalEnterprise
Hybrid Connections – Scalability
• Connection created in Azure (Service Bus)
• Hybrid Connection Manager installed on prem
Web App
Mobile App
Corporate Network
Microsoft SQL
Server Cluster
Hybrid Connection
Hybrid Connection
Manager
Integrating the DigitalEnterprise
Hybrid Connections – Using the API
• Port Bridge code option (running as a Windows
service)
Azure VM
Corporate Network
Microsoft SQL Server
Hybrid Connection
Other published resources
Server
Samples: github.com/Azure/azure-relay-dotnet/
Integrating the DigitalEnterprise
Azure Relay Hybrid Connections
Constraints:
• Maximum 10,000 relay endpoints per namespace
• Maximum 25 listeners per relay
• Best for Azure-hosted clients
• Codeless experience limited to Web/Mobile Apps
– … but plenty of examples of the rest on GitHub!
github.com/Azure/azure-relay-dotnet/
Integrating the DigitalEnterprise
Azure Relay Hybrid Connections – Pricing
HYBRID CONNECTION PRICING
Connection Charge (includes 5 GB of data/month) US $10 per Listener
Data Transfer Overage (Data exceeding the included 5
GB/month)*
US $1/GB
*The data transfer limit of 5 GB covers total data transfer across all listener units.
MONTHLY USAGE SCENARIO:
2 HC listeners + 10 GB data = US $25.00 [ ($10 x 2) + $ 5 data overage ]
3 HC listeners + 100 GB data = US $125.00 [ ($10 x 3) + $ 95 data overage ]
Integrating the DigitalEnterprise
Which Azure Relay to Use?
Hybrid Connections
(TCP, Port Forwarding)
WCF Relay
(WCF Application Stack)
Application
Layer
Transport
Layer
Integrating the DigitalEnterprise
On-Premises Data Gateway
• Generally Available as of 4th May 2017
• Acts as a bridge between Azure PaaS and on-prem
resources
• Works with connectors for Logic Apps, Power Apps,
Flow & Power BI:
• BizTalk Server
• DB2
• File System
• Informix
• MQ
• MySQL
• Oracle Database
• PostgreSQL
• SAP Application Server
• SAP Message Server
• SharePoint
• SQL Server
• Teradata
Integrating the DigitalEnterprise
On-Premises Data Gateway – How It Works
• Download and install the gateway
on-premises
• Create and associate a data
gateway in Azure
• Connect Logic App / Power App /
etc to gateway
• Can run over ExpressRoute
27
Integrating the DigitalEnterprise
On-Premises Data Gateway – Constraints
• Accessible only from within managed connectors (no API)
• Only one gateway installed per machine
• Cannot be hosted on a domain controller
• Requires Windows host (Win 7 / 2008 R2 or later)
• Must use Azure school or work account
• No current support for High Availability (but on roadmap)
28
Integrating the DigitalEnterprise
On-Premises Data Gateway – Pricing
ON-PREMISES DATA GATEWAY PRICING
FREE!! (but you pay for the services that use it)
MONTHLY USAGE SCENARIO:
Logic App Action Quantity / month Price Cost
Polling trigger (1 min interval) 43,200 0.0008 $ 34.56
Execution shape (first 250K) 206,800 0.0008 $ 165.44
Execution shape (next 750K) 750,000 0.0004 $ 300.00
TOTAL COST: $ 500.00
Integrating the DigitalEnterprise
Scenarios
Integrating the DigitalEnterprise
Scenario 1: Azure Web/Mobile App to On-Prem
Web App
Corporate Network
Microsoft SQL Server
?
Integrating the DigitalEnterprise
Scenario 1: Azure Web/Mobile App to On-Prem
Corporate Network
Hybrid Connection Hybrid Connection
Manager
Web App
Microsoft SQL Server
Integrating the DigitalEnterprise
Demo #1
Hybrid Connection from Azure Web App
Integrating the DigitalEnterprise
Demo 1: Hybrid Connection from Azure Web App
Hyper-V VM (Local)
Hybrid Connection Hybrid Connection
Manager
Web App
SQL Server (port 1433)
WCF Service (port 80)
Integrating the DigitalEnterprise
Scenario 1: Azure Web/Mobile App to On-Prem
Alternatives:
WCF Relay Point 2 Site
VNET
Logic App +
OPDG
Expose resources at a fine-grained level 
Leverage WCF stack features 
Use Active Directory Authentication X  X
Move large amount of data 
Minimise ongoing cost 
Integrating the DigitalEnterprise
Scenario 2: IaaS Server (VM) to On-Prem
VM
Corporate Network
Microsoft SQL Server
Other published resources
?
Integrating the DigitalEnterprise
Scenario 2: IaaS Server (VM) to On-Prem
Corporate Network
Microsoft SQL Server
Hybrid Connection
Other published resources
Port Bridge
ServerVM
Integrating the DigitalEnterprise
Demo #2
Hybrid Connection from IaaS Virtual Machine
Integrating the DigitalEnterprise
Demo 2: Hybrid Connection from Azure IaaS VM
Hybrid ConnectionVM
Hyper-V VM (Local)
Portbridge
Server Code
SQL Server (port 1433)
WCF Service (port 80)
Portbridge
Client CodeIIS Website
Integrating the DigitalEnterprise
Scenario 2: IaaS Server to On-Prem
Alternatives:
WCF Relay Logic App +
OPDG
Site 2 Site
VNET
Expose resources at a fine-grained level 
Leverage WCF stack features 
Use Active Directory Authentication X X 
Move large amount of data  
Minimise ongoing cost 
Leverage managed connector(s) X 
Integrating the DigitalEnterprise
Scenario 3: SaaS Service to On-Prem
Corporate Network
?
Integrating the DigitalEnterprise
Scenario 3: SaaS Service to On-Prem
Corporate Network
Logic App On-Prem Data
Gateway
OPDG Manager
Integrating the DigitalEnterprise
Scenario 3: SaaS Service to On-Prem
Alternatives:
API Gateway
w/VNET
WCF Relay Hybrid
Connection
Expose resources at a fine-grained level  
Leverage WCF stack features  X
Move large amount of data  () X
Minimise ongoing cost 
Protocol translation  X
Tracking / Monetization 
Integrating the DigitalEnterprise
Corporate Network
?
Partner Network
Scenario 4: Business to Business
Integrating the DigitalEnterprise
Corporate NetworkPartner Network
Logic App On-Prem Data
Gateway
OPDG Manager
Enterprise Integration Pack
Maps TPMSchemas
Scenario 4: Business to Business
Integrating the DigitalEnterprise
Scenario 4: Business to Business
Alternatives:
API Gateway
w/VNET
WCF Relay Hybrid
Connection
Expose resources at a fine-grained level  
Leverage WCF stack features  X
Move large amount of data  () X
Minimise ongoing cost 
Protocol translation  X
Tracking / Monetization 
Integrating the DigitalEnterprise
Scenario 5: Service Fabric Cluster to On-Prem
Service Fabric
Corporate Network
Microsoft SQL Server
Other published resources
?
Integrating the DigitalEnterprise
Scenario 5: Service Fabric Cluster to On-Prem
Corporate Network
Microsoft SQL Server
Hybrid Connection
Other published resourcesPort Bridge
Server
Service Fabric
{}
{}
{}
Integrating the DigitalEnterprise
Demo #3
Hybrid Connection from Azure Service Fabric
Integrating the DigitalEnterprise
Demo 3: Hybrid Connection from Azure Service Fabric
Hybrid Connection
Hyper-V VM (Local)
Portbridge
Server Code
SQL Server (port 1433)
Portbridge
Client Code
Service Fabric
{}
{}
{}
Integrating the DigitalEnterprise
Scenario 5: Service Fabric Cluster to On-Prem
Alternatives:
WCF Relay Logic App +
OPDG
Site 2 Site
VNET
Expose resources at a fine-grained level 
Leverage WCF stack features 
Use Active Directory Authentication X X 
Move large amount of data  
Minimise ongoing cost 
Leverage managed connector(s) X 
Integrating the DigitalEnterprise
Use <this> technology when…
VPN • Multiple
resources and
protocols
require
connectivity
• Integration with
a single AD is
required
• High bandwidth
low latency
demands
• Network
reconfiguration
is justified
WCFRelay
• Client is outside
of Azure
• Client is not a
Web Site or
Mobile Service
• Fine-grained
exposure of
WCF services
required
• Desire to
leverage
features of the
WCF stack
• Ongoing costs is
a factor
HybridConnections
• Client is a Web
App or Mobile
App (codeless)
• Target is a port
based
connection to
an application
server
• Connecting to a
TCP resource
that is not .NET
or even
Windows
• Administrators
want fine-
grained control
and auditing
On-PremDataGateway
• A fully PaaS
solution is
desired
• LOB is one of
the supported
managed
connection
types
• Supporting
B2B/EDI via
Logic Apps &
EIP
• Tracking is
required
Integrating the DigitalEnterprise
Cost/Effort Comparison
D
E
V
E
F
F
O
R
T
O N G O I N G M O N T H L Y C O S T
26
4
1
3
5
7
$10 $100 $200 $500 $750 $1000
Dev effort pertains to hybrid integration part only, not application functionality
Scale is non-linear
ID Description Operational Qty/mo
1 WCF Relay 1 relay, 1m msgs
2 OPDG w/Logic App 5x actions, 1 min trigger
3 VNET w/Web App Std ASP S1, 1 Web App
4 VNET w/APIM APIM Std
5 VNET w/APIM & App Gateway & WAF APIM Std, AG Med
6 HC w/Web App 1 listener, 10GB data, Std ASP
7 HC w/VM 1 listener, 10GB data + D2 v2 VM
High
Med
Low
Integrating the DigitalEnterprise
References
• The New Azure Hybrid Connections
https://www.mexia.com.au/the-new-azure-hybrid-connections/
• Hybrid Connectivity Options in the Microsoft Cloud
https://www.biztalk360.com/integrate-2014/hybrid-connectivity-options-microsoft-cloud/
• Why use Service Bus Relay now I have Hybrid Connections?
http://microsoftintegration.guru/2014/07/07/use-service-bus-relay-now-hybrid-connections/
• On-Premises Data Gateway
https://docs.microsoft.com/en-us/azure/analysis-services/analysis-services-gateway
• What Is Azure Relay?
https://docs.microsoft.com/en-us/azure/service-bus-relay/relay-what-is-it
• Understanding Azure Relay
https://www.servicebus360.com/blogs/understanding-azure-relay/
• Azure Relay Samples on GitHub
https://github.com/Azure/azure-relay/tree/master/samples/
Integrating the DigitalEnterprise
Pluralsight Course
Integrating the DigitalEnterprise
Let’s connect!
dan@mexia.com.au
@daniel2me
linkedin.com/in/danieltoomey
mindovermessaging.com

More Related Content

The Hitchhiker’s Guide to Hybrid Connectivity

  • 1. The Hitchhiker’s Guide to Hybrid Connectivity Daniel Toomey linkedin.com/in/danieltoomey/
  • 2. Presentation by The Hitchhiker’s Guide to Hybrid Connectivity Dan Toomey
  • 3. Integrating the DigitalEnterprise Who am I? • Principal Consultant, Mexia • Microsoft Azure MVP • MCSE, MCT, MCPD, MCTS BizTalk & Azure • Pluralsight Author • www.mindovermessaging.com • @daniel2me
  • 4. Integrating the DigitalEnterprise Who was I? • Principal Trombonist, Singapore Symphony • USAF Band of Liberty • M.Mus, B.Mus - The Juilliard School • Founding member: – Paragon Ragtime Orchestra – Palisades Brass Quintet Photo by Brian Merritt
  • 5. Integrating the DigitalEnterprise What This Talk is NOT About • Integration Patterns – Specifically focuses on connectivity options – Excludes async patterns (i.e. Service Bus queues / topics) • Demos – Theoretical talk only due to time constraints • Network Level Connectivity – Mentioned as an option, but not the primary focus – Concentrates on non-network options • Demos – Theoretical talk only due to time constraints Yes…DEMOS!!
  • 6. The Hitchhiker’s Guide to Synchronous Hybrid Connectivity with Limited Network Changes
  • 8. Integrating the DigitalEnterprise Azure Virtual Network image: https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-overview Types: – Point to Site (P2S) – Site to Site (S2S) – ExpressRoute P2S, S2S ExpressRoute
  • 9. Integrating the DigitalEnterprise VNET Integration for Web / Mobile Apps • Requires Standard or Premium App Service Plan • VNET must be in same subscription as ASP • Must have P2S enabled • Must have Dynamic routing gateway image: https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-integrate-with-vnet
  • 10. Integrating the DigitalEnterprise VNET with API Management • Added layer of security • All the benefits of APIM NSG Corporate Network Application Server BizTalk Server Database Server Virtual Network API Mgmt Application Gateway VPN Gateway NSG External Client
  • 12. Integrating the DigitalEnterprise Relay – An Alternative Approach • Relay underpins all of the non-network connectivity options – Azure Relay • WCF Relay • Hybrid Connections – On Prem Data Gateway
  • 13. Integrating the DigitalEnterprise Load Balancer Network Address Translation Router H/W FIrewall S/W FIrewall Why the Relay? • Traffic OUT is not usually a problem • Traffic IN – different story! Application Server Client Network Target Network Application Server
  • 14. Integrating the DigitalEnterprise Application Server Client Network Your Network Application Server Relay Service How Relay Works • Concepts: – Secured listener endpoint in the cloud – Opened via an outbound connection from within corporate network – Clients send messages via the listener’s endpoint – No changes to corporate firewall or network required • As long as it allows outbound traffic on port 80/443
  • 15. Integrating the DigitalEnterprise Azure Relay • Generally Available as of 27 March 2017 • One of the three Service Bus offerings • Comprised of two services: – WCF Relay – Azure Relay Hybrid Connections
  • 16. Integrating the DigitalEnterprise WCF Relay WCF Service Application Server Client Network Microsoft Azure Your Network WCF Relay – How It Works • WCF Relay point within a Service Bus namespace • Outbound connection from an on-prem WCF service • Uses WCF relay bindings: – NetTcpRelayBinding – BasicHttpRelayBinding – WS2007HttpRelayBinding – NetOnewayRelayBinding – NetEventRelayBinding – WebHttpRelayBinding – NetMessagingBinding • Security via Shared Access Signatures (SAS) • Accessible from a variety of services & locations BizTalk Server API Management Azure Function Web App BizTalk Server
  • 17. Integrating the DigitalEnterprise WCF Relay – Constraints • Needs a self-provided listener service • Relies on Windows / .NET framework • Optimised for XML messaging BizTalk Server API Management Azure Function Web App BizTalk Server WCF Relay WCF Service Application Server Client Network Microsoft Azure Your Network
  • 18. Integrating the DigitalEnterprise WCF Relay – Pricing WCF RELAY PRICING Relay hours $0.10 for every 100 relay hours Messages $0.01 for every 10,000 messages The monthly prices are calculated based on 744 hours of use. Connections will be charged in one hour increments. MONTHLY USAGE SCENARIO: 1 connection x 744 hours + 1 million messages** = US $1.74* *Excludes data egress charges **Message size up to 64KB
  • 19. Integrating the DigitalEnterprise Hybrid Connections • Works at the transport level (web sockets) • Relies on port forwarding (hostname + port) • Requires only a Service Bus namespace (no MABS) • Cross Platform (Windows & Linux) • Codeless experience for Web Apps / Mobile Apps • API accessible for other scenarios
  • 20. Integrating the DigitalEnterprise Hybrid Connections – How It Works • Connection created in Azure (Service Bus) • Hybrid Connection Manager installed on prem Web App Mobile App Corporate Network Microsoft SQL Server Hybrid Connection Other published resources Hybrid Connection Manager
  • 21. Integrating the DigitalEnterprise Hybrid Connections – Scalability • Connection created in Azure (Service Bus) • Hybrid Connection Manager installed on prem Web App Mobile App Corporate Network Microsoft SQL Server Cluster Hybrid Connection Hybrid Connection Manager
  • 22. Integrating the DigitalEnterprise Hybrid Connections – Using the API • Port Bridge code option (running as a Windows service) Azure VM Corporate Network Microsoft SQL Server Hybrid Connection Other published resources Server Samples: github.com/Azure/azure-relay-dotnet/
  • 23. Integrating the DigitalEnterprise Azure Relay Hybrid Connections Constraints: • Maximum 10,000 relay endpoints per namespace • Maximum 25 listeners per relay • Best for Azure-hosted clients • Codeless experience limited to Web/Mobile Apps – … but plenty of examples of the rest on GitHub! github.com/Azure/azure-relay-dotnet/
  • 24. Integrating the DigitalEnterprise Azure Relay Hybrid Connections – Pricing HYBRID CONNECTION PRICING Connection Charge (includes 5 GB of data/month) US $10 per Listener Data Transfer Overage (Data exceeding the included 5 GB/month)* US $1/GB *The data transfer limit of 5 GB covers total data transfer across all listener units. MONTHLY USAGE SCENARIO: 2 HC listeners + 10 GB data = US $25.00 [ ($10 x 2) + $ 5 data overage ] 3 HC listeners + 100 GB data = US $125.00 [ ($10 x 3) + $ 95 data overage ]
  • 25. Integrating the DigitalEnterprise Which Azure Relay to Use? Hybrid Connections (TCP, Port Forwarding) WCF Relay (WCF Application Stack) Application Layer Transport Layer
  • 26. Integrating the DigitalEnterprise On-Premises Data Gateway • Generally Available as of 4th May 2017 • Acts as a bridge between Azure PaaS and on-prem resources • Works with connectors for Logic Apps, Power Apps, Flow & Power BI: • BizTalk Server • DB2 • File System • Informix • MQ • MySQL • Oracle Database • PostgreSQL • SAP Application Server • SAP Message Server • SharePoint • SQL Server • Teradata
  • 27. Integrating the DigitalEnterprise On-Premises Data Gateway – How It Works • Download and install the gateway on-premises • Create and associate a data gateway in Azure • Connect Logic App / Power App / etc to gateway • Can run over ExpressRoute 27
  • 28. Integrating the DigitalEnterprise On-Premises Data Gateway – Constraints • Accessible only from within managed connectors (no API) • Only one gateway installed per machine • Cannot be hosted on a domain controller • Requires Windows host (Win 7 / 2008 R2 or later) • Must use Azure school or work account • No current support for High Availability (but on roadmap) 28
  • 29. Integrating the DigitalEnterprise On-Premises Data Gateway – Pricing ON-PREMISES DATA GATEWAY PRICING FREE!! (but you pay for the services that use it) MONTHLY USAGE SCENARIO: Logic App Action Quantity / month Price Cost Polling trigger (1 min interval) 43,200 0.0008 $ 34.56 Execution shape (first 250K) 206,800 0.0008 $ 165.44 Execution shape (next 750K) 750,000 0.0004 $ 300.00 TOTAL COST: $ 500.00
  • 31. Integrating the DigitalEnterprise Scenario 1: Azure Web/Mobile App to On-Prem Web App Corporate Network Microsoft SQL Server ?
  • 32. Integrating the DigitalEnterprise Scenario 1: Azure Web/Mobile App to On-Prem Corporate Network Hybrid Connection Hybrid Connection Manager Web App Microsoft SQL Server
  • 33. Integrating the DigitalEnterprise Demo #1 Hybrid Connection from Azure Web App
  • 34. Integrating the DigitalEnterprise Demo 1: Hybrid Connection from Azure Web App Hyper-V VM (Local) Hybrid Connection Hybrid Connection Manager Web App SQL Server (port 1433) WCF Service (port 80)
  • 35. Integrating the DigitalEnterprise Scenario 1: Azure Web/Mobile App to On-Prem Alternatives: WCF Relay Point 2 Site VNET Logic App + OPDG Expose resources at a fine-grained level  Leverage WCF stack features  Use Active Directory Authentication X  X Move large amount of data  Minimise ongoing cost 
  • 36. Integrating the DigitalEnterprise Scenario 2: IaaS Server (VM) to On-Prem VM Corporate Network Microsoft SQL Server Other published resources ?
  • 37. Integrating the DigitalEnterprise Scenario 2: IaaS Server (VM) to On-Prem Corporate Network Microsoft SQL Server Hybrid Connection Other published resources Port Bridge ServerVM
  • 38. Integrating the DigitalEnterprise Demo #2 Hybrid Connection from IaaS Virtual Machine
  • 39. Integrating the DigitalEnterprise Demo 2: Hybrid Connection from Azure IaaS VM Hybrid ConnectionVM Hyper-V VM (Local) Portbridge Server Code SQL Server (port 1433) WCF Service (port 80) Portbridge Client CodeIIS Website
  • 40. Integrating the DigitalEnterprise Scenario 2: IaaS Server to On-Prem Alternatives: WCF Relay Logic App + OPDG Site 2 Site VNET Expose resources at a fine-grained level  Leverage WCF stack features  Use Active Directory Authentication X X  Move large amount of data   Minimise ongoing cost  Leverage managed connector(s) X 
  • 41. Integrating the DigitalEnterprise Scenario 3: SaaS Service to On-Prem Corporate Network ?
  • 42. Integrating the DigitalEnterprise Scenario 3: SaaS Service to On-Prem Corporate Network Logic App On-Prem Data Gateway OPDG Manager
  • 43. Integrating the DigitalEnterprise Scenario 3: SaaS Service to On-Prem Alternatives: API Gateway w/VNET WCF Relay Hybrid Connection Expose resources at a fine-grained level   Leverage WCF stack features  X Move large amount of data  () X Minimise ongoing cost  Protocol translation  X Tracking / Monetization 
  • 44. Integrating the DigitalEnterprise Corporate Network ? Partner Network Scenario 4: Business to Business
  • 45. Integrating the DigitalEnterprise Corporate NetworkPartner Network Logic App On-Prem Data Gateway OPDG Manager Enterprise Integration Pack Maps TPMSchemas Scenario 4: Business to Business
  • 46. Integrating the DigitalEnterprise Scenario 4: Business to Business Alternatives: API Gateway w/VNET WCF Relay Hybrid Connection Expose resources at a fine-grained level   Leverage WCF stack features  X Move large amount of data  () X Minimise ongoing cost  Protocol translation  X Tracking / Monetization 
  • 47. Integrating the DigitalEnterprise Scenario 5: Service Fabric Cluster to On-Prem Service Fabric Corporate Network Microsoft SQL Server Other published resources ?
  • 48. Integrating the DigitalEnterprise Scenario 5: Service Fabric Cluster to On-Prem Corporate Network Microsoft SQL Server Hybrid Connection Other published resourcesPort Bridge Server Service Fabric {} {} {}
  • 49. Integrating the DigitalEnterprise Demo #3 Hybrid Connection from Azure Service Fabric
  • 50. Integrating the DigitalEnterprise Demo 3: Hybrid Connection from Azure Service Fabric Hybrid Connection Hyper-V VM (Local) Portbridge Server Code SQL Server (port 1433) Portbridge Client Code Service Fabric {} {} {}
  • 51. Integrating the DigitalEnterprise Scenario 5: Service Fabric Cluster to On-Prem Alternatives: WCF Relay Logic App + OPDG Site 2 Site VNET Expose resources at a fine-grained level  Leverage WCF stack features  Use Active Directory Authentication X X  Move large amount of data   Minimise ongoing cost  Leverage managed connector(s) X 
  • 52. Integrating the DigitalEnterprise Use <this> technology when… VPN • Multiple resources and protocols require connectivity • Integration with a single AD is required • High bandwidth low latency demands • Network reconfiguration is justified WCFRelay • Client is outside of Azure • Client is not a Web Site or Mobile Service • Fine-grained exposure of WCF services required • Desire to leverage features of the WCF stack • Ongoing costs is a factor HybridConnections • Client is a Web App or Mobile App (codeless) • Target is a port based connection to an application server • Connecting to a TCP resource that is not .NET or even Windows • Administrators want fine- grained control and auditing On-PremDataGateway • A fully PaaS solution is desired • LOB is one of the supported managed connection types • Supporting B2B/EDI via Logic Apps & EIP • Tracking is required
  • 53. Integrating the DigitalEnterprise Cost/Effort Comparison D E V E F F O R T O N G O I N G M O N T H L Y C O S T 26 4 1 3 5 7 $10 $100 $200 $500 $750 $1000 Dev effort pertains to hybrid integration part only, not application functionality Scale is non-linear ID Description Operational Qty/mo 1 WCF Relay 1 relay, 1m msgs 2 OPDG w/Logic App 5x actions, 1 min trigger 3 VNET w/Web App Std ASP S1, 1 Web App 4 VNET w/APIM APIM Std 5 VNET w/APIM & App Gateway & WAF APIM Std, AG Med 6 HC w/Web App 1 listener, 10GB data, Std ASP 7 HC w/VM 1 listener, 10GB data + D2 v2 VM High Med Low
  • 54. Integrating the DigitalEnterprise References • The New Azure Hybrid Connections https://www.mexia.com.au/the-new-azure-hybrid-connections/ • Hybrid Connectivity Options in the Microsoft Cloud https://www.biztalk360.com/integrate-2014/hybrid-connectivity-options-microsoft-cloud/ • Why use Service Bus Relay now I have Hybrid Connections? http://microsoftintegration.guru/2014/07/07/use-service-bus-relay-now-hybrid-connections/ • On-Premises Data Gateway https://docs.microsoft.com/en-us/azure/analysis-services/analysis-services-gateway • What Is Azure Relay? https://docs.microsoft.com/en-us/azure/service-bus-relay/relay-what-is-it • Understanding Azure Relay https://www.servicebus360.com/blogs/understanding-azure-relay/ • Azure Relay Samples on GitHub https://github.com/Azure/azure-relay/tree/master/samples/
  • 56. Integrating the DigitalEnterprise Let’s connect! dan@mexia.com.au @daniel2me linkedin.com/in/danieltoomey mindovermessaging.com

Editor's Notes

  1. 10 years ago: very limited options (one?) Now: several options. Confused? Overview of options and guidance on when to use what.
  2. This is about real-time connectivity – not integration patterns Focussing on non-network solutions (less IP Pro)
  3. Possibly a better title? But not as sexy…
  4. Solutions can be categorised into two groups: Options based on network level changes Options that do NOT require network changes
  5. Point-to-site virtual private network (VPN):  Established between a single PC connected to your network and the VNet. Uses the SSTP protocol to provide encrypted communication over the Internet between the PC and the VNet. The latency for a point-to-site VPN is less predictable, since the traffic traverses the Internet. Site-to-site VPN: Established between your VPN device and an Azure VPN Gateway. Connection is an IPSec/IKE VPN that provides encrypted communication over the Internet between your on-premises device and the Azure VPN gateway. The latency for a site-to-site connection is less predictable, since the traffic traverses the Internet. Azure ExpressRoute:  Established between your network and Azure, through an ExpressRoute partner. This connection is private. Traffic does not traverse the Internet.
  6. VNET Integration only works with apps in a Standard or Premium pricing plan. If your target virtual network already exists, it must have point-to-site VPN enabled with a Dynamic routing gateway before it can be connected to an app. Does not support Static routing. The VNET must be in the same subscription as your App Service Plan(ASP). The apps that integrate with a VNET will use the DNS that is specified for that VNET. By default your integrating apps will only route traffic into your VNET based on the routes that are defined in your VNET.
  7. APIM: Caching, security, Agility, Analytics
  8. No reliance on IT Ops, Security governance, etc.
  9. Michael Stephenson: “Secure router in the sky” Quick Win: Hybrid Integration in a day
  10. Service Bus Relay has been “rebranded” as part of Azure Relay (but still basically the same) Hybrid Connections (v2) has been overhauled and improved tremendously
  11. Service Bus offered relays almost from the beginning of Azure Built on the WCF capability Security was originally ACS, but now SAS can be consumed by lots of different tech, eg biztalk, soap, rest, crm online and is very reusable
  12. Built on Web Sockets so not confined to Windows Examples include Apache Thrift
  13. Easy to setup – download the HCM Codeless solution! Lift & shift
  14. Multiple instances of the Hybrid Connection Manager can be used on-premises for resiliency and load-balancing.
  15. Using the API to manage port bridge connections Can connect almost anything!
  16. Watch out for high data usage
  17. This is THE solution for PaaS based integrations! 160+ connectors at the Azure side Codeless solution
  18. OPDG is just an add-on feature, not an independent service like WCF Relay / Hybrid Connection
  19. Primary Solution: Azure Relay Hybrid Connections Super easy to configure Can use multiple HC’s to talk to multiple systems Very inexpensive No network reconfiguration
  20. WCF Relay (if need to restrict to a single application/endpoint or wish to use WCF application stack, i.e. Message Security, Reliable Sessions, etc) VNET integration (if cannot identify system by hostname & port number, or if require Active Directory authentication) ExpressRoute w/App Service Environment (massive data / bandwidth / low latency requirements)
  21. Primary Solution: Azure Relay Hybrid Connections Port Bridging service in both IaaS and On-Prem server Requires some custom code (mostly from GitHub sample) Deploy a Windows service both on-prem and on IaaS VM
  22. WCF Relay (if need to restrict to a single application/endpoint or wish to use WCF stack) Logic App + On-Prem Data Gateway (if supported connector exists for the target on-prem system) S2S VNET (if cannot identify system by hostname & port number OR require Active Directory authentication) Can use ExpressRoute for massive data / bandwidth / low latency requirements
  23. No-Brainer Solution: On-Prem Data Gateway Use with Logic App and managed connectors Fully PaaS solution On-Prem BizTalk Server improves the story even more! (plug Wagner’s presentation)
  24. API Management (connected to a VNET) WCF Relay (if client can talk .NET or REST) Azure Relay Hybrid Connections (via Web App)
  25. Primary Solution: On-Prem Data Gateway Use with Logic App and Enterprise Integration Pack Fully PaaS solution Supports EDI if req’d
  26. API Management (connected to a VNET) Azure Relay (Hybrid Connections or WCF Relay) For EDI support, can connect to an on-prem BizTalk Server Custom solution?
  27. Primary Solution: Azure Relay Hybrid Connections Port Bridging service hosted in a microservice and an On-Prem server Requires some custom code (mostly from GitHub sample)
  28. WCF Relay (if need to restrict to a single application/endpoint or wish to use WCF stack) Logic App + On-Prem Data Gateway (if connector exists for the target system) S2S VNET (if cannot identify system by hostname & port number OR require Active Directory authentication) Can use ExpressRoute for massive data / bandwidth / low latency requirements
  29. This slide attempts to show a relative comparison of ongoing cost and development effort required for each technology.
  30. 80% of this course still relevant for the codeless option (ignore MABS setup bit)