Sunteți pe pagina 1din 28

Microsoft Azure

Hands-on Tutorial
SI-SE
SI-SE Fachtag
Fachtagung
ung 24.1.2
24.1.201
0133
Markus Leder 

Slide
Slide 1 of 28
24.01.2013

Markus Leder 

© Zühlke 2012
Goals

 Microsoft Azure Platform overview and services


 Create a simple web application using a database
 Deploy it into the cloud
 Azure/cloud considerations

24.01.2013 Sl i de 2 of 28 © Zühlke 2012


Detail Agenda

 0830 Arrival of participants, room setup


 ~0845 Copy VirtualBox player/Virtual Image/Tutorial
Instructions (USB)
 0900 Welcome, Goals, Agenda
 0910 Azure Introduction
 0940 Create Azure Trial Account. Part 1 of tutorial.
 10:40 Break  
 11:00 Azure Architecture Considerations
 11:15 Part 2 of tutorial
 12:15 Q&A, complete tutorial
24.01.2013 Slide 3 of 28 © Zühlke 2012
Who’s who?

 Markus Leder,
Principal Consultant,
Zühlke Engineering AG, Zürich-Schlieren
mailto:markus.leder@zuehlke.com
 Knowledge Barometer 
 Software development role?
 C# and .NET?
 Azure?
 Other clouds?

24.01.2013 Slide 4 of 28 © Zühlke 2012


Cloud Characteristics

 On-demand self-service. unilaterally provision


computing capabilities, manually or automatically
 Broad network access. available over the network ,
accessed through standard mechanisms,
heterogeneous clients
 Resource pooling. serve multiple consumers, multi-
tenant model, dynamically assigned, location
independence
 Rapid elasticity. rapidly and elastically provisioned,
scale in and out, illusion of infinite resources
 Measured Service. metering capability. Pay per use.

24.01.2013 Slide 5 of 28 © Zühlke 2012


What is Windows Azure?

 http://www.windowsazure.com/en-us/
 Some snippets:
 highly available, redundant 
 Load balancing
 99.9x% monthly SLA
 Global datacenters
 Any language, tools
 Open REST interfaces
 Only pay what you use
 Easily scale

© Zühlke 2012
Service Model Categorization

 Microsoft Azure is a public cloud platform-


as-a-service (and IaaS)
PaaS  Platform as a Service (PaaS): consumer
created, deployed to cloud, programming
Application Operations languages, frameworks/runtime, tools, no
Data & Support  infrastructure management but application
Runtime Container 
Middleware
 != private cloud (Windows Server 2008 R2,
OS
Hyper-V, System Center)
Virtualization Cloud  Application and data is your concern
Server  PaaS
Storage
Network 
Infrastructure

24.01.2013 Slide 7 of 28 © Zühlke 2012


Services of Microsoft Azure Platform

Source: Microsoft Azure training kit: http://microsoft.com


24.01.2013 Slide 8 of 28 © Zühlke 2012
Main Components

 Compute: virtualized environment (Windows Server


2008 R2 / 2012)
 Storage: redundant, scalable, available, partitioned
 Network : secure connectivity for hybrid apps
 Database: relational, for structured data
 Reporting: Reporting Services
 Data Sync: synchronization between SQL Azure / on-
premise SQL server 
 Service Bus: communication channel or queue.
 Access Control: claims-based access control
 Caching: distributed in-memory cache/session state
24.01.2013 Slide 9 of 28 © Zühlke 2012
Virtual Machine Role

 To migrate legacy applications to cloud more easily


 Enables you to have full control over the OS Image
 Create portable VHD locally and upload to cloud
storage. No lock-in.
 Deploy a solution package
 Key considerations
 You set up, patch, back up
 Designed for long or non-automated
installs
 Durable image

24.01.2013 Slide 10 of 28 © Zühlke 2012


Instance Sizes

Allocated
Disk Space for
VM Size # CPU Cores* Memory Bandwidth
Local Storage*
(Mbps)
ExtraSmall Shared 768 MB 19,480 MB 5
Small 1 1.75 GB 229,400 MB 100
Medium 2 3.5 GB 500,760 MB 200
Large 4 7 GB 1,023,000 MB 400
ExtraLarge 8 14 GB 2,087,960 MB 800
* includes
* typical (6,144 MB is
1.6 GHz reserved for
system files)

24.01.2013 Slide 11 of 28 © Zühlke 2012


Windows Azure Storage

 Scalable storage in the cloud


 (Geo-)replicated 3 times (immediately consistent)
 100TB per storage account 
 Auto-scale (for volume and throughput)
 Accessible via RESTful Web Service API
 Accessible from Azure, on-prem or via internet 
 Best from .NET Client Libraries (DLL)
 Security: shared secret keys (2 versions), HTTPS endpoint,
shared access signature
 Various storage types
 Local instance disk space, Table, Queue, Blob, Drive, SQL
Azure, custom (MongoDB, RavenDB, …)

24.01.2013 Slide 12 of 28 © Zühlke 2012


Windows Azure Storage - Blob

 Blobs
 Large binary storage (audio, video, image, documents, …). Up to 200 GB
 Stored in container (unlimited containers, CDN deliverable, partitioned
by blob name, meta data). Snapshots. Write leases.

24.01.2013 Slide 13 of 28 © Zühlke 2012


