33
www.aditi.com WELCOME TO THE WEBINAR Automation Strategies for Success in Microsoft Azure #GoCloudWebinar

Strategies to automate deployment and provisioning of Microsoft Azure

Embed Size (px)

DESCRIPTION

Hear Michael Collier, Principal Cloud Architect at Aditi Technologies talk about the key automation strategies for success in Microsoft Azure, followed by a quick demo of Brewmaster, an automated provisioning and deployment tool for Azure.

Citation preview

Page 1: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

WELCOMETO THE WEBINAR

Automation Strategies for Success in Microsoft Azure

#GoCloudWebinar

Page 2: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

TODAY’S SPEAKERS

#GoCloudWebinar - @weareAditi

Michael CollierPrincipal Cloud ArchitectAditi Technologies

[email protected]@MichaelCollierwww.MichaelSCollier.com

Raghu RajagopalanPrincipal Engineering ManagerAditi Technologies

[email protected]://blog.rraghur.in

Page 3: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

TODAY’S WEBINAR

1/ Michael Collier: Expert Talk: Automation Strategies for Success in Microsoft Azure

2/ Raghu: Brewmaster Demo

3/ Q & A

#GoCloudWebinar - @weareAditi

Page 4: Strategies to automate deployment and provisioning of Microsoft Azure

WHY AUTOMATION?

Azure is highly automated• Service healing• Internal resources

Time to provision full environments• Compute, storage, etc.

Deployment to multiple geographies• Change only configuration / parameters

Page 5: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

#1 Source of Failed Projects (IMO)

Humans Terrible at Repetitive Tasks

Page 6: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

A FEW OPTIONS

REST API•Service Management

•Resource Manager

Azure Management Library

PowerShell•Invoke REST•Service Management

•Resource Manager

XPlat CLI•??

Azure Automation

Brewmaster

Page 7: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

A FEW OPTIONS

REST API• Service Management• Resource Manager

Azure Management Library

PowerShell• Invoke REST• Service Management• Resource Manager

XPlat CLI• ??

Azure AutomationBrewmaster

Page 8: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

MICROSOFT AZURE MANAGEMENT LIBRARY

Page 9: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

MICROSOFT AZURE MANAGEMENT LIBRARY

Source: http://www.BradyGaster.com

Consistent modern libraries over the Azure REST API

Page 10: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

MICROSOFT AZURE MANAGEMENT LIBRARY

Source: http://www.BradyGaster.com

Page 11: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

MICROSOFT AZURE MANAGEMENT LIBRARY

• Scenarios• Integration Testing• Custom provisioning of services (SaaS)• Dev/Test• Resource Governance• Anything you may want to automate

Page 12: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

MICROSOFT AZURE MANAGEMENT LIBRARY

Source: http://www.BradyGaster.com

Get all or just the ones you need

Page 13: Strategies to automate deployment and provisioning of Microsoft Azure

MAML

Create Web SiteCreate Storage AccountCreate and Deploy Web Role

Page 14: Strategies to automate deployment and provisioning of Microsoft Azure

1. Get the MAML Libraries from NuGet

Microsoft.WindowsAzure.Management

2. Get Active Directory Authentication Library

Microsoft.IdentityModel.Clients.ActiveDirectory (search “ADAL”)

3. Authenticate against AAD or use ClientCredential

Use Microsoft Account or Organization

4. Use resource specific client to perform actions

StorageManagementClient, ComputeManagementClient, etc.

RECAP

Page 15: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

POWERSHELL

Page 16: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

POWERSHELL CMDLETS

Get the goods

http://azure.microsoft.com/en-us/downloads/

https://github.com/Azure/azure-sdk-tools/releases

Page 17: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

POWERSHELL

Use cmdlets and/or REST APIs

Ability to script complex environmentsTemplate with an XML parameters filePowerShell learning curve

Consistent DeploymentsBuild server or developer machine

Page 18: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

• Interactive• Azure AD

> Add-AzureAccountVERBOSE: Account "[email protected]" has been added.VERBOSE: Subscription "Cloud Practice Sales Demos" is selected as the default subscription.VERBOSE: To view all the subscriptions, please use Get-AzureSubscription.VERBOSE: To switch to a different subscription, please use Select-AzureSubscription.

