39
The Cloud for Modern Business

Microsoft Azure in der Praxis

Embed Size (px)

Citation preview

Page 1: Microsoft Azure in der Praxis

The Cloud for Modern Business

Page 2: Microsoft Azure in der Praxis

Why the cloud?Rapidly setup environments to drive business priorities

Scale to meet peak demands

Increase daily activities, efficiency and reduced cost.EconomicsScaleSpeed

Page 3: Microsoft Azure in der Praxis

On Premises

You s

cale

, m

ake

resi

lient

an

d m

anage

Infrastructure(as a Service)

Storage

Servers

Networking

O/S

Middleware

Virtualization

Data

Applications

Runtime

Man

ag

ed b

y v

en

dor

You s

cale

, m

ake

re

silie

nt

& m

anage

Platform (as a Service)

Sca

le, re

silie

nce

and

man

ag

em

ent

by v

en

dor

You m

anag

e

Storage

Servers

Networking

O/S

Middleware

Virtualization

Applications

Runtime

Data

Hosting models

Software (as a Service)

Storage

Servers

Networking

O/S

Middleware

Virtualization

Applications

Runtime

Data

Business model

Storage

Servers

Networking

O/S

Middleware

Virtualization

Data

Applications

Runtime

Sca

le, re

silie

nce

and

man

ag

em

ent

by v

en

dor

Why the cloud?

Page 4: Microsoft Azure in der Praxis

Azure

Page 5: Microsoft Azure in der Praxis

Azure footprint

16 regions worldwide in 2015

Data Centers

Regional Partners

Page 6: Microsoft Azure in der Praxis

Fortune 500 using Azure

>57%

>300kActive websites

More than

1,000,000

SQL Databases in Azure>30 TRILLION

storage objects

>300

MILLIONAAD users

>13BILLIONauthentication/wk

>3 MILLION

requests/sec

>1.65

MILLIONDevelopers registered with Visual Studio Online

Page 7: Microsoft Azure in der Praxis

.NET Support2015Offline Sync

Mobile Services

Networking Visual Studio & .NET

Virtual MachinesMemory Optimized Disk Optimized

Resource Manager

Portal

VSO GA

XamarinPoint-to-site VPN

Web Sites

SMB File SystemIBIZA

Remote Debug

VM Management

SQL Database

Puppet Chef DockerPowershell and DSC

Capture / Deploy

AutoscaleDynamic Routing

Subnet Routing

Static IP

Storage

Autoscale

Traffic Mgr

Web Jobs

Backup

Java Support

ASP.NET MVC 5.1

ASP.NET Web API 2.1

AD support

Powershell Automation

Node.JS project support

Remote DebuggingKindle Support

BD’s up to 500GB

99.95% SLA

Self Service Site RecoveryActive GEO replication

HDInsight

Hadoop 2.2

YARN support

.NET 4.5

.NET Foundation

Azure Redis Cache

API Management

Site Recovery

Remote Apps

Cordova

VSO Open Api’s

Event Hub

Page 8: Microsoft Azure in der Praxis

Connect every on-premises server to the cloud StorSimple

BackupHyper-V Disaster RecoveryVMWare Disaster RecoverySQL Server Always OnActive DirectoryOrchestration as a ServiceExpressRoute Networking

Azure

On-Premises Datacenter

Page 9: Microsoft Azure in der Praxis

Azure Service

s

Page 10: Microsoft Azure in der Praxis

Microsoft Azure ServicesC

lien

t la

yer

(on

-pre

mis

es)

Tablet PhoneGames consolePC

On-premises databaseBrowser

Office Add-in

On-premises service

ADMultifactorAuthentication

Access C

on

trol

Layer

Inte

gra

tion

la

yer Service

Bus CDNBizTalk Services

Traffic Manager

Virtual Networks

Express Route

Ap

pli

cati

on

layer

API Mgmt WebsitesCloud Services VM

Mobile Services

Media Services

Notification Hubs Scheduler

Automation

Data

Layer

Storage Blobs Tables Queues DataMachine Learning HD Insight

Document DB

SQL Database Caching StorSimple

Page 11: Microsoft Azure in der Praxis

Demo: Azure Portal

Page 12: Microsoft Azure in der Praxis

Getting started

>_

REST API

Virtual Machines

Management portal

Scripting (Windows, Linux and Mac)

