The cloud is changing expectations. Your customers expect more. Your business expects more. You expect more. Companies you already know, such as Uber and Facebook, were born in the cloud, and almost every industry sector is adopting the cloud to drive business growth. These companies move faster, deliver more value, and meet our ever-changing needs more effectively than those constrained by more traditional approaches. They find new ways to use the flexibility of the cloud to their advantage. They design ways to almost infinitely scale out and gain deeper insights into their customers that other companies can only dream about. Now you want to move to the cloud, too. And you’re wondering how to go about it. You want the benefits, but where do you start and how do you avoid the pitfalls that cloud pioneers faced?
Cloud computing provides a modern alternative to the traditional on-premises data center. Public cloud vendors provide and manage all computing infrastructure and the underlying management software. These vendors provide a wide variety of cloud services. A cloud service, in this case, might be a virtual machine, a web server, or cloud-hosted database engine. As a cloud provider customer, you lease these cloud services on an as-needed basis. In doing so, you convert the capital expense of hardware maintenance into an operational expense.
A cloud service also provides these benefits:
- Rapid deployment of large compute environments
- Rapid deallocation of systems that is no longer required
- Easy deployment of traditionally complex systems like load balancers
- Ability to provide flexible compute capacity or scale when needed
- More cost-effective computing environments
- Access from anywhere with a web-based portal or programmatic automation
- Cloud-based services to meet most computer and application needs
Azure key concepts:
Datacenters and regions
Azure is a global cloud platform that is generally available in many regions around the world. When you provision a service, application, or VM in Azure, you are asked to select a region. The selected region represents a specific datacenter where your application runs
The Azure portal is a web-based application that can be used to create, manage, and remove Azure resources and services. It includes a customizable dashboard and tooling for managing Azure resources. It also provides billing and subscription information.
Azure resources are individual compute, networking, data, or app hosting services that have been deployed into an Azure subscription. Some common resources are virtual machines, storage accounts, or SQL databases. Azure services often consist of several related Azure resources. For instance, an Azure virtual machine might include a VM, storage account, network adapter, and public IP address. All of these are individual resources. Each resource can be created, managed, and deleted individually or as a group.
An Azure resource group is a container that holds related resources for an Azure solution. The resource group can include all the resources for the solution, or only resources that you want to manage as a group.
Resource Manager templates
In addition to creating, managing, and deleting resources by using the Azure portal, you can automate these activities by using PowerShell or the Azure command-line interface (CLI).
Azure PowerShell is a set of modules that provide cmdlets to manage Azure. You can use the cmdlets to create, manage, and remove Azure services. In most cases, you can use the cmdlets for the same tasks that you perform in the Azure portal. The cmdlets can help you can achieve consistent, repeatable, and hands-off deployments.
Azure command-line interface
The Azure command-line interface is a tool that you can use to create, manage, and remove Azure resources from the command line. The Azure CLI is available for Linux, Mac OS X, and Windows.
Azure is built on a set of REST APIs that support the Azure portal UI. Most of these REST APIs are also supported to let you programmatically provision and manage your Azure resources and apps from any Internet-enabled device.
Azure Functions is a server-less, event-driven experience that extends the existing Azure application platform with capabilities to implement code triggered by events occurring in other Azure services, SaaS products, and on-premises systems. Azure Functions introduces a new pricing model where you will only be charged for the time your code is running. When an Azure Function is invoked it will be provided with as many resources as it needs to execute only for as long as it is executing. You can help secure your Azure Functions by hosting them on an App Service Environment that can be configured to be addressable only from internal networks.