Run WordPress on Microsoft Azure
Learn about Microsoft’s WordPress Azure App Service and an interesting alternative from WP Engine.
Twenty years old this year, WordPress is still one of the most popular content management tools.
Running a WordPress instance requires a web server and database, an ideal combination for moving to a virtual infrastructure running in the cloud, either by using platform services or by creating your own infrastructure. Bringing your own WordPress installation to Azure still requires managing and patching the underlying OS and CMS application, as Azure treats it as another host for virtual machines. Yes, it’s an approach that simplifies moving existing services from on-premises or traditional hosting providers, but you don’t really get the benefits of using a hyperscale cloud platform.
Find WordPress for Azure
If you take a look at the Azure Marketplace, you’ll see many options for running WordPress, from basic installations to full managed environments, including customized versions. There are many options to choose from, and it can be difficult to choose one – especially when there are many offering similar services at similar prices.
WordPress is essentially a Hypertext Preprocessor (PHP) application, and note that the only supported PHP in Azure is running Azure App Service for Linux. If you’re running your own or third-party WordPress on Azure, make sure it’s running on Azure App Service or that your WordPress vendor provides you with PHP support.
Microsoft now has its own managed WordPress
One option is Microsoft’s own offering,WordPress on Azure App Service. It’s managed WordPress that runs on the familiar Azure App Service and uses Microsoft’s MySQL flexible server service for content and data. Microsoft tuned the installation of WordPress to Azure, building on its App Service Linux hosting service. It’s also an open source project with tools to configure and create instances hosted on GitHub. The project’s GitHub repository includes links to documentation that describes the default settings and details what you can change.
Under the service’s supervision, Microsoft performs security patches for you, ensuring your content management system (CMS) is up-to-date and reducing the risks associated with running WordPress. There is no need to schedule maintenance because Microsoft creates a new instance, connects it to the content store and database, and then shuts down the old instance.
Using WordPress in Azure App Service
Microsoft built its WordPress solution to leverage Azure best practices. The WordPress application runs in a virtual network separate from the database and backup storage, using a local Redis cache to accelerate content delivery. The entire service is behind an Azure Front Door security appliance with static content from Azure Blob storage. Front Door is usefully configured to work with the Azure Content Delivery Network, so static content is cached near the edge of the network, with endpoints in many more locations than Azure regions.
Billing is based on standard Azure App Service rates, and Microsoft provides guidance on storage plans for expected usage, from a single standard instance delivering 120 requests per second to six production instances delivering 21,000 requests per second. You also need to consider the cost of storage, as managed MySQL on Azure bills separately for compute and storage. In addition to running in the public cloud, Azure also supports the US Government Cloud, which allows government agencies to use Azure to host their web content.
Provided by Microsoft guidelines for content migration from existing sites to a managed Azure instance using a common migration plugin. The free version of the All-in-One WP Migration tool works well for smaller sites with up to 256MB of content. If you have more, use the premium version. Because there is an upload limit for WordPress in Azure App Service, you need to add a configuration setting to App Service that increases the limit from 50 MB to 256 MB. Alternatively, you can manually upload content from the original site to Azure using File Transfer Protocol (FTP), importing the SQL data using the PHP control panel. Large sites should use multiple SQL exports.
Scalable WordPress with WP Engine on Azure Kubernetes
An interesting alternative comes from managed WordPress provider WP Engine with its recently announced Azure offering. He is currently running Microsoft’s own Stories news site, WP Engine’s platform allowed Microsoft to build its own content platform, which has become increasingly important at the height of the COVID-19 pandemic. The two companies collaborated to make the platform more scalable by integrating it with Azure’s own managed Azure Kubernetes Service (AKS) platform.
This tool is now available to others, and WP Engine’s tools are containerized and run across multiple Azure regions, scaled to local needs. This improves security by ensuring isolation between WordPress and any other code. AKS automatically adds new worker nodes as needed, and Azure Network Services provides web application firewalls and global routing for these new containers.
It’s an opportunity to show the benefits of a cloud-based approach beyond your own code. Containerized WordPress is managed using Azure Arc and runs on-premises AKS via Azure Stack HCI and other edge technologies. This means that you are not limited to working on Azure; you can leverage WordPress management anywhere you have an Arc-managed Azure environment.
The benefits of mixing cloud isolation and a platform-as-a-service approach for WordPress
Managing WordPress takes time and resources, as many unmanaged installations pose an increased security risk to hosts. By moving it to isolated cloud instances, you reduce the risk to your networks, especially if you use WordPress for public services. Combining cloud isolation with a Platform as a Service (PaaS) approach can deliver faster and more secure content delivery—especially when you add a global content delivery platform.
Read the following: The complete Microsoft Azure Certification Prep Bundle (TechRepublic Academy)