* Tip – Profile data stored in C:\Users\<user>\AppData\Roaming\Windows Azure Powershell

AUTHENTICATION OPTIONS

Page 19: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

AUTHENTICATION OPTIONS

• Programmatic• Management certificate• New –credentials option$userName = "<your organizational account user name>"

$securePassword = ConvertTo-SecureString -String "<your organizational account password>" -AsPlainText -Force

$cred = New-Object System.Management.Automation.PSCredential($userName, $securePassword)

Add-AzureAccount -Credential $cred

Page 20: Strategies to automate deployment and provisioning of Microsoft Azure

PowerShell: Service Management

Create VMs with a custom script extensionDeploy a Cloud Service

Page 21: Strategies to automate deployment and provisioning of Microsoft Azure

1. Install the Azure PowerShell cmdlets

2. Select your Azure subscription

3. VMa) Get the VM template image from the Azure galleryb) Create machine administrative credentialsc) Add data disksd) Set script extension

4. Cloud Servicea) Create the Cloud Serviceb) Create the storage accountc) Deploy package to new Cloud Serviced) Wait for roles to start

RECAP

Page 22: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

AZURE AUTOMATION

Page 23: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

WHAT IS AZURE AUTOMATION?

IT process automation solution for Azure• Creation, monitoring, deployment, &

maintenance• PowerShell Workflow engine• Runbooks• Leverage existing PowerShell scripts

Page 24: Strategies to automate deployment and provisioning of Microsoft Azure

Azure Automation

Stop VMs on a Schedule

Page 25: Strategies to automate deployment and provisioning of Microsoft Azure

1. Configure your Assets

a) Create a management certificate for Azure Automation

b) Create a connection between Azure Automation and your subscription

2. Create a Runbook

a) Connect to Azure

b) Stop the VMs

3. Test Runbooks

4. Publish

RECAP

Page 26: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

BREWMASTER

Page 27: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

1. Choose Template2. Configure Parameters

3. Deploy

BREWMASTER

Page 28: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

BREWMASTER TEMPLATES

Pre-built templates for popular server workloadsSharePoint, AD, SQL Server Always On, ARR, ElasticSearch etc.Templates hosted on GitHub/BitbucketOpen source: https://github.com/AditiTechnologies DSC and PowerShell

Template SDKTemplate = JSON + [DSC resources/Powershell scripts].C# Fluent Syntax Builder (NuGet) for authoring your own templates

Page 29: Strategies to automate deployment and provisioning of Microsoft Azure

Brewmaster

Create a SQL Server AlwaysOn environment

Page 30: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

CHOICES . . . WHEN TO USE

MAML

• PCL (WinPhone/WinStore)

• Higher level languages

PowerShell

• DevOps• Templates• Build Servers• Quicker than portal

Azure Automation

• Schedule Tasks• Integrate with Other

Services• System Center scripts

Brewmaster

• Templates for server workloads

• Complete infrastructure stacks

• IaaS-only

Page 31: Strategies to automate deployment and provisioning of Microsoft Azure

RESOURCES

MAML• http://www.jeff.wilcox.name/2014/04/wamlmaml/ • http://www.bradygaster.com/post/announcing-the-general-availability-of-the-microsoft-azure-management-l

ibraries-for-net

PowerShell• Resource Manager- http://channel9.msdn.com/Events/Build/2014/2-607 • http://michaelwasham.com/windows-azure-powershell-reference-guide/ • http://gallery.technet.microsoft.com/scriptcenter/Deploy-a-Windows-Azure-Web-81629e04 • http://azure.microsoft.com/en-us/documentation/scripts/

Azure Automation• http://azure.microsoft.com/blog/tag/azure-automation/ • http://

blogs.technet.com/b/keithmayer/archive/2014/04/06/step-by-step-getting-started-with-windows-azure-automation.aspx

Brewmaster• https://www.aditicloud.com/Home/Brewmaster

Page 32: Strategies to automate deployment and provisioning of Microsoft Azure

www.aditi.com

Michael CollierPRINCIPLE CLOUD ARCHITECT, [email protected]

Let’s continue the conversation.

Page 33: Strategies to automate deployment and provisioning of Microsoft Azure