ExpressRoute: creating a private connection to the cloud
Over at my day job, we’ve been Microsoft Azure customers now for coming up to three years, and during this time it has generally been a positive experience. Recently we decided that, with our increased demand on cloud services, we needed to upgrade from our Internet VPN connection to a dedicated private connection using Azure’s ExpressRoute. ExpressRoute had only recently been released in Singapore.
Having read through Microsoft’s setup process documentation, this seemed like a pretty straight forward process.
We engaged our Exchange Provider, and the required infrastructure was configured in the Partner Location. We were now ready to execute the following tasks:
- Import the PowerShell module for ExpressRoute
- Get the list of providers, locations, and bandwidths supported
- Make a request for a service key and pass it to your exchange provider
- Send the Service Key to your exchange provider
- Periodically check the status and the state of the circuit key
- Configure routing for virtual network
- Configure routing for services hosted on public IP addresses
- Configure your Virtual Network and Gateway (we configured this activity in advance of the above steps in preparation for the commissioning process)
All the above tasks completed without issues and we launched the final command to execute to link the network to a circuit and…Error Message!
At this point we suspected that maybe one of the variables was incorrect so we double checked `$ServiceKey` and `$VNetName` to see if a simple typo had caused the error, but alas all was correct.
Troubleshooting our ExpressRoute installation
We then undertook a more detailed visual inspection from the Management Console to make sure that the configuration of our Virtual Network and Gateway cmdlets (`Get-AzureVNetSite` and `Get-AzureVNetConfig | fl`) were correct. This search, too, confirmed that everything was configured correctly.
We then executed:
Get-AzureDedicatedCircuitLink -ServiceKey $ServiceKey -VNetName $VNetName -debug
to get more detailed information about what could be causing the error to isolate:
You will notice that the first couple of lines provide the Subscription ID, and this is where the problem lies. We have multiple subscriptions, and as part of the provisioning process with the Exchange Provider, we provided them with the correct ID. But when we ran the PowerShell Commands there was no variable to define the Subscription ID or Name, nor was any method mentioned in the documentation. Everything worked as expected throughout the process with no indication of potential conflicts until the final step.
To back out of the changes we used the corresponding `Remove- `command for the PowerShell commands that were previously running, working backward from the last the to the first command executed. The following image is the list of the Express Route PowerShell Commandlets.
Before you start provisioning your Express Route setup, open PowerShell and run
to make sure you are executing commands against the right subscription. If you aren’t, you’ll need to change it. Use:
Select-AzureSubscription -Current -SubscriptionName "subscription name"
It’s really a simple oversight, but if you have multiple subscriptions, it is one that could be the source of some frustration. Once corrected, the process ran smoothly without any further errors and all is now working well.
New on Cloud Academy: ITIL® 4, Microsoft 365 Tenant, Jenkins, TOGAF® 9.1, and more
At Cloud Academy, we're always striving to make improvements to our training platform. Based on your feedback, we released some new features to help make it easier for you to continue studying. These new features allow you to: Remove content from “Continue Studying” section Disc...
Cloud Migration Risks & Benefits
If you’re like most businesses, you already have at least one workload running in the cloud. However, that doesn’t mean that cloud migration is right for everyone. While cloud environments are generally scalable, reliable, and highly available, those won’t be the only considerations dri...
Google Cloud Functions vs. AWS Lambda: The Fight for Serverless Cloud Domination
Serverless computing: What is it and why is it important? A quick background The general concept of serverless computing was introduced to the market by Amazon Web Services (AWS) around 2014 with the release of AWS Lambda. As we know, cloud computing has made it possible for users to ...
New on Cloud Academy: CISSP, AWS, Azure, & DevOps Labs, Python for Beginners, and more…
As Hurricane Dorian intensifies, it looks like Floridians across the entire state might have to hunker down for another big one. If you've gone through a hurricane, you know that preparing for one is no joke. You'll need a survival kit with plenty of water, flashlights, batteries, and n...
How to Unlock Complimentary Access to Cloud Academy
Are you looking to get trained or certified on AWS, Azure, Google Cloud Platform, DevOps, Cloud Security, Python, Java, or another technical skill? Then you'll want to mark your calendars for August 23, 2019. Starting Friday at 12:00 a.m. PDT (3:00 a.m. EDT), Cloud Academy is offering c...
Content Roadmap: AZ-500, ITIL 4, MS-100, Google Cloud Associate Engineer, and More
Last month, Cloud Academy joined forces with QA, the UK’s largest B2B skills provider, and it put us in an excellent position to solve a massive skills gap problem. As a result of this collaboration, you will see our training library grow with additions from QA’s massive catalog of 500+...
Disadvantages of Cloud Computing
If you want to deliver digital services of any kind, you’ll need to estimate all types of resources, not the least of which are CPU, memory, storage, and network connectivity. Which resources you choose for your delivery — cloud-based or local — is up to you. But you’ll definitely want...
How to Effectively Use Azure Management Groups, Subscriptions, and Resource Groups
When used individually, Azure Management Groups, Subscriptions, and Resource Groups are very powerful. But when used together, they can establish the entire organizational structure of Azure. In this article, I will explain Azure Resource Manager, Management Groups, Subscriptions an...
Cloud Academy’s Blog Digest: July 2019
July has been a very exciting month for us at Cloud Academy. On July 10, we officially joined forces with QA, the UK’s largest B2B skills provider (read the announcement). Over the coming weeks, you will see additions from QA’s massive catalog of 500+ certification courses and 1500+ ins...
Top 10 Things Cybersecurity Professionals Need to Know
There has been an increase in data breaches over the recent years. With almost 143 million Americans who have had their data compromised in data breaches. These breaches include all sorts of sensitive data, including financial information, election controversies, social security, just t...
Running Apache Spark on Azure Databricks
In this article, we’ll cover how to set up an Azure Databricks cluster and how to run queries in an interactive notebook. However, this article only scratches the surface of what you can do with Azure Databricks. If you would like to learn more, including how to create graphs, run sched...
Understanding the Core Azure Architectural Components
Microsoft Azure relies on a few key architectural components to provide redundancy and high availability. Core Azure architectural components include Azure regions, Azure Availability Zones, resource groups, and the Azure Resource Manager. In this article, we’ll discuss the basics ab...