1 / 30

Building Multi-tier Web Applications in Virtual Environments

Building Multi-tier Web Applications in Virtual Environments. Outline. Virtualization Cloud Computing Microsoft Azure Platform Multi-tier Architecture Deployment – Azure, Amazon EC2, UAkron CS VMs. Virtualization. Virtualization.

arlais
Download Presentation

Building Multi-tier Web Applications in Virtual Environments

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Building Multi-tier Web Applications in Virtual Environments

  2. Outline • Virtualization • Cloud Computing • Microsoft Azure Platform • Multi-tier Architecture • Deployment – Azure, Amazon EC2, UAkron CS VMs

  3. Virtualization

  4. Virtualization • Multiple virtual servers run on a host hardware (a server, a server farm or a data center). • Share hardware by dividing resources (CPUs, RAM, hard disks, network). • A Virtual Machine (VM) is an isolated software container which runs its own operating systems and applications behaving like a physical computer. • VMs reside on hypervisors which give direct access to the hardware

  5. Hypervisors Hypervisors are virtual machine managers (VMM), they are the OS of the OS. Two types of hypervisors: Type 1: native (bare metal), run directly on host hardware. Type 2: hosted, run on a host OS

  6. Type 2 Hypervisors • Host OS based: a VM runs as an application on the host OS. • Examples: Parallels for Mac, VirtualBox. • Slow, three-layers of OS: host OS, hypervisor, guest OS.

  7. Virtualization: Type 2 Hypervisor Guest OS VM Hypervisor Host Apps Host OS Hardware

  8. Virtualization: Type 1 • Directly runs on the host hardware (bare metal). • Faster, removed one layer of OS (the host OS). • Type 1 hypervisors: • Microsoft Hyper-V • VMware ESX • Citrix’s Xen

  9. Virtualization VM1 OS1 VM2 OS2 … … VM40 OS40 Hypervisor Hardware

  10. Virtualization Advantages • Cost-effective • Less hardware and require less space. • Reduce power consumption. • Reduced server maintenance. • Maximum resource utilization • Flexibility • VMs are independent of each other. • Reconfigured, removed and restored easily. • Highly available.

  11. Cloud Computing

  12. Cloud Computing • Computing technology and infrastructure offered by vendors on demand. • Based on virtualization techniques, hence offers the benefits of virtualization • Services consumed based on pay per use model • No up-front cost • No commitment

  13. Cloud Computing • Services offered as • Software as a Service (SaaS) • Web services, Google Apps • Platform as a Service (PaaS) • Microsoft Azure, Google App Engine • Infrastructure as a Service (IaaS) • Amazon’s Elastic Compute Cloud, Microsoft Azure VM role instance • http://en.wikipedia.org/wiki/File:Cloud_computing.svg

  14. Why Cloud Computing? • Virtualization benefits • Cost-effective, reliable, flexible and portable • No hardware requirements • Vendor worry about software upgrades and hardware failures • Highly available • Application installed in the cloud - data centers • Access via internet browser • Large-capacity storage and high performance computing • Add resources on-demand, scalable

  15. Cloud Vendors • Microsoft Azure Platform • Windows Azure Compute and Storage • SQL Azure • Windows Azure AppFabric • https://windows.azure.com/default.aspx • Amazon • Elastic Compute Cloud • Simple Storage Service • Relational Database Service • Elastic Load Balancing • https://console.aws.amazon.com/ec2/home?region=us-east-1

  16. Cloud Computing http://www.windowsazure.com http://aws.amazon.com/ec2/ http://www.ibm.com/cloud-computing http://www.google.com/apps/intl/en/business/ Salesforce.com www.rackspace.com/Cloud

  17. Microsoft Azure Platform

  18. Microsoft Azure Platform • Provides developers with on-demand compute, storage, networking and content delivery capabilities to host, scale and manage Web applications on the Internet through Microsoft data centers • Hosted in Microsoft data centers • North America, Europe, Asia, available in 40 countries • An operating system for the Web? • Supports .NET, Java, PHP, Ruby • 3 Month Free: http://www.windowsazure.com/en-us/pricing/free-trial/

  19. Microsoft Azure Components

  20. Windows Azure Compute • Windows environment for running applications • Windows Server 2008R2 • Platform as a Service • Web Role • Front end • Pre-configured IIS • Host applications • Worker Role • No IIS • Background processing • Windows services • Host WCF or Web Services

  21. Windows Azure Storage • Handles large data • 10TB • Highly scalable • Replicated and maintains multiple copies • Fault tolerant • Highly available • Secure • Storage Types • Blobs http://<account>.blob.core.windows.net/<container>/<blobname> • Tables http://<account>.table.core.windows.net • Queues http://<account>.queue.core.windows.net/<QueueName>

  22. Fabric Controller • Part of Windows Azure • Applications are designed to run on multiple VMs • Controls and manages virtual machines • Creates new instance by allocating resources • Monitors instances • Switches from one instance to another • Hardware failure • Software crashes • No downtime

  23. Sql Azure • Cloud based database service • Relational database • Reporting capabilities • Data Sync services • Built on Microsoft SQL Server • Similar to SQL Server 2008 • Web interface to manage the database • Supported T-SQL features • Tables, views, joins, constraints, indexes, triggers, • DDL, DML queries • Stored procedures, user defined function • Supports SQL server authentication

  24. Windows Azure AppFabric • Provides middleware platform • Caching • Improves performance • Distributed in-memory application cache • Session state management • Access Control • Identity and access control to applications • Simplifies authentication and authorization • Service Bus • Secure messaging • Communicate between distributed applications

  25. Web App on the cloud • Three-tier Architecture (4->3, WebServer/WebClient combined) • Azure three-tier design • PhotoGallery Application • Deployment on Microsoft Azure

  26. Three-Tier System Architecture

  27. Cloud Application Design

  28. Web Roles • Hosts PhotoGallery Cloud Application • Pre-configured IIS • Use http or https endpoints • Exposed to outside world • Processes http page requests • Can communicate with worker roles • Highly scalable and load balanced automatically • Configure number of instances and VM size

  29. Images and Data Storage • Blob Storage • Stores product images and thumbnails • SQL Azure • Stores product and customer information • Has URL to product images

  30. Summary • Virtualization • VMs on Host Hardware • Type 1: native • Type 2: hosted • Cloud Computing • IaaS • PaaS • SaaS • On-demand • Pay per use

More Related