Hello Everyone….Today I will go over the Azure External Connectivity Options. There is a lot flexibility depending your needs of your workload/application with Azure. So let’s dive in and go into each option start at the bottom as shown in the handy graph below:
Azure External Connectivity Options
Private Site-to-Site Connectivity – ExpressRoute
ExpressRoute provides organizations a private, dedicated, high-throughput network connection between Windows Azure datacenters and their on-premises environment. See my blog post on ExpressRoute from last year for more details. Below is a comparison from traditional site-to-site tunnel versys Express
A Site-to-Site VPN allows you to create a secure connection between your on-premises site and your virtual network. To create a Site-to-Site connection, a VPN device that is located on your on-premises network is configured to create a secure connection with the Azure VPN Gateway. Once the connection is created, resources on your local network and resources located in your virtual network can communicate directly and securely. Site-to-Site connections do not require you to establish a separate connection for each client computer on your local network to access resources in the virtual network.
A Point-to-Site configuration allows you to create a secure connection to your virtual network from a client computer, individually. A VPN connection is established by starting the connection from the client computer. This is an excellent solution when you want to connect to your VNET from a remote location, such as from home or a conference, or when you only have a few clients that need to connect to a virtual network. Point-to-Site connections do not require a VPN device or a public-facing IP address in order to work.
Service Bus is a generic, cloud-based messaging system for connecting just about anything – applications, services, and devices – wherever they are. Here are of the basic fundamentals.
Different situations call for different styles of communication and this one is for more complex scenarios. Sometimes, letting applications send and receive messages through a simple queue is the best solution. In other situations, an ordinary queue isn’t enough; a queue with a publish-and-subscribe mechanism is better. In some cases, all that’s really needed is a connection between applications; queues aren’t required. Service Bus provides all three options, enabling your applications to interact in several different ways.
Service Bus is a multi-tenant cloud service, which means that the service is shared by multiple users. Each user, such as an application developer, creates a namespace, then defines the communication mechanisms she needs within that namespace. See below pic on how this looks.
Service Bus provides a multi-tenant service for connecting applications through the cloud.
Within a namespace, you can use one or more instances of four different communication mechanisms, each of which connects applications in a different way. The choices are:
- Queues, which allow one-directional communication. Each queue acts as an intermediary (sometimes called a broker) that stores sent messages until they are received. Each message is received by a single recipient.
- Topics, which provide one-directional communication using subscriptions-a single topic can have multiple subscriptions. Like a queue, a topic acts as a broker, but each subscription can optionally use a filter to receive only messages that match specific criteria.
- Relays, which provide bi-directional communication. Unlike queues and topics, a relay doesn’t store in-flight messages-it’s not a broker. Instead, it just passes them on to the destination application.
- Event Hubs, which provide event and telemetry ingress to the cloud at massive scale, with low latency and high reliability.
When you create a queue, topic, relay, or Event Hub, you give it a name. Combined with whatever you called your namespace, this name creates a unique identifier for the object. Applications can provide this name to Service Bus, then use that queue, topic, relay, or Event Hub to communicate with one another.
To use any of these objects, Windows applications can use Windows Communication Foundation (WCF). For queues, topics, and Event Hubs Windows applications can also use Service Bus-defined messaging APIs. To make these objects easier to use from non-Windows applications, Microsoft provides SDKs for Java, Node.js, and other languages. You can also access queues, topics, and Event Hubs using REST APIs over HTTP.
It’s important to understand that even though Service Bus itself runs in the cloud (that is, in Microsoft’s Azure datacenters), applications that use it can run anywhere. You can use Service Bus to connect applications running on Azure, for example, or applications running inside your own datacenter. You can also use it to connect an application running on Azure or another cloud platform with an on-premises application or with tablets and phones. It’s even possible to connect household appliances, sensors, and other devices to a central application or to one other. Again, Service Bus is a generic communication mechanism in the cloud that’s accessible from pretty much anywhere. How you use it depends on what your applications need to do.
Azure Data Factory
Data Factory is a cloud-based data integration service that orchestrates and automates the movement and transformation of data. Just like a manufacturing factory that runs equipment to take raw materials and transform them into finished goods, Data Factory orchestrates existing services that collect raw data and transform it into ready-to-use information.
Data Factory works across on-premises and cloud data sources and SaaS to ingest, prepare, transform, analyze, and publish your data. Use Data Factory to compose services into managed data flow pipelines to transform your data using services like Azure HDInsight (Hadoop) and Azure Batch for your big data computing needs, and with Azure Machine Learning to operationalize your analytics solutions. Go beyond just a tabular monitoring view, and use the rich visualizations of Data Factory to quickly display the lineage and dependencies between your data pipelines. Monitor all of your data flow pipelines from a single unified view to easily pinpoint issues and setup monitoring alerts.
Collect data from many different on-premises data sources, ingest and prepare it, organize and analyze it with a range of transformations, then publish ready-to-use data for consumption.
You can use Data Factory anytime you need to collect data of different shapes and sizes, transform it, and publish it to extract deep insights – all on a reliable schedule. Data Factory is used to create highly available data flow pipelines for many scenarios across different industries for their analytics pipeline needs. Online retailers use it to generate personalized product recommendations based on customer browsing behavior. Game studios use it to understand the effectiveness of their marketing campaigns and the use cases go on…..
So, as you can see, there are lots of options for connecting your on-premise environment with Azure and that dovetails me into the next topic in the series, Azure VNET’s….
Until next time, Rob……