• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
BizSpark Startup Night Windows Azure March 29, 2011
 

BizSpark Startup Night Windows Azure March 29, 2011

on

  • 2,183 views

BizSpark Startup Night presentation in Singpaore. March 29, 2011

BizSpark Startup Night presentation in Singpaore. March 29, 2011

Statistics

Views

Total Views
2,183
Views on SlideShare
2,143
Embed Views
40

Actions

Likes
2
Downloads
7
Comments
0

3 Embeds 40

http://innovativesingapore.com 36
http://spiffy.sg 3
http://tanchunsiong.cloudapp.net 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Start asking yourselves, do I need these?Windows Azure Key FeaturesService hostingService managementStorage – HTTP APIWindows Server - .NET Framework, FastCGI for PHP, ROR, Python, etcDevelopment Tools
  • Demo New ProjectShow Definition and Configuration FilesShow Properties of Web Role to demonstrate how easy it is to configure
  • Show signing upShow portalShow RDP
  • Show foldersShow public/privateShow metadata
  • Remember in our online store, one particular part of the process during purchasing is card payment.
  • The right choice depends on the environment you’re inDatabase administrators go to great lengths in making sure their data is not repeated, this process is called normalization. This ensures data integrity – you don’t want to have to update several tables with the column “name” under it. One drawback to this is performance. With Tables, it is up to the developer to take care of data integrity
  • Show propertiesAdd new properties – remember to put valuesPartition key / Row keys

