230 likes | 404 Views
Getting Started with Windows Azure. Name Title Microsoft Corporation. Objectives. 1. Answer “What is Windows Azure?”. 2. See how to get started & build your first app. 3. Understand the key Windows Azure concepts. What is Windows Azure?.
E N D
Getting Started with Windows Azure Name Title Microsoft Corporation
Objectives 1 Answer “What is Windows Azure?” 2 See how to get started & build your first app 3 Understand the key Windows Azure concepts
What is Windows Azure? Comprehensive platform for developing cloud apps Host and execute your code in the cloud Provides application management Includes services for storage, access control, etc. Key Benefits Abstraction & flexibility Designed for scalability & high availability Open & Interoperable Mix and match services Consumption based pricing model
Windows Azure Scenarios Ideal for applications needing: Scalability Availability Fault Tolerance Common Application Scenarios: Web Sites Compute Intensive apps Device Applications Web APIs Social Games
Windows Azure Platform Core Services Database Compute Storage
Hello Windows Azure demo
Packaging & Deployment Service Definition Service Configuration Service Package Your Code Compute
A service is a logical set of roles (up to 5) Defined in the Service Definition at development time Assigned a public URL (i.e. foo.cloudapp.net) at deployment Service, Roles, and Instances Service Role defines the type of Virtual Machine that will be used to run each component of your application Defined in the Service Definition at development time Roles An instance is a dedicated virtual machine instance that is running your code with your configuration Instances are created by the Windows Azure fabric at runtime based on the roles defined in the service definition Instances
Role Types Worker Role Designed for web sites/services accessible using HTTP Provides all features of a worker role and IIS 7 or 7.5 Execute ASP.NET, WCF, PHP, etc. Can include multiple web sites in the same role Optionally implement RoleEntryPoint Web Role General purpose host for executing code or an executable Implement code in a Run method Similar to a Windows Service Host your own web server, encoder, etc. Typically used for background processing
Windows Azure Service Architecture The Internet via TCP or HTTP Tables LB LB LB Storage Queues Worker Service Worker Service Web Role IIS as Host Worker Role Blobs Windows Azure Data Center
Worker Role demo
Compute Instance Size Selectable Size defines CPU Cores, RAM, Local Storage, and Pricing Size configured in the Service Definition prior to packaging Key considerations Don’t just throw big VMs at every problem Scale out architectures have natural parallelism More small instances == more redundancy Some scenarios will benefit from more cores
Service Definition & Configuration Operating System OS Family: Windows Server 2008 SP2 or Server 2008 R2 OS Version: Specific version or automatically updated Config Settings Name/value settings for a role <Setting name="WorkerSleepTime" value="2000" />
Service Definition & Configuration Endpoints Define network endpoints for inbound connectivity into a role <InputEndpointname="HttpIn" protocol="http" port="80" /> Startup Tasks Execute a script or exe to configure a role instance at startup <Task commandLine="InstallPHP.cmd" executionContext="elevated" taskType="simple"/>
PHP on Windows Azure demo
Windows Azure Deployment Each hosted service can have two deployments: Production & Staging Deployments performed through: Windows Azure Platform Portal Visual Studio REST Service Management APIs PowerShell cmdlets/scripts Deployment outside of the portal requires management cert to be associated with the Windows Azure subscription
Windows Azure Data Centers North America Region Europe Region Asia Pacific Region North Central US South Central US Northern Europe Western Europe East Asia South East Asia • 6 datacenters across 3 continents Simply select your data center of choice when deploying an application
Upgrading Your Application VIP Swap Uses Staging and Production environments Allows to quickly swap environments Simply changes which deployment the load balancer uses to service requests In-Place Upgrade Performs a rolling upgrade on live service Entire service or a single role Manual or Automatic across update domains
Building Block Services Distributed, in-memory cache for Windows Azure apps Session state provider for Windows Azure applications .NET client library for caching data Caching Authn support using multiple identity providers Easily integrate Live ID, Facebook, Yahoo, Google, & AD Support for industry standards and existing .NET APIs Access Control Messaging & connectivity for building distributed and loosely-coupled apps in the cloud Enables hybrid apps across both on-premises & the cloud Service Bus
Data Services SQL Server Reporting provided as a service Reports authored using existing tools (BIDS) Reports can include rich Data Visualizations (Maps, Charts, Tablix) and exported to variety of formats Reporting Synchronize data from on-premises SQL Server to/from SQL Azure in the cloud Synchronize data between SQL Azure databases potentially in different data centers Data Sync
Summary Windows Azure is comprehensive platform for cloud apps Windows Azure Compute key concepts Service Definition, Configuration, and Package Roles & Instances Compute Instance Sizes Designed to be open & interoperable Enables a variety of scenarios Several building block & data services