Select image and VM size

Extra Small

Small

Medium

Large

X-Large

New disk persisted in storage

Cloud

BlobStorag

e

Comprehensive Networking

Windows Server

Linux

Boot VM from new disk

Page 13: Microsoft Azure in der Praxis

Microsoft Azure Certified

Page 14: Microsoft Azure in der Praxis

Microsoft Azure Site RecoveryOrchestrated disaster recovery to a second site or to Azure

Communication and Replication

Microsoft Azure Site Recovery

Communication Channel

Replication channel:

Hyper-V Replica

Primary Site

Windows Server

Recovery Site

Windows Server

Microsoft Azure Site Recovery

Primary Site

Windows Server

Automated VM protection and replication

Remote health monitoring

Customizable recovery plans

No-impact recovery plan testing

Orchestrated recovery when needed

Page 15: Microsoft Azure in der Praxis

Game sessions hosted using Azure

Hosted using >100,000 Azure Virtual Machines

Titanfall

Page 16: Microsoft Azure in der Praxis

• SQL Server database technology as a service • Fully Managed• Enterprise-ready with automatic support for HA• Designed to scale out elastically with demand• Ideal for simple and complex applications• Full support for TDS and ODBC• Familiar language and framework support• Cross Datacenter failover and backups to

support disaster recovery scenarios

SQL Database

Page 17: Microsoft Azure in der Praxis

Big Data InsightsMicrosoft Azure Machine Learning

Mashup sophisticated intelligent algorithms

Enables data scientists and developers to efficiently embed predictive analytics into their applications

Elastic, pay as you go with low operating costs

Extend with Power BI, Hadoop and cloud hosted data

Microsoft Azure HDInsightMicrosoft instance of Hadoop distribution running as service

Support existing ecosystem from Hive, Pig, etc

Extended to support Excel and BI tooling

Integration with diverse sources of data

Page 18: Microsoft Azure in der Praxis

Microsoft Azure Web Sites

Code smart Go liveStart simpleCreate new sites in seconds

Easily manage and scale your sites

Automatic load balancing and shared storage across instances

Scale out or up to reserved instances for improved performance and scale

Built-in web jobs support

Use ASP.NET, ASP, PHP, Java or Node.js

SQL Azure or MySQL databases

Start with open source apps and frameworks

Develop with VS and WebMatrix

Supports any Web development tool on any platform (Windows, OSX, Linux)

Rapid deployment for quick iteration

Integrated source control with Team Foundation Server (TFS) and Git

Built-in monitoring of perf and usage data

Quick access to request logs, failed requests diagnostics and diagnostics

Office Blog ASP.NET microsoft.com

Page 19: Microsoft Azure in der Praxis

• Full Portal Integration• Not just for Microsoft shops

Visual Studio Online

Agile

Build Test

Deploy

InsightsCode

Page 20: Microsoft Azure in der Praxis

• Synchronize your corporate and 3rd party identities

• Integration with O365• Support modern protocols

• OAuth 2.0• OpenID Connect• WS-Fed• SAML 2.0

• Identity and Access Mgmt Permissions• Users• Groups• Applications

Microsoft Azure Active Directory

PCs and devices

3rd party clouds/hosting Microsoft Azure AD

You

Page 21: Microsoft Azure in der Praxis

• On Demand Media Services• Video-on-demand• Ingest• Encode• Package• Encrypt• Delivery

• Live Streaming Support• Office 365 Integration

Azure Media Services

Live video encoding and streaming

Web + Mobile

100 million viewers

2.1 million concurrent HD viewers during the USA vs. Canada hockey match

Olympics NBC Sports

Page 22: Microsoft Azure in der Praxis

Mobile ServicesStorage

Authentication

Logic

Push

Scheduler

• Provides essential services to support client development

• Client Support• iOS• Android• HTML5/Web• Xamarin• Windows• Windows Phone• PhoneGap• Sencha

Page 23: Microsoft Azure in der Praxis

•Dev / Test• Full test and dev environments in minutes• VSO integration

• Lift and Shift• Take existing work loads and run then in a certified instance

•Storage• Archive key data in inexpensive cloud storage

•Big Data• Process key data into business intelligence using Hadoop or Machine Learning

• Identity• Synchronize all your identities through Azure AD to control access to Apps, Data and

Services

