In this chapter, we’ll describe some of the most common use cases for the IaaS model of cloud computing.
One of the best places to start with cloud deployments at scale is in development and testing. You can quickly show the cost benefits of cloud computing as the multiple environments (development, testing, user acceptance testing and so on) can be expensive and do not provide direct business value. Additionally, developers are typically more tolerant of problems than production users, so if you do encounter problems, developers and IT can learn from their mistakes.
Teams can quickly set up and dismantle development and test environments, bringing new applications to market faster. IaaS makes it quick and economical to scale dev-test environments up and down, and Azure tooling ensures that teams do not exceed usage quotas.
Try it for free! Click here to get an instance of Azure DevTest Labs.
In fact, with Azure DevTest Labs, your teams can develop and test in the cloud in a self-service, controlled fashion. DevTest Labs allows you to allocate servers to do development. A separate set of servers can be spun up – under configuration control – at a certain hour of the day (say, Want to try it? Click here for a test spin of Azure App Service for a limited time without a subscription, free of charge and comment. at night) to run tests, and then deallocated as the tests complete or at a particular time. As with an on-premises lab, policies can be created that regulate what kind of test machines are used, how many can be allocated for each user and when the project ends (an expiration date) for the lab.
Figure 3-1 Setting allowed VM sizes for a development/test lab
Want to try it? Click here for a test spin of Azure App Service for a limited time without a subscription, free of charge and comment.
IaaS provides all the infrastructure to support web apps, including storage, web and application servers and networking resources to support websites and web applications. Organizations can quickly deploy web apps on IaaS and easily scale infrastructure up and down when demand for the apps is unpredictable.
As we’ve mentioned, IaaS VMs are an easy and straightforward destination for applications that you’re moving out of your data centre. Because, in all likelihood, your on-premises applications are running as virtual machines, it’s relatively simple to move them to the cloud: it’s a matter of sizing your cloud VMs appropriately and allocating the correct number of cloud servers.
We discuss the details of this shortly.
Organizations can avoid the capital outlay for storage and complexity of storage management, which typically requires a skilled staff to manage data and meet legal and compliance requirements. IaaS is useful for handling unpredictable demand and steadily growing storage needs. It can also simplify planning and management of backup and recovery systems.
Read more about Azure Storage and recovery, and success stories from customers using it, here.
High-performance computing (HPC) on supercomputers, computer grids or computer clusters helps solve complex problems involving millions of variables or calculations. Examples include earthquake and protein-folding simulations, climate and weather predictions, financial modelling and evaluating product designs.
Distributed HPC workloads often require extremely fast interconnects, and for those, Azure uses InfiniBand and remote direct memory access (RDMA). Azure also offers Cray hardware in the cloud for supercomputing workloads.
Big data is a popular term for massive data sets that contain potentially valuable patterns, trends and associations. Mining data sets to locate or tease out these hidden patterns requires a huge amount of processing power, which IaaS economically provides.
Many diverse types of modern applications can now take advantage of the graphics processing unit, or GPU.
Using Azure Batch Rendering, customers can automate and scale up their graphics development pipelines, using as much graphics horsepower as they need, with plug-ins available for many popular design tools (see above).
In addition, artificial intelligence and machine learning applications – including CNTK, TensorFlow and Caffe – can be significantly accelerated using GPUs. For these, Azure offers virtual machines with NVIDIA Tesla GPUs, specifically designed for AI workloads.
The SAP HANA platform is widely used for enterprise resource planning and in- memory data analysis at scale. Azure can support GHANA in a VM with up to 4 Terabytes of memory, and on a ‘bare-metal’ processor (a server supporting only one workload) up to 20 Terabytes of RAM.