Understanding hybrid use cases
Microsoft provides a unified development and DevOps environment between their Microsoft Azure cloud offering and Microsoft Azure Stack Hub. Using tools such as Visual Studio Team Foundation, GitHub, and Azure DevOps, developers can work with the same processes, regardless of where their code is ultimately published to.
Microsoft Azure and Microsoft Azure Stack Hub share a common identity model. The on-premises Microsoft Azure Stack Hub utilizes Azure Active Directory but can also use Active Directory Federation Services.
Microsoft Azure and Microsoft Azure Stack Hub also share an integrated management and security control platform as both use the same Azure portal. This allows operators and administrators to ensure that access controls are consistent through the use of role-based access control.
They both share a common and consistent data platform, which is based on a storage account that is used to provision Blobs/Tables/Queues that are available in both Azure and Azure Stack Hub.
The following diagram shows the common set of functionalities that are shared between both the Microsoft Azure Stack on-premises and the public Azure cloud:
Now that we've looked at the functionality that is shared between on-premises Azure Stack Hub and the Azure public cloud, we can delve into some common use cases for this hybrid adoption, starting with development.
Development
When I work with customers who build applications or services that are designed to run in the cloud, be that Microsoft Azure, Google Cloud, or Amazon Web Services, they tend to find that their development teams can rack up large costs by using the same cloud environment for their development environment, as well as production. The biggest attraction of using the public cloud for development is the fact that it is so easy to spin up an environment. Unfortunately, from a development standpoint, this is also where most of the costs start to come into play, as environments are spun up for a particular project or development team but are not always torn back down when they are finished with. By moving these development environments into an on-premises environment in Microsoft Azure Stack Hub, the customers can begin to make real savings as they have complete control over these environments. They can ensure that machines are removed once projects are completed.
The beauty of this for the developers is that they see no change in the tools or the process for building or deploying their code other than the endpoint. A developer can create their code in Visual Studio and deploy it directly from the Integrated Development Environment (IDE) to Microsoft Azure Stack Hub to test and Quality Assure (QA) it. Once tested and they are comfortable it works as designed, with no changes needing to be made, they can deploy the same release to Microsoft Azure public cloud.
For some organizations, the reverse of this is true and development is, in fact, done in the public cloud rather than on-premises. This is due to the flexibility offered by the public cloud and the speed with which environments can be spun up and down.
Testing
In a similar vein to the development environment, the same logic can also be applied to test and QA environments. Whether this is to test new services that are going to be deployed to the Microsoft Azure public cloud or changes to existing services that have already been deployed to the Microsoft Azure public cloud, then being able to test these in an environment that behaves in the same manner, but with no additional cost, is a great reason for running Microsoft Azure Stack Hub. Again, as with the development hybrid use case, these environments can be torn down once the release has passed testing and been released into production.
Regulatory
There are times where regulatory restrictions prevent data from being stored or manipulated in the public cloud. Theis can be dictated by government, industry, or regions. This may be because data cannot be stored in the public cloud or because data must be stored within the same country as the organization, and Azure is not available in that country. This is particularly true for multi-national companies who may have different regulations to contend with from different countries and governments, but they want to provide a consistent experience to all their employees. The idea of being able to develop and deploy global applications in Microsoft Azure for most locations, while still using the same deployment in local on-premises Azure Stack Hub where local restrictions dictate, is key. Application examples include global audits, financial reporting, foreign exchange trading, inline gaming, health data, and expense reporting.
Cloud application model
For customers running legacy applications, Microsoft Azure Stack Hub gives them the opportunity to apply modern architectures to their on-premises applications, which are not yet ready for the cloud. This brings into focus things such as containers and microservices, which can be tested on-premises in Microsoft Azure Stack Hub, safe in the knowledge that once they work in Microsoft Azure Stack Hub, they can then be deployed to Microsoft Azure with no code changes. Again, this is providing a consistent programming model, skills, and processes. You can use consistent processes across Azure in the cloud and Azure Stack Hub on-premises to speed up app modernization for core mission-critical applications. Azure Stack Hub is not simply just a virtualization platform such as Hyper-V or VMware; it is a fully fledged modern cloud platform.
Why is it compelling?
Organizations can now modernize their applications across hybrid cloud environments, balancing the right amount of flexibility and control. Developers can build applications using a consistent set of Azure services and DevOps practices, then collaborate with operations to deploy to the location that best meets their business, technical, and regulatory requirements. Developers can speed up new cloud application development by using pre-built solutions from the Azure Marketplace, including open source tools and technologies.
Note that this is all about applications. That is where the real value of a new hybrid cloud platform is. This will allow applications that are not yet ready to be run in a cloud environment to start moving in this direction. Cloud computing is likely to become the dominant design style for new applications and for updating many applications over the next 10+ years.
We have now covered the general hybrid use cases that can be undertaken on the Microsoft Azure Stack Hub platform. From here, we will take a look at one other use case that is not directly related to hybrid or private cloud scenarios, and that is Azure Arc.