DEV Community

Sasquatch8946
Sasquatch8946

Posted on

Why I switched back to Microsoft CDN Classic from Azure Front Door Standard

The Issue

In my first ever post, I described my journey with the Cloud Resume Challenge.

Right before sharing my finished product with the world, I heeded a warning in the Azure portal about my Front Door instance/CDN, which said that the Classic SKU I was using was going to be retired in 2027. It advised migrating to the Standard or Premium SKU.

Since unexpectedly high costs are a common pitfall with deploying new cloud services, I was curious about the cost of the newer tiers, so I took a look at the relevant page in the Microsoft Azure documentation.

I went through the doc too quickly, saw that the "request" and "outbound data transfer" costs were quite low as I expected. So, I migrated to the Standard tier without any further thought.

Thankfully, when visiting the Cloud Resume Challenge Discord, I saw a post from someone saying that the new Azure Front Door SKUs were prohibitively expensive for most challenge participants. When I reviewed the pricing page once again, I noticed that a new base cost of $35/month had been introduced.

The Discord post had recommended using Cloudflare CDN as an alternative; however, when I examined that option further I realized that in order to enable TLS on a custom domain through App Service, I would need at least the Basic tier, which costs in the ballpark of $50/month. Therefore, I concluded that Cloudflare CDN would not be suitable for my use case.

Furthermore, Cloudflare CDN would also fail to provide encryption for those who follow the original guidelines of the Cloud Resume Challenge and choose to host their website in a Blob Storage account. See the below quote from this Microsoft documentation:

To enable HTTPS, you'll have to use Azure CDN because Azure Storage doesn't yet natively support HTTPS with custom domains.

So, in order to use Cloudflare CDN and host the front-end of my website in Azure, I would have to sacrifice TLS.

Lessons Learned

Always review pricing for cloud services very carefully, and even then, after deploying a new service you should monitor the cost closely for a bit and have multiple budget alerts set up on your Azure subscription.

How I Switched Back

There wasn't a way to do this without zero downtime unfortunately, so, last weekend, I had to delete my Front Door, dig for an old version of my frontdoor.bicep template in my git commit history, check it out with "git checkout commitsha -- /path/to/file," commit and push the change, and re-trigger my Azure DevOps pipeline.

You can see the latest version of my template by going to my GitHub repository and navigating to the /iac/frontend/ folder.

Moving forward

Azure Classic SKU is going to reach end-of-life by some time in 2027. I and other Cloud Resume Challengers may have to consider moving all or part of our solution to a different cloud or hosting provider if we want to avoid increased costs.

Top comments (0)