BizSpark Startup Night Windows Azure March 29, 2011 BizSpark Startup Night Windows Azure March 29, 2011 Presentation Transcript

  • A Lap Around Windows Azure
    Chris Ismael
    Developer Evangelist
    Developer and Platform Evangelism
    Microsoft Singapore
  • Goals and Agenda
    To get you to sign up for the Windows Azure Introductory Offer 
    http://bit.ly/freeazuresg
    Provide you with the “core concepts” knowledge that would be your foundation in understanding Windows Azure
    Agenda
    Why Cloud Computing?
    Why Would I…
    Define my website/service’s architecture
    Use Blob Storage, Tables, Queues
    Use Windows Azure AppFabric
  • Why Cloud Computing started
    How Windows Azure came about?
    Microsoft’s online services challenges
    Spending a lot of time managing the machines
    Inefficient utilization
    Little resource sharing
    No shared platform or standard toolset for everyone
    Reasons for major cloud providers
    Optimization (extra resources to share) ie Amazon Web Services
    Profit – economies of scale
    Strategic – product franchise
    Extension – customer relationships
    Presence – in market
    Platform – hub master of ISV’s offerings
  • Characteristics of Cloud Computing
    Value Proposition
    Elasticity
    No Commitment
    Reduced Cost
    Consumption-based Pricing
    Extra Capacity
    Faster Time to Market
    Self-Service IT
    SLA – 99.9% (over existing)
    Simplify IT
    Convert CapEx to OpEx
    New Capabilities – ie federated security
    Concerns
    Security
    Performance and Availability (ie storage)
    Vendor Lock-in
    Disaster Recovery
    In-house Capability and Process
    Billing Concerns
    Trust
    Alignment
    Best bet: Try it (bit.ly/freeazuresg)
    From David Pallman (davidpallman.blogspot.com)
  • Sample Scenario – Your typical Online Store
    The Service Model
    Signing up for Windows Azure
    Windows Azure Tool Set
    Portal and Service Management API
    Blobs and Tables
    Queues
    AppFabric Access Control Service (ACS)
    Planning / Architecture
    Purchasing (hardware, software licenses, etc)
    Prototyping / Testing
    Deployment / Management
    Adding new storage
    Decoupling components
    Managing identity (credentials)
  • Planning / Architecture
    Service Model to the rescue!
    Windows Azure Roles
    Templates of commonly-used machine configurations
    Web Role – website / front-end
    Worker Role – background jobs
    VM Role – virtual machine image
    Service Definition and Configuration files
    Consider the effort to get this running:
    • Configuration of machines
    • Networking
    • Port configurations
    • Etc.
  • Creating a Windows Azure application in Visual Studio 2010
  • Things to ponder on:
    This looks like Platform-As-A-Service (PAAS)
    Provides the tools and development environment to deploy applications
    Provides APIs to interact with the cloud components
    IAAS, SAAS
    Can I log-in to view these machines?
  • Signing up for Windows Azure
  • Things to ponder on
    Do I have to use Visual Studio to deploy? (show demo first)
    Is there a way to programmatically control and manage my deployments?
    Service Runtime API – let’s you access manipulate, and respond to the ambient environment in which your code runs (managed, native)
    Service Management API – meant to be run “outside” the cloud to manipulate your running services from outside (HTTP REST, free)
  • Sample Scenario – Your typical Online Store
    The Service Model
    Signing up for Windows Azure
    Windows Azure Tool Set
    Portal and Service Management API
    Blobs and Tables
    Queues
    AppFabric Access Control Service (ACS)
    Planning / Architecture
    Purchasing (hardware, software licenses, etc)
    Prototyping / Deployment
    Management
    Adding new storage
    Decoupling components
    Managing identity (credentials)
  • Storage using Blobs
    Blobs
    No need to predict how much storage is needed
    Persistent storage for your instances
    Scalable – consistent performance regardless of amount of data
    Replication of data
    REST HTTP / StorageClient libraries
    Why a new storage model?
    What’s wrong with the filesystem?
    When would I need a blob?
    What skills do I need to use blobs?
  • Blob Storage Concepts
    Blob
    Container
    Account
    IMG001.JPG
    pictures
    MOV1.AVI
    IMG002.JPG
    sally
    movies
  • Blob Demo
  • Things to ponder on..
    Standard REST PUT/GET Interface
    http://<Account>.blob.core.windows.net/<Container>/<BlobName>
    StorageClient Library available
    Metadata can be associated per blob – 8K max
    Watch your wallet
    $0.15 per GB stored per month
    $0.01 per 10,000 storage transactions
    Windows Azure Drive… the C: solution (using VHDs)
  • Scenarios for using Queues
  • Queue Demo
  • Dequeue And Delete Messages
    Producers
    Consumers
    1
    C1
    P2
    4
    1
    2
    3
    1
    3
    2
    C2
    P1
  • Summary Of Windows Azure Queues
    Provide reliable message delivery
    Allows Messages to be retrieved and processed at least once
    No limit on number of messages stored in a Queue
    Message size is <=8KB
  • Tables
    First a little story about traffic signals…
    Versus traditional databases
    Denormalized data
    No schema – just name-value pairs
    No distributed transactions
    Black box – no settings
    Row size limits – 1MB
    Easy analogy = Excel sheet
  • Table Demo
  • Table Partitioning
    • To increase performance
    • Data resilience
    • Cheap
    Fastest to slowest query
    Unique partition key
    Partition key + row key
    Partition key
    No partition key/row
  • So do I need SQL Azure?
    Windows Azure Tables
    Denormalized data
    No schema – just name-value pairs
    No distributed transactions
    Black box – no settings
    Row size limits – 1MB
    SQL Azure
    Invert everything (pretty much) on the left, plus…
    Easier migration – MySQL/SQL Server -> SQL Azure, etc
    Has limits
    10, 20, 30 – 50GB
    What if I need more than that???
  • Sample Scenario – Your typical Online Store
    The Service Model
    Signing up for Windows Azure
    Windows Azure Tool Set
    Portal and Service Management API
    Blobs and Tables
    Queues
    AppFabric Access Control Service (ACS)
    Planning / Architecture
    Purchasing (hardware, software licenses, etc)
    Prototyping / Deployment
    Management
    Adding new storage
    Decoupling components
    Managing identity (credentials)
  • Identity Management using AppFabric ACS
    Recap..
    Scenarios
    You don’t want to manage passwords (how is that possible?)
    You don’t want to drastically change your existing code to handle logic for credentials
    You have an existing Identity Store (Active Directory)
    You want users to authenticate using several existing Identity Stores such as Live ID, Google, etc
    Claims-based identity to the rescue! (share analogy) – portal.appfabriclabs.com
  • Tokens aplenty!
  • Demo ACS
  • Sample Scenario – Your typical Online Store
    The Service Model
    Signing up for Windows Azure
    Windows Azure Tool Set
    Portal and Service Management API
    Blobs and Tables
    Queues
    AppFabric Access Control Service (ACS)
    Planning / Architecture
    Purchasing (hardware, software licenses, etc)
    Prototyping / Deployment
    Management
    Adding new storage
    Decoupling components
    Managing identity (credentials)
    A bunch more to check out: VM Role
    Azure Drive
    AppFabric – Cache
    AppFabric - Service Bus
  • Pizza time 
    Sign up for a free account http://bit.ly/freeazuresg
    Learn more at http://www.azure.com
    Try AppFabric at http://portal.appfabriclabs.com - free
  • © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
    The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
  • Windows Azure Command-line Tools for PHP
    Overview
    Enables PHP developers to easily package and deploy application to Windows Azure
    A simple command-line tool
    Features
    Create new applications or convert existing PHP applications to Windows Azure applications
    Package all project assets:
    PHP Engine, Application source, PHP Extensions
    New Features including support for
    Worker role for batch processing & long running transactions.
    Windows Azure Drive
    Hosted Web Core on Worker Role
    Deploy to Local Development Fabric or the Windows Azure Cloud
    Specify deployment options
    Eg:- Configure # of instances
    Create the Azure deployment package (.cspkg) and Configuration file (.cscfg)
    Project site:
    http://azurephptools.codeplex.com
    Local (Development Fabric) or Cloud
    1
    2
    3
    Windows Azure Command-line Tools for PHP
  • Windows Azure SDK for PHP
    Logical architecture
    Overview
    Enables PHP developers to develop against Windows Azure Storage & Service Management infrastructure using familiar & consistent programming model.
    Features
    Set of PHP classes for Windows Azure Blobs, Tables & Queues (for CRUD operations) & Service Management
    Helper Classes for HTTP transport, AuhN/AuthZ, REST & Error Management
    Manageability, Instrumentation & Logging support
    Open Source Project site:
    Developed by our Partner RealDolmen
    http://phpazure.codeplex.com/
    Distributed through Zend Framework
    http://framework.zend.com
    Simple Cloud API
    http://simplecloudapi.org
    Your PHP application
    REST
    Compute
    Storage
    Manage
    Deployment scenarios
    PHP Runtime
    Any internet connected Server
    PHP Runtime
    REST
    REST
  • Windows Azure Companion
    Applications feed (ATOM)
    Start deploying & controlling:
    Using the Windows Azure Companion and your custom feed deploy PHP runtime, frameworks, applications you want
    Provides a seamless experience installing and configuring PHP platform-elements (PHP runtime, extensions) and community PHP applications on Windows Azure.
    Installation engine running on your Windows Azure service.
    Fully customizable through a feed which describes what components to install.
    Growing Feed Ecosystem
    Integrated Administration, Diagnostics, Monitoring & Logging
    Project site:
    http://code.msdn.microsoft.com/azurecompanion
    http://www.interoperabilitybridges.com/projects/windows-azure-companion
    1
    2
    3
    Fire up the Windows Azure Companion:
    Deploy Windows Azure Companion package to your Windows Azure account
    Deploy to Cloud
    Applications to deploy
    Get Ready:
    Download the Windows Azure Companion package & set your custom feed
  • Storage Account And Blob Containers
    Blob
    Container
    Account
    IMG001.JPG
    pictures
    IMG002.JPG
    sally
    Storage Account
    An account can have many Blob Containers
    Container
    A container is a set of blobs
    Sharing policies are set at the container level
    Public READ or Private
    Associate Metadata with Container
    Metadata is <name, value> pairs
    Up to 8KB per container
    List the blobs in a container
    movies
    MOV1.AVI
  • Blob Namespace
    Blob
    Container
    Account
    IMG001.JPG
    pictures
    IMG002.JPG
    sally
    Blob URL
    http://<Account>.blob.core.windows.net/<Container>/<BlobName>
    Example:
    Account – sally
    Container – music
    BlobName – rock/rush/xanadu.mp3
    URL: http://sally.blob.core.windows.net/music/rock/rush/xanadu.mp3
    movies
    MOV1.AVI
  • Blob Features And Functions
    Store Large Objects (up to 50 GB each)
    Standard REST PUT/GET Interface
    http://<Account>.blob.core.windows.net/<Container>/<BlobName>
    PutBlob
    Inserts a new blob or overwrites the existing blob
    GetBlob
    Get whole blob or by starting offset, length
    DeleteBlob
    Support for Continuation on Upload
    Associate Metadata with Blob
    Metadata is <name, value> pairs
    Set/Get with or separate from blob data bits
    Up to 8KB per blob
  • Windows Azure Tables
    Provides Structured Storage
    Massively Scalable Tables
    Billions of entities (rows) and TBs of data
    Automatically scales to thousands of servers as traffic grows
    Highly Available
    Can always access your data
    Durable
    Data is replicated at least 3 times
    Familiar and Easy to use Programming Interfaces
    ADO.NET Data Services – .NET 3.5 SP1
    .NET classes and LINQ
    REST - with any platform or language
  • Virtual Machine Role
    VM Role provides additional control and flexibility on the Windows Azure environment, and makes it easy to run existing Windows applications on Windows Azure.
    Developers have full control over the OS image
    Ability to upload your own customized WS08R2 Enterprise images
    Operators can reboot, reimage and Remote Desktop
    Continue to benefit from automated service management, including service model enhancements described on subsequent slides