280 likes | 423 Views
Windows Azure Platform: technical fundamentals Kurt CLAEYS TSP Azure. Where is Azure ?. The Windows Azure platform fits here. IaaS. Traditional IT. SaaS. PaaS. You manage. Applications. Applications. Applications. Applications. Data. Data. Data. Data. You manage. Runtime.
E N D
Windows Azure Platform: technical fundamentals Kurt CLAEYS TSP Azure
Where is Azure ? The Windows Azure platform fits here IaaS Traditional IT SaaS PaaS You manage Applications Applications Applications Applications Data Data Data Data You manage Runtime Runtime Runtime Runtime Managed by vendor Middleware Middleware Middleware Middleware You manage Managed by vendor O/S O/S O/S O/S Managed by vendor Virtualization Virtualization Virtualization Virtualization Servers Servers Servers Servers Storage Storage Storage Storage Networking Networking Networking Networking
The Windows Azure platform is a flexible cloud–computing platform that lets you focus on solving business problems and addressing customer needs.
Virtual Network Storage Compute Access Control Service Bus Caching Reporting Database Data Sync
SQL Data Windows Azure Service SQL Your Service Internet Worker Service NL B Worker Role SQL SQL Your Storage Queues NL B Web Site (ASPX, ASMX, WCF) Web Site (ASPX, ASMX, WCF) Web Role (ASPX, WCF) Tables Blobs
Azure Application Roles • WebRole • Hosting ASP.NET pages and/or WCF Services. • Handles incoming HTTP/HTTPS requests. • Public, Internet faced. • Has access to Storage Services. • WorkerRole • Code running in background, processing jobs. • ‘Hidden’ processing power. • Similar to a batch job or Windows service. • Handles messages from a queue. • Has access to Storage Services.
Azure VMRole • Ability to upload your own customized WS2008R2 Enterprise images • Full control over the OS image, install whatever you want on it. • You can remote desktop into the OS • Target scenarios • Need to use apps/libraries with no unattended setup • 32 bits apps • Change registry settings • Scale out ! • Instances are behind loadbalancer, one public IP per service • No durability of OS image on hardware failure • With VM Role, the customer creates & maintains the OS • Paying model = Paying model of current web/workerrole • Uses differencing disks to upload deltas to image
All three are virtual images running in the datacenter under control of the Azure fabric controller behind the loadbalancer. Web/Worker vsVMRole • Web/Worker Role • The virtual image is already there, ... you upload your app, ... Azure places this app on the image and runs the image. • VM Role • You upload the complete virtual image with all apps installed, ... Azure runs the image virtual image app app Visual Studio virtual image virtual image app Azure Azure app development environment development environment Hyper-V
Service configuration • Service configuration, maintainable after deploy • Number of instances • ConnectionString to Storage • Thumbprints of certificates • Custom setting • Service definition, defined at deployment • Size of VM • Local storage capacity • Endpoint • External • Internal
Load Balancer webrole NLB Instance 1 Instance 2 Instance 3
Load Balancer webrole NLB Instance 1 Instance 2 Instance 3
Load Balancer webrole NLB Instance 1 Instance 2 “round robin” no sticky sessions ! Instance 3
Azure Virtual Network Network policy managed through portal Web/Worker VM Role Azure Connect Gateway Azure Connect Gateway IPV6 address IPV6 address On Premise Machine SQL Server IPV6 address Azure Connect Gateway
Azure Storage • Non SQL data • Unlimited storage • 4 types • Tables: no fixed schema, no relations • Blobs: large objects, have metadata attributes, MIME type aware • Queues: assync communication to workerrole • Drives: NTFS volume mounted to roles • Accessible through a HTTP/REST API
Azure Blobs Accounts Container Blob Pic001.jpg SomeContainer Pic002.jpg MyAccount Mov001.wmv AnotherContainer Mov002.wmv http://<AccountName>.blob.core.windows.net/<ContainerName>/<BlobName>
Shared Access Signatures • Limit blobs in public container to be readable only if url contains shared access signature. • Share access signature can be made valid for a timerange only. http://<accountname>.blob.core.windows.net/<containername>/<blobname>?se=2010-04-04T11%3A38%3A31Z&sr=b&sp=r&sig=D73BRVuRBV9nXp9rsw35b5rkLadi6YEZ4Ti1S8eeAQQ%3D
Azure Content Delivery Network user Azure Datacenter Service (webrole, workerrole) requests blob Blob storage CDN Node Is blob cached here ? blob
Azure Content Delivery Network user Azure Datacenter Service (webrole, workerrole) another request Blob storage CDN Node blob
Azure Traffic Manager User/Browser User/Browser User/Browser User/Browser User/Browser User/Browser Browses to foo.cloudapp.net DNS name top IP resolution • Round Robin • Least latency • Fail over DNS Server North Europe DC West Europe DC Another DC APP APP APP e.f.g.h i.j.k.l a.b.c.d
SQL Azure admin SQL Azure Server My DB (1 GB) My DB (50 GB) Master DB users and roles users and roles logins firewall internal restricted IP ranges code “near” Azure Services (webrole,workerrole) code “far” Anybody
SQL Azure • Quorum based commit scheme where data is written to the primary and one secondary replica before we consider the transaction committed. DB transaction write write replicas
SQL Azure • Quorum based commit scheme where data is written to the primary and one secondary replica before we consider the transaction committed. DB transaction commited OK OK replicas
Azure AppFabric ServiceBus • Connect applications and services in the cloud or on-premises. • Expose apps and services through firewalls and NAT gateways • Acts as relay between WCF services and clients • Based on SOAP and REST • Pub/Sub pattern
Azure AppFabric Access Control Service identity providers Azure ACS rules Claims authorization Facebook ID authentication WebApp Redirect login ADFS2
Q&A kclaeys@microsoft.com