官术网_书友最值得收藏!

Microsoft Azure – the choice of a hosting platform

Microsoft Azure is an Internet-scale cloud platform hosted in data centers, managed and supported by Microsoft. It has been available for public consumption since early 2010. Having grown very rapidly, Azure today provides services on all cloud stacks such as IaaS, PaaS, and SaaS, covering a wide range of offerings around computing, storage, networking, mobile, analytics, and many more.

Choosing a hosting service for your application is an important task. The choice is usually based on factors such as the hardware and software requirements of the application, the required control over the hosting environment, operational cost, options to scale, and supported deployment methods. The hosting services offered by Azure range from fully controllable virtual machines to the capability to host serverless code.

The support for popular enterprise-ready platforms and applications such as Windows Server, Linux, SQL Server, Oracle, IBM, and SAP, makes Azure VMs a popular choice for hosting virtualized workloads. This service is also backed by a gallery of numerous open source virtual machine images, driven by Microsoft partners. Virtual Machine Scale Sets can be used to reliably manage, deploy, upgrade, and scale identical virtual machines at a scale spanning to hundreds of instances. The ability to automatically scale a Virtual Machine Scale Set without pre-provisioning optimizes the operational cost significantly.

The support for open source products has opened new opportunities for Microsoft Azure as a cloud platform. Containers being the new buzzword, Azure offers an open source enabled container service which optimizes the configuration of popular open source tools and technologies for Azure. Azure Container Service is based on the Docker container format to ensure portability of your application containers across environments. It also supports a choice of orchestration solutions like Docker Swarm, Marathon, and DC/OS to enable hyperscale deployment of containers with the ability to scale to tens of thousands of instances.

For customers who would like Microsoft to manage their operating environment by delegating responsibilities such as patching and upgrading, Microsoft offers a fully managed PaaS called cloud services. The service supports two types of virtual machines:

  • A web role, ideal for hosting web applications on Internet Information Server (IIS)
  • A worker role, recommended for running services and background tasks

A typical enterprise application deployment will use a collection of web roles and worker roles for hosting application tiers. While the operating system and the underlying hardware is managed by Microsoft, consumers will still have the ability to install custom software on the virtual machine, configure the operating environment, and even remotely access the machine.

For simpler applications which are less concerned about the underlying hosting environment, Microsoft Azure offers App Services, which is a lightweight and powerful platform to host web, mobile, and API applications. This service enables developers to rapidly build, deploy, and manage powerful websites and web apps which can be coded in popular programming languages such as .NET, Node.js, PHP, Python, or Java. Consumers using this service have the ability to run their workload on a dedicated or a shared virtual machine fully managed by Microsoft. Irrespective of this choice, each application is hosted in completely isolated and secured process boundaries.

Azure also offers a service for hosting Nanoservices on a serverless platform. The service is called Azure Functions. Azure Functions supports a list of popular development languages such as C#, Node.js, Python, and PHP. Azure functions also have the capability to scale according to the load imposed on them.

All the hosting services listed above can be used to host Microservices, some with a lot of plumbing and some without any. However, the ability for a hosting platform to support heterogeneous underlying infrastructure and operating environments is critical in today's world. This is what makes Azure Service Fabric unique and the recommended platform to host Microservices. We will cover more about Azure Service Fabric in Chapter 3, Understanding Azure Service Fabric.

Among all influencers, the control a consumer will have on a hosting platform, in terms of accessing and configuring it, holds maximum weight. This is typically driven by organizational strategies and constrains within a modern-day enterprise. The following diagram illustrates the amount of control a consumer has on each of the hosting services discussed here:

Azure compute services

The preceding diagram illustrates the level of control a user has on a specific Azure service. For example, if cloud services are used, users have the capability of configuring everything above the operating system, such as system registry and environment variables.

Azure Service Fabric offers maximum flexibility by providing configurable managed layers. We will spend the next chapter discussing its caliber in detail.

主站蜘蛛池模板: 桓台县| 辽宁省| 镇雄县| 湾仔区| 黎平县| 绥芬河市| 增城市| 清水河县| 治县。| 彭山县| 大安市| 同心县| 吉林省| 邹平县| 江北区| 资阳市| 区。| 东阳市| 汶上县| 思南县| 思茅市| 天长市| 新野县| 罗定市| 当涂县| 陆河县| 华亭县| 黔西县| 汝阳县| 天台县| 和硕县| 乐安县| 沂源县| 油尖旺区| 恩施市| 高台县| 安康市| 山东省| 从江县| 双辽市| 青神县|