Microsoft Azure Essentials Automation... · SaaS application within Azure ... JavaScript, F# or...

9
Automation script in Azure Azure offers a variety of services from Runbook automation and Resource Manager templates as open platforms, to automated commands available in PowerShell or Azure CLI and beyond as well as capabilities built directly into services and workloads, like scaling, scheduling, eventing and more. Automation Options in Azure Automation options within and across Azure Learn about your options to automate a broad range of tasks in Azure, including options across Azure services, and across the lifecycle of deployment, resource optimization, day-to-day management, and complex hydration. Microsoft Azure Essentials

Transcript of Microsoft Azure Essentials Automation... · SaaS application within Azure ... JavaScript, F# or...

Automation script in Azure

Azure offers a variety of services from Runbook automation and Resource Manager templates as open platforms, to automated commands available in PowerShell or Azure CLI and beyond as well as capabilities built directly into services and workloads, like scaling, scheduling, eventing and more.

Automation Options in Azure

Automation options within and across Azure

Learn about your options to automate a broad range of tasks in Azure, including options across Azure services, and across the lifecycle of deployment, resource optimization, day-to-day management, and complex hydration.

Microsoft Azure Essentials

Runbook Gallery with pre-built automation scripts

“Azure Automation” itself is a SaaS application within Azure that allows you to use runbooks to automate processes and it can be used to orchestrate other automation options within Azure. Runbooks can be authored using PowerShell, graphical or python tools. This can be executed in Azure and via hybrid workers for scenarios outside of Azure.

Process automation in Azure Runbooks

Runbooks are powerful tools to automate a broad range of tasks in Azure, but there are many more automation options across services and across the lifecycle of management, from deployment and day-to-day management to optimizing resources and complex hydration.

You can get started with preconfigured, community contributed Runbooks from the Runbook Gallery – where you’ll find simple, but useful samples, like starting and stopping multiple VMs, vertically scaling SQL databases, building an Active Directory forest and more.

Azure Resource Manager Templates

Azure Resource Manager templates represent infrastructure as code

SharePoint HA Template

Azure Resource Manager templates are JSON-based files that define the required infrastructure, services and configurations to be automated and you can even provide parameters to customize the resulting services to your environment.

Azure Resource Manager templates allow you to define complete topologies with compute, networking and any other type of resource you need for the apps, services and solutions you build in Azure.

Azure Resource Manager templates provide a declarative approach to provisioning resources – and even entire multi-tiered applications end-to-end within Azure.

You can learn from many existing solutions including QuickStart Templates and existing solutions in the public Azure Marketplace or via the Azure Portal. These marketplace solutions are provided by Microsoft and our partners to provide first class experiences for deploying and running production workloads in Azure.

You can deploy Azure Resource Manager templates using Azure CLI, PowerShell, Cloud Shell, the Azure Portal and other SDKs or tools for Azure.

When you provision an application via the Azure Marketplace, you are guided through an easy, step-by-step process to configure basic settings and parameters, determining things like under which subscription the solution will run, resource group assignment, datacenter location, sizing, disk type, networking configurations and integration settings.

Provisioning applications via the Marketplace

Editing JSON templates in Visual Studio Code

These steps are great for provisioning and building out highly customized scenarios. Using Visual Studio code or other JSON editors, and from within a resource group, you can edit the template further.

You can select an automation script from the portal as a starting point to customize additional automation for your virtual machines, container services, database services, app services, virtual networks and more within a resource group.

VM Container Database App Service Virtual Network

You can initiate the Azure Resource Manager Template using Azure CLI commands, PowerShell cmdlets, .Net or Ruby. For more comprehensive scenarios, you can also upload artifacts like PowerShell or BASH scripts that can be called by Azure Resource Manager as part of the provisioning configuring or process.

If you want to take advantage of serverless infrastructure, Azure Logic Apps is a service that allows you to run automated scalable workflows that integrate apps and data across cloud services and on-premises systems.

Automating Serverless Infrastructure

Defining Automation workflows visually in Azure Logic Apps

Common scripting languages available for Azure Functions

With Logic Apps you can create, design, and deploy automation for integration with both business and IT-related processes.

Hundreds of Logic App connectors are pre-built for easy drag-and-drop style development with other services – like SQL Database, Office 365,Salesforce, Google G Suite or abroad range of Azure services.

You can build your own custom connectors calling your own code snippets via Azure Functions, OpenAPI definitions, Postman collections or from scratch.

Azure Functions is a related serverless compute service that enables you to run code on-demand without having to explicitly provision or manage infrastructure.

You can call Azure Functions with your code to run scripts or other automation based on a trigger or event. Azure Functions can be written in C#, JavaScript, F# or Java and we'll be adding more common scripting languages and developer platforms over time.

Now it's important to note that in addition to automation platforms spanning resource types, there are unique automation options within individual resources themselves like virtual machines, databases, app services, storage, AI and IoT. There are both customizable and built-in methods across Azure services to automate processes and tasks.

Elastic scale with VM scale sets

Starting with virtual machines, there are several automation options in addition to Automation Scripts. A core concept of cloud computing is elastic scale, and virtual machine scale sets deliver elastic scale by letting you automatically create and manage a group of identical, load balanced VMs. The number of VM instances can automatically increase or decrease in response to demand or a defined schedule.

Virtual machines Databases App services IOT

You can also automate simple common operations within your virtual machines, like auto-shutdown of the VM, recurring backups or OS updates.

AI

Automation Within Specific Services

This can be used for discovering, classifying, labeling & protecting the sensitive data in your databases. Additionally you can do things like Dynamic Data Masking – where an automated process can discover credit card, email, or custom number and string formats – to obfuscate sensitive information from view.

Automation of Dynamic Data Masking to obscure the sensitive data in your environment

App services automation can use WebJobs, which run scripts or programs as background processes in the context of your app either continuously or when triggered. You can also use App Service Push to send push notifications via Notification Hubs to trigger events or report status for automated processes.

In data services, there are also automated options for data discovery and classification.

Continued LearningMicrosoft Mechanics

Training

Learning Path

Additional Resources

QuickstartsCreate an Automation Account

Create a runbook

Create a DSC configuration

.NET Developer on AzureAutomation options within and across Azure

Hybrid Infrastructure Automation with Azure Resource Manager Templates

Unified update management across Windows, Linux and hybrid environments

Unified management across Linux and Windows Server with OMS and PowerShell

Automating Azure Workloads

Automation Videos

Automation Documentation

Asynchronous messaging with Azure Queue Storage

So that was a quick run through of a few core options for automation in Azure. These are the common services and controls you can leverage within the Azure portal, but since many services can be automated via your code and scripting combined with polling and eventing, there are limitless options where you can use your tools of choice along with Azure services.

Azure Queue Storage provides asynchronous messaging between application components, whether they are running in the cloud, on the desktop, on an on-premises server, or on a mobile device. Queue storage also supports managing asynchronous tasks and process work flows used for automated processes and procedures.

Automation options also extend to artificial intelligence workloads using Batch AI, Internet of Things using IoT Hub to trigger automated workflows and Device Provisioning Services for zero-touch, just-in-time automated provisioning that can scale to millions of devices.