05 azure overview using cloud principles v.2.0

49
Azure Using Cloud Principles Herman Keijzer PTS [email protected] Focus Azure V2 (ARM)

Upload: herman-keijzer

Post on 07-Feb-2017

89 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 05 Azure overview Using cloud principles v.2.0

Azure Using Cloud Principles

Herman Keijzer

[email protected]

FocusAzure V2

(ARM)

Page 2: 05 Azure overview Using cloud principles v.2.0

Cloud principles• Freedom of choice• Marketplaces• Cloud Inspired

Infrastructure• Multi Vendor• Hybrid• Hyper scale• Self-service• Build in and on top of

Security• Build in Compliancy• Automation

• Continuous Change• Shared• Software defined• Scalable• Pay per Use• Build to fail• Multi Vendor• Lock in Reduction• Open- and closed

source• Build in Security

Page 3: 05 Azure overview Using cloud principles v.2.0

Saving cost

S M T W T F S

Capacity Needed (Max + 20%)

J F M A M J J A S O N D

Capacity Needed (Max + 20%)

tCom

pute

InactivityPeriod

On and Off Growing Fast Unpredictable Bursting Predictable Bursting 24x7 Steady

Save 20-30%

Save 60-80%

On and Off (30%)

Growing Fast (15%)

Unpredictable Bursting(25%)

Predictable Bursting(20%)

24x7 Steady(10%)

Your Application Portfolio – What Does it Look Like..?

Page 4: 05 Azure overview Using cloud principles v.2.0

server demandserver demand

resources required

resources required

public cloudprivate cloud

IAAS usage private vs public

Page 5: 05 Azure overview Using cloud principles v.2.0

Putting cloud principles into practice

Page 6: 05 Azure overview Using cloud principles v.2.0

Dynamic scaling

Growing Fast Unpredictable Bursting Predictable Bursting

IAAS-> using VM scale setsPAAS-> scale up / scale out in App servicesPAAS->SQL elastic pool

Page 7: 05 Azure overview Using cloud principles v.2.0

• Auto-Scalable

• Fast

• Customizable • Windows or Linux• VM extensions• Open PaaS platform

• Ease of Management• Focus on target

instance count• Updateable

VM Scale Sets in ARM

Resource Group

Subnet

Scalable Storage

VM

VNET

Scalable NIC…V

MVM

VM

Scale Set

Extensions

Manage groups of identical VMsVirtual machine scale sets are an Azure Compute resource you can use to deploy and manage a set of identical VMs. With all VMs configured the same, VM scale sets are designed to support true auto-scale – no pre-provisioning of VMs is required – and as such makes it easier to build large-scale services targeting big compute, big data, and containerized workloads

Page 8: 05 Azure overview Using cloud principles v.2.0
Page 9: 05 Azure overview Using cloud principles v.2.0

VM scale sets• For custom images you can only have a single storage

