Presentation is loading. Please wait.

Presentation is loading. Please wait.

+ CS 325: CS Hardware and Software Organization and Architecture Cloud Architectures.

Similar presentations


Presentation on theme: "+ CS 325: CS Hardware and Software Organization and Architecture Cloud Architectures."— Presentation transcript:

1 + CS 325: CS Hardware and Software Organization and Architecture Cloud Architectures

2 + “Computation may someday be organized as a public utility” - John McCarthy, 1961

3 + Outline Introduction Software as a Service (SaaS) Platform as a Service (PaaS) Infrastructure as a Service (IaaS) Background Computational Resource Load Balancing

4 + Cloud Computing Architecture What is cloud computing?

5 + Introduction Scalable resource hosting Storage Computational Software APIs Applications Tailored services Software as a Service (SaaS) Platform as a Service (PaaS) Infrastructure as a Service (IaaS) Billed like a utility Monthly, depending on usage

6 + Introduction No formal definition! A set of service oriented architectures, which allow users to access a number of resources in a way that is scalable, elastic, on- demand, and cost-efficient Server Cloud Interface … Client Compute Compute Service Compute Storage Service Other Services

7 + Introduction Server Cloud Interface Compute Compute Service Compute Storage Service Other Services Infrastructure as a service (IaaS) [2-4] Lowest service level in cloud stack. Provides compute, storage, and networking services using hardware virtualization. Platform as a service (PaaS) [2-4] Software as a service (SaaS) [2-4] 2.Edmonds, A., S. Johnston, T. Metsch, and G. Mazzaferro 3.Liu, F., J. Tong, J. Mao, R. Bohn, J. Messina, M. Badger, and D. 4.Canonical Group Ltd.

8 + Introduction Typical General Purpose Private Cloud Architecture (Eucalyptus [5] ) 5.Eucalyptus Systems

9 + Types of Clouds Public Cloud Marketed based on Resources offered Availability Security Price Local Cloud Cloud architectures tailored to an organization’s needs Hybrid Cloud Combination of public and local cloud resources

10 + Common Public Cloud Vendors

11 + Those public vendors are great, but what if an organization wants to build their own local cloud?

12 + Implementation Considerations of a Local Cloud Cloud resource maintenance Security Software Hardware Network Users Computational resource power requirements With scalability comes increased power demands Storage resource power requirements

13 + CS 325: CS Hardware and Software Organization and Architecture Cloud Architecture Background

14 + Background Concept of delivering computing resources through a global network 1960s Computer Clusters 1970s Grid Computing 1990s Cloud: Evolution of Grid and Cluster 2000s

15 + Cloud Layers Clients – Thick client, thin client, mobile client Application Layer – SaaS Platform Layer – PaaS Infrastructure Layer – IaaS Hardware Layer – Physical cloud resources ClientAplicationPlatformInfrastructureHardware

16 + Local Cloud Architecture - Eucalyptus Open source cloud architectures have different names for components. Share basic concepts Five components: Cloud Controller Node Walrus (Image) Storage Node User Persistent Storage Node Cluster Controller Node Compute Node

17 + Cloud Controller Node The entry point into the cloud for Administrators Developers Project managers End users The CLC: Queries other components for information about resources Makes high level scheduling decisions Makes requests to Cluster Controller Nodes As the interface to the cloud architecture, the CLC is responsible for exposing and managing the underlying virtualized resources (Servers, network, and storage) Users can access the CLC command line tools or by using a web interface.

18 + Walrus (Image) Controller Node Used for storing virtual machine images and snapshots of user VM images. When a user requests resources from the cloud architecture, those resources are given (if available) in the form of virtual machines. More on this later.

19 + Storage Controller Node Holds user generated data. The cloud architecture needs a place to hold user data even when the user is not currently active.

20 + Cluster Controller Node Used for communication between CLC and Compute Node Controllers. The CC gathers information about a set of NCs and schedules virtual machine execution on specific NCs. The CC also manages the virtual machine networks. DHCP service for VMs located on NCs IP of NCs also managed by CC All NCs associated with a single CC must be on the same subnet.

