Azure Basics: Compute Services
Tarun Sharma
Azure Enterprise Solutions Architect at IBM with experience in AI, Cloud-Native, Automation, Apps, Microservices with end-to-end Architecture, Consulting and Applications & Services Development.
loud compute capacity and scale on demand, pay only for the resources used
Azure offers a number of ways to host your application code and of the many?services?available in the Azure platform, compute services are those services that dictate and determine the execution of an application. Following are the main compute services available in Azure:
Virtual Machine
Azure Virtual Machines (VM) is one of several types of?on-demand, scalable computing resources?that Azure offers. Typically, you choose a VM when you need more control over the computing environment than the other choices offer. An Azure VM gives you the flexibility of virtualization without having to buy and maintain the physical hardware that runs it. However, you still need to maintain the VM by performing tasks, such as configuring, patching, and installing the software that runs on it.
Characteristics:
Virtual Machine Scale Set
Azure virtual machine scale sets let you create and manage a group of load-balanced VMs. The number of VM instances can automatically increase or decrease in response to demand or a defined schedule. Scale sets provide high availability to your applications and allow you to centrally manage, configure, and update a large number of VMs. With virtual machine scale sets, you can build large-scale services for areas such as compute, big data, and container workloads.
Characteristics:
Azure Container Instances
Containers are becoming the preferred way to package, deploy, and manage cloud applications. Azure Container Instances offers the fastest and simplest way to run a container in Azure, without having to manage any virtual machines and without having to adopt a higher-level service. Azure Container Instances is a great solution for any scenario that can operate in isolated containers, including simple applications, task automation, and build jobs. For scenarios where you need full container orchestration, including service discovery across multiple containers, automatic scaling, and coordinated application upgrades, we recommend?Azure Kubernetes Service (AKS).
Characteristics:
Azure Kubernetes Service
Azure Kubernetes Service (AKS) simplifies deploying a managed Kubernetes cluster in Azure by offloading the operational overhead to Azure. As a hosted Kubernetes service, Azure handles critical tasks, like health monitoring and maintenance. Since Kubernetes masters are managed by Azure, you only manage and maintain the agent nodes. Thus, AKS is free; you only pay for the agent nodes within your clusters, not for the masters.
Characteristics:
Azure Red Hat OpenShift
Azure Red Hat OpenShift provides highly available, fully managed OpenShift clusters on-demand, monitored and operated jointly by Microsoft and Red Hat. Kubernetes is at the core of Red Hat OpenShift. OpenShift brings added-value features to complement Kubernetes, making it a turnkey container platform as a service (PaaS) with a significantly improved developer and operator experience.
App Service
领英推荐
Azure App Service?is an HTTP-based service for hosting web applications, REST APIs, and mobile back ends. Applications run and scale with ease on both Windows and?Linux-based environments. App Service not only adds the power of Microsoft Azure to your application, such as security, load balancing, autoscaling, and automated management. You can also take advantage of its DevOps capabilities, such as continuous deployment from Azure DevOps, GitHub, Docker Hub, and other sources, package management, staging environments, custom domain, and TLS/SSL certificates.
Characteristics:
Azure Function
Azure Function is a serverless solution that allows you to write less code, maintain less infrastructure, and save on costs. Instead of worrying about deploying and maintaining servers, the cloud infrastructure provides all the up-to-date resources needed to keep your applications running. You focus on the pieces of code that matter most to you, and Azure Functions handles the rest.
Characteristics:
Azure Service Fabric
Azure Service Fabric is a?distributed systems platform?that makes it easy to package, deploy, and manage scalable and reliable microservices and containers. Service Fabric also addresses the significant challenges in?developing and managing?cloud-native applications. A key differentiator of Service Fabric is its strong focus on building stateful services. You can use the Service Fabric?programming model?or run containerized stateful services written in any language or code. You can create?Service Fabric clusters anywhere, including Windows Server and Linux on-premises and other public clouds, in addition to Azure.
Characteristics:
Dedicated Host
Azure Dedicated Host is a service that provides physical servers - able to host one or more virtual machines - dedicated to one Azure subscription. Dedicated hosts are the same physical servers used in our data centers, provided as a resource. You can provision dedicated hosts within a region, availability zone, and fault domain. Then, you can place VMs directly into your provisioned hosts, in whatever configuration best meets your needs.
Characteristics:
Azure Batch
Use Azure Batch to run large-scale parallel and high-performance computing (HPC) batch jobs efficiently in Azure. Azure Batch creates and manages a pool of compute nodes (virtual machines), installs the applications you want to run, and schedules jobs to run on the nodes. There's no cluster or job scheduler software to install, manage, or scale. Instead, you use?Batch APIs and tools, command-line scripts, or the Azure portal to configure, manage, and monitor your jobs.
Characteristics:
Choosing a Compute Service
The following flowchart will help you to choose a compute service for your application. If your application consists of multiple workloads, evaluate each workload separately. A complete solution may incorporate two or more compute services.