account and are hence limited to 20 VMs in a scale set (or 40 if you set the overprovision property to "false". This will be increased in the future.

• Maximum number of platform image VMs in a scale set is 100. This will be increased in the future

Sample;https://github.com/Azure/azure-quickstart-templateshttps://github.com/gbowerman/azure-myriad

https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-overviewhttps://azure.microsoft.com/nl-nl/documentation/articles/virtual-machine-scale-sets-deploy-app/

Page 10: 05 Azure overview Using cloud principles v.2.0

Azure appservices

Page 11: 05 Azure overview Using cloud principles v.2.0

SQL elastic pool

https://docs.microsoft.com/nl-nl/azure/sql-database/sql-database-elastic-pool

Page 12: 05 Azure overview Using cloud principles v.2.0

Turning vms on/off

tCom

pute

InactivityPeriod

On and Off

Page 13: 05 Azure overview Using cloud principles v.2.0

Turning vm’s off- Auto shutdown new in Azure- Automated using azure automation- On demand

Page 14: 05 Azure overview Using cloud principles v.2.0

Impact on cost

744= 31 (days) X 24 (hour)

496= 31 (days) X 16 (hour)

saving€ 309,52Per month

Pricing calculator 9 jan 2017

Page 15: 05 Azure overview Using cloud principles v.2.0

Auto-shutdown

Page 16: 05 Azure overview Using cloud principles v.2.0

On demand turn on/off via powershelllogin-azurermaccount

Get-AzureRmSubscription | sort SubscriptionName

$subscrName=“subscription name"

Select-AzureRmSubscription -SubscriptionName $subscrName

$ResourceGroup = "TP5"

$VMs = Find-AzureRmResource -ResourceGroupNameContains $ResourceGroup

Foreach ($VM in $VMs)

{

$VMStatus = Get-AzureRmVM -ResourceGroupName $ResourceGroup -Name $vm.Name -Status | `

    select -ExpandProperty Statuses | ?{ $_.Code -match "PowerState" } | select -ExpandProperty displaystatus

 

       if($VMStatus -eq "VM Running")

           {

 

              Write-Output "status of" $vm.Name "is" """$VMStatus"""

              Stop-AzureRmVM -ResourceGroupName $ResourceGroup -Name $vm.Name -Force

           }

           else

           {

              Write-Output "status of" $vm.Name "is" """$VMStatus"""

           }

 }

Page 18: 05 Azure overview Using cloud principles v.2.0
Page 19: 05 Azure overview Using cloud principles v.2.0
Page 20: 05 Azure overview Using cloud principles v.2.0

Change size

Page 21: 05 Azure overview Using cloud principles v.2.0

Change size vm via portal

Page 22: 05 Azure overview Using cloud principles v.2.0

caveatsMultiple Nics per VM

The VM size determines the number of NICS that you can create for a VM!Configure only via Powershell, CLI or Template !

Page 23: 05 Azure overview Using cloud principles v.2.0

caveats Number of disks attached to a VM

https://azure.microsoft.com/nl-nl/documentation/articles/virtual-machines-linux-sizes/

Page 24: 05 Azure overview Using cloud principles v.2.0

automation

Page 25: 05 Azure overview Using cloud principles v.2.0

Azure Resource Manager

Page 26: 05 Azure overview Using cloud principles v.2.0

Benefits• Desired-state deployment

• Faster deployment

• Role-based access control (RBAC)

• Resource-provider model

• Orchestration

• Resource configuration

SQL - A Website VirtualMachines

SQL-AWebsite[SQL CONFIG] VM (2x)

DEPENDS ON SQLDEPENDS ON SQL

SQLCONFIG

Page 27: 05 Azure overview Using cloud principles v.2.0

Cache

Consistent Management Layer

Azure Resource Manager

Website VM SQL DB

Resource Provider

…..

Provider Contract

https://management.azure.com/subscriptions/{{subscriptionId}}/providers?api-version={{apiVersion}}

Tools

?

REST API

Page 28: 05 Azure overview Using cloud principles v.2.0

Resource Manager: Building a VMResource Group

Subnet

Storage

VM

VNET

Public IP storageAccount- accountType

publicIPAddress- allocationMethod- domainNameLab

el

virtualNetwork- addressSpace- Subnet

- addressPrefix

networkInterface- privateIPAllocati

onMethod

virtualMachine- hardwareProfile- osProfile- storageProfile- networkProfile

NIC

Page 29: 05 Azure overview Using cloud principles v.2.0

Github

https://github.com/Azure/azure-quickstart-templates

Page 30: 05 Azure overview Using cloud principles v.2.0

• ARM Quick Start Templates• https://azure.Microsoft.com/en-us/documentation/templates• https://github.com/Azure/azure-quick-start-templates

• ARM Schemas• https://github.com/Azure/azure-resource-manager-schemas/tree/master/schemas

• ARM Best Practices• https://azure.microsoft.com/en-us/documentation/articles/best-practices-resource-manager-

design-templates/• https://docs.microsoft.com/nl-nl/azure/best-practices-resource-manager-state

• ARM Visualizer• http://armviz.io

• VS Code Extensions• https://github.com/Azure/azure-xplat-arm-tooling

• Getting Stated guide• http://download.microsoft.com/download/E/A/4/EA4017B5-F2ED-449A-897E-BD92E42479CE/

Getting_Started_With_Azure_Resource_Manager_white_paper_EN_US.pdf

ARM Resources

Page 31: 05 Azure overview Using cloud principles v.2.0

Azure automation

Page 32: 05 Azure overview Using cloud principles v.2.0

More info

Learning pathhttps://azure.microsoft.com/nl-nl/documentation/learning-paths/automation/

Automation Bloghttps://azure.microsoft.com/nl-nl/blog/tag/azure-automation/

https://azure.microsoft.com/en-us/documentation/articles/automation-first-runbook-graphical/

Page 33: 05 Azure overview Using cloud principles v.2.0

Virtual Machine Extensions• Inject code and configuration into

VM’s

• Configuration• PowerShell, DSC, Chef, Puppet

• Management• Anti-virus, Backup, Patching, …

• Security• Disk encryption, …

VM Agent

Runtime & Extension API

Backup Extension

Monitoring Extension

VM Code & Configuration

https://azure.microsoft.com/en-gb/documentation/articles/virtual-machines-windows-extensions-features/

Page 34: 05 Azure overview Using cloud principles v.2.0
Page 35: 05 Azure overview Using cloud principles v.2.0

Freedom off choice

Page 36: 05 Azure overview Using cloud principles v.2.0

Microsoft Azure is an Open Cloud

Dozens of .NET & PHP CMS and Web applications

Bring your own

Via HTMl/JS, cross-platform and native

Ecosystem Provided

Languages, Dev Tools & App Containers

CMS & Apps

Devices

Databases

Management

MS Integrated

Operating

systems

UbuntuSUSE, OpenSUSE,

OpenLogic CentOS-based

Oracle Linux, CoreOS

Bringyour own

libcloudjclouds

DocDBDataStax

Page 37: 05 Azure overview Using cloud principles v.2.0

marketplace

https://azure.microsoft.com/en-us/marketplace/?source=datamarket

Page 38: 05 Azure overview Using cloud principles v.2.0

Infrastructure Services

Software for the entire cloud platform

Datacenter Infrastructure (24 Regions, 22 Online)

Compute Storage Networking

Platform Services

Security & Management

Web and Mobile

Media & CDN

Analytics & IoTIntegration

HybridOperations

Data

Compute Developer Services

Page 39: 05 Azure overview Using cloud principles v.2.0

Products

Virtual machine images

Multi-VM solutions Machine Learning services

Data services APIs

https://azure.microsoft.com/en-us/documentation/articles/marketplace-publishing-getting-started/

Page 40: 05 Azure overview Using cloud principles v.2.0

Build to fail

Page 41: 05 Azure overview Using cloud principles v.2.0

Azure availability setFault DomainsRepresent groups of resources anticipated to fail together i.e. Same rack, same serverFabric spreads instances across min 2 fault domains

Update DomainsGroups of resources that will be updated togetherHost OS updates honour service update domainsSpecified in service definitionDefault of 5 (up to 20)

Availability SetsVMs in separate Fault DomainsSLA 99.95 | HW SW | Windows & Linux

Page 42: 05 Azure overview Using cloud principles v.2.0
Page 43: 05 Azure overview Using cloud principles v.2.0

Redeploy

Page 44: 05 Azure overview Using cloud principles v.2.0

Build in security

Page 45: 05 Azure overview Using cloud principles v.2.0

Apps and DataSaaS

Microsoft protecting you

Malware Protection Center Cyber Hunting Teams Security Response

Center

Active Protection Service

SmartScreenOffice 365 Advanced

Threat Protection

WindowsUpdate

DeviceInfrastructure

CERTs

PaaS IaaS

Identity

INTELLIGENT SECURITY GRAPH

Cloud App Security

Rights Management

Key Vault

ConditionalAccess

Security Center

Event Management

Cyber DefenseOperations Center

Advanced Threat

Analytics

Digital Crimes Unit

Antivirus Network

Industry Partners

Page 46: 05 Azure overview Using cloud principles v.2.0

https://blogs.msdn.microsoft.com/azuresecurity/2015/09/29/secure-the-cloud-with-azure-security-center/https://azure.microsoft.com/en-us/services/security-center/

The Azure Security Center is your one-stop-shop for security in the Azure environment. It is a single dashboard that provides visibility into the security status of your Azure resources and control of those resources. It helps you protect your Azure environment, detect attacks, and respond to them

Page 47: 05 Azure overview Using cloud principles v.2.0

Cloud principles• Freedom of choice• Marketplaces• Cloud Inspired

Infrastructure• Multi Vendor• Hybrid• Hyper scale• Self-service• Build in and on top of

Security• Build in Compliancy• Automation

• Continuous Change• Shared• Software defined• Scalable• Pay per Use• Build to fail• Multi Vendor• Lock in Reduction• Open- and closed

source• Build in Security

Page 48: 05 Azure overview Using cloud principles v.2.0

appendix

Page 49: 05 Azure overview Using cloud principles v.2.0

High availability checklist• Use Traffic Manager

Avoid single VMsUse load balancers in front of web-facing VMsPut your stateless servers in Availability SetsUse VMSS for your stateless server scalingUse Premium Storage for your production VMsUse internal load balancers (or queues) between tiersDistribute your databaseUse cachesContact support before a high scale eventStore static assets in Blob StorageUse a CDN in front of your static assets

aaa

aaa

aa

aaaa