Windows Azure Table Storage

 Tables (rows of entities)


 Entity = set of (up to 255) properties (name/value pairs).
Max. 1 MB per entity.
 Partitioned by (partition) key. Indexed by row key. Time
stamped for optimistic concurrency. Group transactions.
 Scales for large number
(billions) of entities and TBs.
Log, seq. lists, posts
 Structured data,
no fixed schema,
not an RDBMS, OData prot.
 Consider the queries
24.01.2013 Slide 14 of 28 © Zühlke 2012
Windows Azure Queue Storage

 Queues (simple message queue)


 Non transactional, read at least once, message invisible for
timeout, delete to remove message - otherwise is returned to
queue.
 Partitioned by queue name
 Any serialized object can be
a message. 64kB limit.
 Inter-role communication
 But: Service Bus Topics/Subscriptions
and Queues (advanced messaging)
 Client communication
24.01.2013 Slide 15 of 28 © Zühlke 2012
SQL Database

 Familiar SQL Server relational database model delivered


as a service
 Support for existing APIs & tools
 Built for the cloud with high availability & fault tolerance , 3
replicas
 Quick and easily provision and manage databases across
multiple datacenters
 SQL Azure provides logical server 
 Gateway server that understands TDS protocol
 Looks like SQL Server to TDS Client 
 Actual data stored on multiple backend data nodes
 Logical optimizations supported
 Indexes, Query plans etc..
 Physical optimizations not supported
 File Groups, Partitions etc…
 150 GB limit -> sharding
24.01.2013 Slide 16 of 28 © Zühlke 2012
Service Bus

 Relayed communication (NAT/Firewall traversal), WCF relay


bindings, Push
 Brokered communication
(async, pub/sub, reliable),
Pull model,
subscription filters (SQL92)

 Ports 80, 443, 9350-9353


 Events, one-way, rendezvous,
direct connection option

24.01.2013 Slide 17 of 28 © Zühlke 2012


Access Control Service (ACS)

 Security Token Service ( STS)


 Leverage claims-based (properties of a user in a
signed token) identity for web apps
 Supported IP like Windows Live ID, Google, Yahoo,
and Facebook 
 Metadata exchange

24.01.2013 Slide 18 of 28 © Zühlke 2012


Media Services

 Create, manage and distribute media


 Service platform for upload, storage, encoding,
 format conversion, content protection, and delivery
 HTTP/UDP/REST API for Windows, XBox, iOS, and
Android, misc. streaming
standards
 DRM
 Free preview service

24.01.2013 Slide 19 of 28 © Zühlke 2012


Visual Studio Development 

 Cloud Project Template


 For different roles
 For different languages
 Storage Server Explorer 
 IntelliTrace for historical
debugging
 Package/publish: full,
differential (within seconds)
 Local development fabric
for debugging and testing
(not for ACS, Service Bus, etc.)
24.01.2013 Slide 20 of 28 © Zühlke 2012
Hands-on

http://www.windowsazure.com/en-us/develop/net/tutorials/web-site-with-
sql-database
Explain EF, etc.?

24.01.2013 Slide 21 of 28 © Zühlke 2012


Architecture and Considerations

24.01.2013 Slide 22 of 28 © Zühlke 2012


Architecture Archetype

24.01.2013 Slide 23 of 28 © Zühlke 2012


Costs
( http://www.windowsazure.com/en-us/pricing/details/ )
(pay per month, pay-as-you-go)

 Compute
 Caching

 SQL Azure

 Storage

 Data transfer 
 Service Bus
24.01.2013 Slide 24 of 28 © Zühlke 2012
Architecture Consideration
Design for failure, Transient Fault 

 Instances going up and down


 Networking errors
 Intermittent faults
 Throttling

 Error handling
 Retry
 Transaction, compensation for consistency
 Several instances, fault domains, update domains

24.01.2013 Slide 25 of 28 © Zühlke 2012


Azure Considerations

 Trust, security, legislation, compliance, policies


 Commodity hardware (GPU, network topologies, storage, etc.)
 Vendor lock-in. No widely seen open cloud standards yet 
 Latency (request to response; but throughput)
 Challenges of distributed architecture (intermittent fault, data architecture,
partitioning, Cost-oriented-architecture COA, caching, …)
 Integration challenges (e.g. existing on-prem ERP, logistics, etc.)
 PaaS development flexibility
 Operations, monitoring, backups
 Constantly evolving
24.01.2013 Slide 26 of 28 © Zühlke 2012
References

 Azure in Action, Hay/Prince, Manning, 2010


 Microsoft Windows Azure Development Cookbook,
Mackenzie, Packt Publishing, 2011
 http://www.microsoft.com/cloud
 Azure Training Kit http://www.microsoft.com/en-
us/download/details.aspx?id=8396 (Nov 2012,
500MB)
 Azure .NET Developer Center
http://www.windowsazure.com/en-us/develop/net/
 Management Portal
https://windows.azure.com/Default.aspx
https://manage.windowsazure.com/
24.01.2013 Slide 27 of 28 © Zühlke 2012
Summary

 Microsoft provides one of the richest and most


powerful cloud services platform.

 You experienced development 


 Cloud architecture is not much different , but there
are some considerations

24.01.2013 Slide 28 of 28 © Zühlke 2012

S-ar putea să vă placă și