21 + Compute Node Controller Used for hosting virtual machines. The NC controls: VM activities Launch/execution Inspection Migration Termination The NC also: Fetches and maintains a local cache of VM images from the Walrus. Queries and controls the host OS and hypervisor in response to queries and control requests from the CC.

22 + Compute Node Controller Maintains the resources that are given to end users CPUs, RAM, Local Disks (HHD, SSD) resources In the form of virtual machines Hosts virtual machines using a hypervisor Xen, KVM, ESXi Grid Nvidia VGX Hybrid approach to hypervisor selection is common. Windows Linux Mac OS X

23 + Notes on Resource Virtualization Cloud architectures generally provide physical resources to end users in the form of virtual machines Virtual machines execute as process instances within an instance manager called a “Hypervisor”. Allows multiple guest operating systems to run on a single host.

24 + Notes on Resource Virtualization Full virtualizationParavirtualizationKernel based virtualization Unmodified guest kernelModified guest kernelUnmodified guest kernel Not aware of hypervisorAware of hypervisorNot aware of hypervisor Open or closed source osNo closed-source os support Open or closed source os Slowest due to device emulation overhead May have better performance due to modified kernel Best performance due to matching guest and host kernel

25 + Common IaaS Architecture

26 + CS 325: CS Hardware and Software Organization and Architecture Computational Resource Load Balancing and Consolidation

27 + Computational Resource Load Management Cloud size increases in two areas: Computational power Storage capacity While growing in size, power management of compute nodes is needed. Load Balancing: Distribute VM requests evenly across compute nodes to ensure high resource availability. Disadvantage: Higher power consumption Load Consolidation: Maximize utilization on as few compute nodes as possible to reduce power consumption. Disadvantage: Higher resource latency

28 + Computational Resource Load Balancing Solution: Power Aware Computational Resource Load Balancing Power down unused compute nodes when they are not needed to reduce wasted power consumption. Trade-off between power consumption and resource availability.

29 + Computational Resource Load Balancing Resource Load Balancing Algorithm: Hosted on the cloud’s Cluster Controller Requests are handled by “powered on” compute nodes All available compute nodes are active

30 + Computational Resource Load Balancing

31 + Computational Resource Load Consolidation Resource Load Consolidation Algorithm: Hosted on the cloud’s Cluster Controller Only the minimum number of compute nodes are active to handle the current job requests When a request asks for resources that are not available, a new compute node will power on. How to handle consolidation state over time? Consolidation algorithm runs based on threshold, performs virtual machine live migrations and powers down unneeded node controllers. Adverse effects of power cycling over time? Complete shutdown/reboot process

32 + Computational Resource Load Balancing

33 + Computational Resource Load Management – Turtle Project A small computer, Turtle, was built (~$100) to test the effect of constant power cycling. Heartbeat – 2 minutes Server powers on Turtle ( cron job – every 2 minutes, wake on LAN ) Turtle boots Ubuntu Server 11.04 and MySQL client Turtle writes to server MySQL DB (timestamp) Turtle stays powered on for approximately 1 minute, then powers off. # of power cycles determined by counting the # of timestamps in the server DB After 6 weeks: 13,000 successful power cycles 1 year avg: 36 cycles/day 2 year avg: 18.2 cycles/day 3 year avg: 11.9 cycles/day 4 year avg: 8.9 cycles/day 5 year avg: 7.2 cycles/day

34 + Computational Resource Load Management – Turtle Project Turtle eventually died after 11 months of continuous power cycling. CPU fan malfunctioned, causing the CPU to overheat. Over 118,000 heartbeats Organizations keep computation Resources 3-5 years Experiment shows power cycling Has no adverse effect


Download ppt "+ CS 325: CS Hardware and Software Organization and Architecture Cloud Architectures."

Similar presentations


Ads by Google