•Web Apps• Take your web apps to the cloud using inexpensive Web Sites

Key Scenarios to get started with Microsoft Azure

Page 24: Microsoft Azure in der Praxis

YourMSDN Benefits…

89

Countries33%o

ffDev/Test VMs

25%o

ffOther Dev/Test

3 VMs for 16 hrs a day 80 VMs for 20 hour load testUp to 100 web sites + DB

+

$150per Month

Up to

Page 25: Microsoft Azure in der Praxis

Cloud Development- Patterns

Page 26: Microsoft Azure in der Praxis

General Things to consider• Design everything to be Stateless (if possible)• use PaaS over IaaS• use Async• Automate everything• Right tool for the job• SQL• TableStorage• BlobStorage• NoSQL (DocumentDB, MongoDB, Cassandra)

Page 27: Microsoft Azure in der Praxis

Data Storage Options

Page 28: Microsoft Azure in der Praxis

Data partion strategiesVertical Partitioning

Page 29: Microsoft Azure in der Praxis

Data partion strategiesHorizontal Partitioning

Azure TableStorage does this automatically based on the PartionKey

Page 30: Microsoft Azure in der Praxis

Data partion strategiesHybrid Partitioning

Page 31: Microsoft Azure in der Praxis

Dev Ops• Continous Integration & Deployment

• Works on my machine!

• Monitoring• Telemetry (User behavior and usage)• VisualStudio Online is free for up to 5 users,

automatic deployment from SourceControl to Azure

Page 32: Microsoft Azure in der Praxis

Design for failure• Everything can fail at any time• Transient Faults (self healing)

• Network issues• Timeouts

• Use Traffic Manager route traffic to differnt data centers• Use AutoScale to handle peak times

Page 33: Microsoft Azure in der Praxis

Transient Fault Handling

•Entity Framework supports Retry Policy since 6.0•Azure SDKs include Retry Policies•Create custom HttpHandler for calling external services

public class MyConfiguration : DbConfiguration {     public MyConfiguration()     {         SetExecutionStrategy(             "System.Data.SqlClient",             () => new SqlAzureExecutionStrategy(1, TimeSpan.FromSeconds(30)));     } }

IRetryPolicy linearRetryPolicy = new LinearRetry(TimeSpan.FromSeconds(2), 10);blobClient.RetryPolicy = linearRetryPolicy;

Page 34: Microsoft Azure in der Praxis

34

HttpClient Handler

protected override async Task<HttpResponseMessage> SendAsync( HttpRequestMessage request, CancellationToken cancellationToken) {

HttpResponseMessage response = null;

for (int i = 0; i < _maxRetries; i++)

{

response = await base.SendAsync(request, cancellationToken);

if (response.IsSuccessStatusCode)

{

return response;

}

if (response.StatusCode == HttpStatusCode.Unauthorized)

{

var token = await _connector.GetRefreshToken();

request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", token.accessToken);

}

if (response.StatusCode == HttpStatusCode.NotFound)

{

return response; //No neet to retry 404

}

if (response.StatusCode == (HttpStatusCode) 429)

{

//Too many requests, back off

Thread.Sleep(2000);

}

}

return response;

}

VAR CLIENT = NEW HTTPCLIENT(NEW RETRYWITHAUTHHANDLER<EXACTCONNECTOR>(NEW HTTPCLIENTHANDLER(), 3, THIS));

Page 35: Microsoft Azure in der Praxis

Queue centric work pattern• Decouple tiers• Allows to scale efficiently • Handle unexpected peak loads• Works great with AutoScale• Use for all non interactive scenarios• Examples:

• Send Emails• Create Thumbnails of uploaded pictures• Write results to storage

Page 36: Microsoft Azure in der Praxis

Microservices• Each MicroService is part of an application (no SOA)• Autonom• Fast development and integration• Allows for experiments• Best language for the job

Page 37: Microsoft Azure in der Praxis

SingleSignOn (SSO)• Azure Active Directory• Support SAML, WS-Fed

and Oauth• Link to On Premise

Directory• Connect with ADFS On

Premise

Page 38: Microsoft Azure in der Praxis

38

Azure @ Sitrion•Websites•Cloud Services• SQL Database•DocumentDB• Storage• Traffic Manager•Redis Cache• ServiceBus

Page 39: Microsoft Azure in der Praxis

Questions?