By Vadym Fedorov, Solutions Architect, SoftServe
In the modern world, running a business is next to impossible without a range of software to help teams communicate, plan, share documents, review performance, and complete various other tasks. Business apps can bring many benefits to an organization; however, when businesses are making a decision to start using a new software solution, they also have to decide where to deploy the solution.
You can definitely deploy a business app on premises infrastructure, but you need to take into account that you will probably need to buy and configure new servers. Put your new servers into a datacenter. Then, you will need to take measures to ensure datacenter security and quality maintenance of the infrastructure. Many companies prefer to have their own datacenter due to government regulations and the desire to keep their data as protected as possible, for both privacy and security purposes. This approach works fine if you have enough budget to make the capital investment, as well as time to wait until new servers are delivered, set up, and configured. At the same time, the idea of moving from capital expenditures (Capex) to operational expenses (Opex) is very popular.
Here comes the cloud, which offers an attractive pay-as-you-go pricing model, helps to reduce infrastructure costs, and gives you access to computing, storage, and network. The cloud is a good and attractive option, but oftentimes it is difficult for a business to use a cloud-only infrastructure due to concerns about security, privacy, and compliance. As a tradeoff, many organizations use a hybrid cloud approach. The hybrid cloud presupposes that your on-premises and cloud infrastructures are connected, and you use them at the same time.
Microsoft Azure: Usage Scenarios
Most enterprises around the world are using Microsoft solutions to run their business. Microsoft provides customers with their own cloud—Microsoft Azure, which offers a wide range of services for different usage scenarios.
Let's have a look at the following scenario: deployment of a business app for an organization that already has on-premises resources. This organization uses Active Directory for user and access management. They expect that users will have a single sign-on experience. The data in the business app is private, and the organization doesn't want to expose the app to the Internet.
So how can we deploy the app on Azure and meet the requirements of the scenario?
Before we come to deployment of a specific app, we need to create a network and connect our on-premises infrastructure to a cloud infrastructure network. For this purpose, we can use a virtual network service that provides the capability to create an isolated network in the cloud with a defined IP addresses range; this makes it easy to integrate a cloud network with the on-premises network. When the virtual network is created, we need to connect our datacenter with the cloud. To do this, we can use the VPN Gateway service, which provides various options to enable a VPN connection from the datacenter to the cloud. If you need low latency and a private connection to the cloud, you can have a direct connection to the cloud by fiber with the help of the ExpressRoute service.
When the network is ready, it is time to integrate your Active Directory with the cloud. At this stage, you have the following options:
- You can use Azure Active Directory services, which provide a managed Active Directory integrated and synchronized with your Active Directory.
- You can deploy and configure your own configuration of the Active Directory on the virtual machine provided by the Virtual Machines service.
This is when you deploy the app. We can use the Virtual Machines service to get servers for app deployment. When the application is deployed on servers, we configure it to use the deployed Active Directory.
Benefits of Microsoft Azure
This scenario demonstrates that Azure provides the following benefits:
- A pay-as-you-go pricing model that helps to move expenses from Capex to Opex
- Quick access to a computing and network resource reduces time to market
- Network services such as Virtual Private Network, VPN Gateway, and ExpressRoute help to design and set up a network connection between on-premises and cloud resources
- Managed services like Azure Active Directory reduce efforts required for a security and access management integration
- Virtual Machines service provides a wide range of virtual server configurations with different numbers of CPU, RAM, storage, and operational systems. It gives you the possibility to choose a server configuration that is the best for you needs.
Lastly, the cloud has one more important benefit: flexibility in decision-making about infrastructure. You easily can provision additional servers and decommission the old ones when needed. You can use managed services that provide out-of-box solutions or deploy and maintain your own. This flexibility in decision-making about infrastructure leads to flexibility in making business decisions and ensures fast reaction to the business challenges of the modern world.
About the Author
An expert in Enterprise Application Development, Vadym Fedorov is a Solutions Architect at SoftServe. He holds a Master's degree in high-precision mechanics from Sevastopol State Technical University and has been the recipient of multiple industry certifications and awards. Vadym regularly contributes articles on cloud solutions and Application Development to SoftServe's United Blog, so please come check out more from him.