Date post: | 17-May-2015 |
Category: |
Technology |
Upload: | mohamed-samy |
View: | 1,187 times |
Download: | 0 times |
WINDOWS [email protected]
An introduction to Cloud computing
Presented By:
Mohamed Samy
Technical Architect, iSource
Goals and Takeaways
An understanding of Cloud computing An understanding of the Azure
environment Understanding the new architecture
Understanding why and when this architecture applies
Agenda
Introducing Cloud computing 15 mins The Windows Azure Platform 15 mins The Azure Data Services 15 mins .NET Services 15 mins How Cloud computing affects
Architecture 15 mins Q & A 15 mins
Agenda
Cloud, utility computing – Nice new buzzwords
What do they mean? Why do we need this model? Is this the new way of doing things?
What do I have to learn?
Agenda Contd
Demo What’s next? Introducing Azure The Operations Management
perspective Services in Action
The cloud
Another network topology
Another network topology
Evolution
Data center Hosted Model Cloud computing
So what exactly is cloud computing? Offerings from Amazon, Google,
Microsoft. Amazon Elastic computing (create your
own machine with your choice of OS + APIs)
Google Apps and API Hosting VMs in the cloud Microsoft created a new offering…..
Anatomy of a Cloud offering A machine Physical/Virtual hosted in a
data center (Hardware)
An Operating System
A framework, APIs and a development environment
Might include end user Apps (web sites, office suites..etc)
Hosting locally vs. in the cloud
Hardware costs.
Software costs.
Administration costs.
Resource allocation Machines must be chosen to host roles of the service
○ Fault domains, update domains, resource utilization, hosting environment, etc. Procure additional hardware if necessary IP addresses must be acquired
Provisioning Machines must be setup Virtual machines created Applications configured DNS setup Load balancers must be programmed
Upgrades Locate appropriate machines Update the software/settings as necessary Only bring down a subset of the service at a time
Maintaining service health Software faults must be handled Hardware failures will occur Logging infrastructure is provided to diagnose issues
This is ongoing work…you’re never done
Deploying A Service Manually
Conclusion
Data centers cost a lot of money. It’s cheaper to outsource these costs
and headaches to someone who does this all the time.
Previous Attempts
UDDI, Web service discovery
COM+, CORBA
Industry standards started popping up e.g. ws.*
Introducing the Azure Platform
What is it?Essentially a new architectureA Service offering, pay as you goAn OS, APIs + Operations management
(The key differentiator IMHO)
Azure™ Services Platform
A Look Inside Azure
ServiceBus
AccessControl
Workflow
…
Database
Reporting
Analytics
…
Compute Storage Manage
Identity
Devices
Contacts
…
…
…
Your Applications
MS Approach to Azure Services
Extend Your Existing Investments Familiar tools, languages, and frameworks with .NET and Visual StudioProvides the choice to build on-premises, cloud, or hybrid solutionsIntegrate with existing assets such as AD and premises applications
Base it on Internet StandardsMultiple protocol support including HTTP, REST, SOAP, AtomBroad investment in open, community-based access to Azure services
Provide a Flexible Services Platform with Internet ScaleSimple scenarios are simple – complex scenarios are possible
Services hosted in Microsoft’s data centersDesigned for high availability & scalability
Interoperability
Azure™ Services Platform
.NET Framework Evolution
The Operations management perspective
What is a fault domain?What percentage of my service can fail at
one time?What happens if a switch fails?
What is an update domain?How do I upgrade my service?What portions can we take down and
upgrade without causing failure?
Allows you to specify what portion of your service can be offline at a time
Fault domains are based on the topology of the data center Switch failure Statistical in nature
Update domains are determined by what percentage of your service you will take out at a time for an upgrade
You may experience outages for both at the same time
System considers fault domains when allocating service roles Example: Don’t put all roles in same
rack System considers update domains
when upgrading a service
Fault/Update Domains
Allocation is across fault domains
Fault domains
Switches
Windows Azure Fabric Controller
Highly-availableFabric Controller
Out-of-band communication – hardware control
In-band communication – software control
WS08 Hypervisor
VMVM
VM
Control VM
Service Roles
Control
Agent
WS08
Node can be a VM or a physical machine
Load-balancers
Owns all the data center hardware Uses the inventory to host services
Similar to what a per machine operating system does with applications
The FC provisions the hardware as necessary
Maintains the health of the hardware Deploys applications to free resources Maintains the health of those applications
Fabric Controller
Fabric Controller (FC) Maps declarative service
specifications to available resources
Manages service life cycle starting from bare metal
Maintains system health and satisfies SLA
What’s special about it Model-driven
service management Enables utility-model
shared fabric Automates hardware
management
Windows Azure Automation
“What” is needed
Make it happen
Fabric
SwitchesLoad-
balancers
Fabric Controller
Windows Azure provisions and monitors hardware elementsCompute nodes, TOR/L2 switches, LBs, access
routers, and node OOB control elements Hardware life cycle management
Burn-in tests, diagnostics, and repairFailed hardware taken out of pool
○ Application of automatic diagnostics○ Physical replacement of failed hardware
Capacity planningOn-going node and network utilization
measurementsProven process for bringing new hardware
capacity online
Behind The Scenes Work
Load Balancer Channel
Endpoint
Interface
Directory Resource
Modeling Services
Fundamental Services
Load Balancer
Template automatically maps to service model
Public Internet
Background
Process Role
Front-endWeb Role
Windows Azure Service LifecycleGoal is to automate life cycle as much as possible
Coding & Modeling
• New services and updates
Provisioning
• Desired configuration
Deployment
• Mapping and deploying to actual hardware
• Network configuration
AutomatedAutomatedDeveloper Developer/Deployer
Purpose: Communicate settings to service rolesThere is no “registry” for services
Application configuration settingsDeclared by developerSet by deployer
System configuration settingsPre-declared, same kinds for all roles
○ Instance ID, fault domain ID, update domain IDAssigned by the system
In both cases, settings accessible at run timeVia call-backs when values change
Dynamic Configuration Settings
Resource allocation Nodes are chosen based on constraints encoded in the
service model○ Fault domains, update domains, resource utilization, hosting
environment, etc. VIPs/LBs are reserved for each external interface described
in the model
Provisioning Allocated hardware is assigned a new goal state FC drives hardware into goal state
Upgrades FC can upgrade a running service
Maintaining service health Software faults must be handled Hardware failures will occur Logging infrastructure is provided to diagnose issues
Lifecycle Of A Windows Azure Service
So how do I get started
Demo
ISB components
Services In Action
Litware
Adventure Works
Hosted at Rackspace
ASP.NET
Large EnterpriseSAP
Cory
AD
Small Company
Francis
AD
36
IDENTITY AND ACCESS Control
Identity and Access Control Litware uses username/password today End-users prefer a single-sign-on approach
Litware wants to sell into companies that use a range of directories; AD, Tivoli, Sun, Oracle, …
And Litware wants to support internet identities
The focus is on three Litware customersAdventure Works who customers have Live IDsContoso who has AD Federation Services and GenevaFabrikam who is a small business using AD
Other customers use Tivoli, Oracle, …37
Litware
Adventure Works
Hosted at Rackspace
ASP.NET
ContosoSAP
Cory
AD
Fabrikam
Francis
AD
Geneva
ServicesConnector
Azure™ Services
AccessControl
MeshService
BusWorkflo
wLiveID
SQLData
39
Live Services
User-Centric Interactions Litware customer surveys show
Customer don’t like filling in registration formsOften forget where the Litware site is locatedWant to read or view training materials offline
○ On the plane○ Remote locations with low-bandwidth connections
Would like to be notified when they need to complete training
Developers can take advantage of Identity and the Mesh to address these and other concerns
40
Litware
Hosted at Rackspace
ASP.NET
Azure™ Services
AccessControl
MeshService
BusWorkflo
wLiveID
SQLData
42
Service BUS
Litware
Hosted at Rackspace
ASP.NET
ContosoSAP
Cory
AD
Azure™ Services
AccessControl
MeshService
BusWorkflo
wLiveID
SQLData
Application Integration Litware customers need integration with on-
premises assets such as HR applications Litware does not know ahead of time what the
applications are, or how many of them exist Integration must be secure and meet stringent
customer security requirements Litware decides to use the Service Bus for
application integration
44
45
workflow
Litware
Hosted at Rackspace
ASP.NET
ContosoSAP
Cory
AD
Azure™ Services
AccessControl
MeshService
BusWorkflo
wLiveID
SQLData
Enhancing Application Integration Litware wants an easy-to-use mechanism for
custom application extensions Ideally even non-developers could create high-
availability, high-scale extensions Ideally customers could use these tools Should be able to easily integrate with existing
and cross organization processes
Litware decides to use workflow when Contoso wants a custom feature for track low scores…
47
48
SQL DATA services
Litware
Hosted at Rackspace
ASP.NET
Azure™ Services
AccessControl
MeshService
BusWorkflo
wLiveID
SQLData
Database Integration Litware application stores, queries and manages
a broad range of dataStructured, Semi-structured and UnstructuredSemi-structured and unstructured covered previously
Emerging Litware needsData shared with partners across different devicesCustom reportsBusiness analytics including ad-hoc analysis through
ExcelData mining
Litware leverages SQL Data Services in order to fulfill this broad set of data requirements
50
Register for a .NET Services account & download the SDKhttp://www.azure.com
Attend tomorrows' .NET Services session
Call to Action