What does Azure provide?
- Set of connected servers
- Abstract execution environment
- Shared file system
- Resource allocation
- Programming environments
- Utility computing 24x7
- Pay for what you use
- Simpler transparent administration
What are the features?
Automated service managmenet
- define rules and provide code
- deploys, monitors and manages your service
Powerful service hosting
- All of the hardware
- Virtualize and direct execution
Scalable and available cloud storage
- Blobs, tables queues
Rich developer experience
The model appears to be queue based. You can start up mulitple isntances of you service and send the cloud a message. An endpoint in the service then gets the work, and hands it over to a worker.
He is showing a management console that shows you running the instances locally. That looks real cool. That is an important thing as you can emulate all of this locally.
Automated Service Management
Develop and model
- Service topology and size
- Health constraints
- Configuration settings
Deploy and run
Maintain Service Health
Maintaining Service Health
- Goal heek service responsive in failures and upgrades
How?
- Detect failures of health
- Replace failed / missing resources transparently
This is made possible by abstraction
- Service declares location resources in the model
- API's map logical resources to physical entities
This is a balance between power and ease of use
Escape hatch; "raw mode" build own VM and manage the service yourself
Scalable available cloud storage
Sim;le storate abstractions
- Large items of user data: blobs, file streams
- Service state: simple tables, caches, ...
- Service communications: queues, locks, ...
With an emphasis on:
- Massive scale, availability and durability
- Geo-distribution and replication
This is not a database service in the cloud
- That is provided by Sql Services
Rich familiar dev experience
- Simualted cloud environment
- Multiple languages and envs
- Currently ASP.NET and .NET lanaguages; future native code and PHP
Ecosystem
- VS, Eclipse (in the future)
- Logging, alearts, tracing (future)
- Samples, docs, MSDN, forums
- Command line based SDK extensible by all tools
Load balancer takes requests and distributes them to a web role. Not direct access to the roles. Storage is co-located. Cloud storage system is accessable via REST. Web and worker roles can talk out to the Internet. Scale out is the model. Cloud storage is replicated. Local storage is available, but use it just as a cache. Worker role must reply to the queue that work is done, or else the queue will start another.
Take away
Azure is:
Designed to encourage best practices
- Stateless compute + durable storage
- Co-location of computation and data
- Queues for async processing
Open
CTP
- Open release of SDK
- Limited preview of the cloud
-- Free usage with quotas
Key features
- VMs with dedicated services
- Automated service management
- Simple service architectures
- ASP.Net websites, managed code workers
- Storage: blobs, tables and queues
- Single large west coast US data center
Business Model
- Consumption based billing
- Strict SLAs with financial guarantees
Global read
- Presence in multiple datacenters
- Geo distribution
Service hosting options
- Native code support
Cloud storage itself is built on Azure.