Cluster Computing Overview CS444I Internet Services Winter 00 © 1999-2000 Armando Fox

Slides:



Advertisements
Similar presentations
Clustering Technology For Scaleability Jim Gray Microsoft Research
Advertisements

Summary of Cloud Computing (CC) from the paper Abovce the Clouds: A Berkeley View of Cloud Computing (Feb. 2009)
Distributed Processing, Client/Server and Clusters
© 2005 Dorian C. Arnold Reliability in Tree-based Overlay Networks Dorian C. Arnold University of Wisconsin Paradyn/Condor Week March 14-18, 2005 Madison,
Dave Bradley Rick Harper Steve Hunter 4/28/2003 CoolRunnings.
Beowulf Supercomputer System Lee, Jung won CS843.
KMemvisor: Flexible System Wide Memory Mirroring in Virtual Environments Bin Wang Zhengwei Qi Haibing Guan Haoliang Dong Wei Sun Shanghai Key Laboratory.
Novell Server Linux vs. windows server 2008 By: Gabe Miller.
NPACI Panel on Clusters David E. Culler Computer Science Division University of California, Berkeley
Using Metacomputing Tools to Facilitate Large Scale Analyses of Biological Databases Vinay D. Shet CMSC 838 Presentation Authors: Allison Waugh, Glenn.
Extensible Scalable Monitoring for Clusters of Computers Eric Anderson U.C. Berkeley Summer 1997 NOW Retreat.
G Robert Grimm New York University Scalable Network Services.
Cluster Computing Overview CS241 Winter 01 © Armando Fox
G Robert Grimm New York University Scalable Network Services.
NPACI: National Partnership for Advanced Computational Infrastructure August 17-21, 1998 NPACI Parallel Computing Institute 1 Cluster Archtectures and.
DISTRIBUTED COMPUTING
11 SERVER CLUSTERING Chapter 6. Chapter 6: SERVER CLUSTERING2 OVERVIEW  List the types of server clusters.  Determine which type of cluster to use for.
RAID-x: A New Distributed Disk Array for I/O-Centric Cluster Computing Kai Hwang, Hai Jin, and Roy Ho.
Frangipani: A Scalable Distributed File System C. A. Thekkath, T. Mann, and E. K. Lee Systems Research Center Digital Equipment Corporation.
Chapter 2 Computer Clusters Lecture 2.1 Overview.
Exploiting Application Semantics: Harvest, Yield CS 444A Fall 99 Software for Critical Systems Armando Fox & David Dill © 1999 Armando Fox.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
CLUSTER COMPUTING Prepared by: Kalpesh Sindha (ITSNS)
Distributed Systems Early Examples. Projects NOW – a Network Of Workstations University of California, Berkely Terminated about 1997 after demonstrating.
PMIT-6102 Advanced Database Systems
Chapter 10 : Designing a SQL Server 2005 Solution for High Availability MCITP Administrator: Microsoft SQL Server 2005 Database Server Infrastructure Design.
Section 11.1 Identify customer requirements Recommend appropriate network topologies Gather data about existing equipment and software Section 11.2 Demonstrate.
Computer System Architectures Computer System Software
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems.
SAIGONTECH COPPERATIVE EDUCATION NETWORKING Spring 2009 Seminar #1 VIRTUALIZATION EVERYWHERE.
1 Lecture 20: Parallel and Distributed Systems n Classification of parallel/distributed architectures n SMPs n Distributed systems n Clusters.
Distributed Shared Memory: A Survey of Issues and Algorithms B,. Nitzberg and V. Lo University of Oregon.
Meeting the Data Protection Demands of a 24x7 Economy Steve Morihiro VP, Programs & Technology Quantum Storage Solutions Group
CLUSTER COMPUTING STIMI K.O. ROLL NO:53 MCA B-5. INTRODUCTION  A computer cluster is a group of tightly coupled computers that work together closely.
1 Moshe Shadmon ScaleDB Scaling MySQL in the Cloud.
Loosely Coupled Parallelism: Clusters. Context We have studied older archictures for loosely coupled parallelism, such as mesh’s, hypercubes etc, which.
Benchmarking MapReduce-Style Parallel Computing Randal E. Bryant Carnegie Mellon University.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Achieving Scalability, Performance and Availability on Linux with Oracle 9iR2-RAC Grant McAlister Senior Database Engineer Amazon.com Paper
Issues Autonomic operation (fault tolerance) Minimize interference to applications Hardware support for new operating systems Resource management (global.
Copyright ©2003 Digitask Consultants Inc., All rights reserved Cluster Concepts Digitask Seminar November 29, 1999 Digitask Consultants, Inc.
PARALLEL COMPUTING overview What is Parallel Computing? Traditionally, software has been written for serial computation: To be run on a single computer.
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
PARALLEL PROCESSOR- TAXONOMY. CH18 Parallel Processing {Multi-processor, Multi-computer} Multiple Processor Organizations Symmetric Multiprocessors Cache.
Copyright © Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE Advanced Operating Systems Lecture notes Dr.
Introduction to the new mainframe © Copyright IBM Corp., All rights reserved. 1 Main Frame Computing Objectives Explain why data resides on mainframe.
Infrastructure for Data Warehouses. Basics Of Data Access Data Store Machine Memory Buffer Memory Cache Data Store Buffer Bus Structure.
CERN - IT Department CH-1211 Genève 23 Switzerland t High Availability Databases based on Oracle 10g RAC on Linux WLCG Tier2 Tutorials, CERN,
6.894: Distributed Operating System Engineering Lecturers: Frans Kaashoek Robert Morris
COMP381 by M. Hamdi 1 Clusters: Networks of WS/PC.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 2.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 1.
GPFS: A Shared-Disk File System for Large Computing Clusters Frank Schmuck & Roger Haskin IBM Almaden Research Center.
Tackling I/O Issues 1 David Race 16 March 2010.
Cluster computing. 1.What is cluster computing? 2.Need of cluster computing. 3.Architecture 4.Applications of cluster computing 5.Advantages of cluster.
Background Computer System Architectures Computer System Software.
Software System Performance CS 560. Performance of computer systems In most computer systems:  The cost of people (development) is much greater than.
10/18/01Linux Reconstruction Farms at Fermilab 1 Steven C. Timm--Fermilab.
SYSTEM MODELS FOR ADVANCED COMPUTING Jhashuva. U 1 Asst. Prof CSE
BIG DATA/ Hadoop Interview Questions.
Lecture 13 Parallel Processing. 2 What is Parallel Computing? Traditionally software has been written for serial computation. Parallel computing is the.
Gorilla: A Fast, Scalable, In-Memory Time Series Database
CLUSTER COMPUTING Presented By, Navaneeth.C.Mouly 1AY05IS037
GlassFish in the Real World
Scaling for the Future Katherine Yelick U.C. Berkeley, EECS
Chapter 17: Database System Architectures
Web Server Administration
Co-designed Virtual Machines for Reliable Computer Systems
Performance And Scalability In Oracle9i And SQL Server 2000
Database System Architectures
Presentation transcript:

Cluster Computing Overview CS444I Internet Services Winter 00 © Armando Fox

© 1999, Armando Fox Today’s Outline n Clustering: the Holy Grail n The Case For NOW n Clustering and Internet Services n Meeting the Cluster Challenges

© 1999, Armando Fox Clustering: Holy Grail n Goal: Take a cluster of commodity workstations and make them look like a supercomputer. n Problems l Application structure l Partial failure management l Interconnect technology l System administration

© 1999, Armando Fox Cluster Prehistory: Tandem NonStop n Early (1974) foray into transparent fault tolerance through redundancy l Mirror everything (CPU, storage, power supplies…), can tolerate any single fault (later: processor duplexing) l “Hot standby” process pair approach l What’s the difference between high availability and fault tolerance? n Noteworthy l “Shared nothing”--why? l Performance and efficiency costs? l Later evolved into Tandem Himalaya, which used clustering for both higher performance and higher availability

© 1999, Armando Fox Pre-NOW Clustering in the 90’s n IBM Parallel Sysplex and DEC OpenVMS l Targeted at conservative (read: mainframe) customers l Shared disks allowed under both (why?) l All devices have cluster-wide names (shared everything?) l 1500 installations of Sysplex, 25,000 of OpenVMS Cluster n Programming the clusters l All System/390 and/or VAX VMS subsystems were rewritten to be cluster-aware l OpenVMS: cluster support exists even in single-node OS! l An advantage of locking into proprietary interfaces n What about fault tolerance?

© 1999, Armando Fox The Case For NOW: MPP’s a Near Miss n uproc perf. improves 50% / yr (4%/month) l 1 year lag:WS = 1.50 MPP node perf. l 2 year lag:WS = 2.25 MPP node perf. n No economy of scale in 100s => +$ n Software incompatibility (OS & apps) => +$$$$ n More efficient utilization of compute resources (statistical multiplexing) n “Scale makes availability affordable” (Pfister) Which of these do commodity clusters actually solve?

© 1999, Armando Fox Philosophy: “Systems of Systems” n Higher Order systems research: aggressively use off- the-shelf hardware and OS software n Advantages: l easier to track technological advances l less development time l easier to transfer technology (reduce lag) n New challenges (“the case against NOW”): l maintaining performance goals l system is changing underneath you l underlying system has other people's bugs l underlying system is poorly documented

© 1999, Armando Fox Clusters: “Enhanced Standard Litany” n Hardware redundancy n Aggregate capacity n Incremental scalability n Absolute scalability n Price/performance sweet spot n Software engineering n Partial failure management n Incremental scalability n System administration n Heterogeneity

© 1999, Armando Fox Clustering and Internet Services n Aggregate capacity l TB of disk storage, THz of compute power (if we can harness in parallel!) n Redundancy l Partial failure behavior: only small fractional degradation from loss of one node l Availability: industry average across “large” sites during 1998 holiday season was 97.2% availability (source: CyberAtlas) l Compare: mission-critical systems have “four nines” (99.99%)

© 1999, Armando Fox Spike Absorption n Internet traffic is self-similar l Bursty at all granularities less than about 24 hours l What’s bad about burstiness? n Spike Absorption l Diurnal variation: peak vs. average demand typically a factor of 3 or more l Starr Report: CNN peaked at 20M hits/hour (compared to usual peak of 12M hits/hour; that’s +66%) n Really the holy grail: capacity on demand l Is this realistic?

© 1999, Armando Fox Diurnal Cycle (UCB dialups, Jan. 1997) n ~750 modems at UC Berkeley n Instrumented early 1997

© 1999, Armando Fox Clustering and Internet Workloads n Internet vs. “traditional” workloads l e.g. Database workloads (TPC benchmarks) l e.g. traditional scientific codes (matrix multiply, simulated annealing and related simulations, etc.) n Some characteristic differences l Read mostly l Quality of service (best-effort vs. guarantees) l Task granularity l “Embarrasingly parallel” l …but are they balanced? (we’ll return to this later)

© 1999, Armando Fox Meeting the Cluster Challenges n Software & programming models n Partial failure and application semantics n System administration

© 1999, Armando Fox Software Challenges n Message-passing & Active Messages n Shared memory: Network RAM l CC-NUMA, Software DSM: Anyone who thinks cache misses can take milliseconds is an idiot. (Paraphrasing Larry McVoy at OSDI 96) n MP vs SM a long-standing religious debate n Arbitrary object migration (“network transparency”) l What are the problems with this? l Hints: RPC, checkpointing, residual state

© 1999, Armando Fox Partial Failure Management n What does partial failure mean for… l a transactional database? l A read-only database striped across cluster nodes? l A compute-intensive shared service? n What are appropriate “partial failure abstractions”? l Incomplete/imprecise results? l Longer latency? n What current programming idioms make partial failure hard? l Hint: remember the original RPC papers?

© 1999, Armando Fox Software Challenges, Again? n Real issue: we have to think differently about programming… l …to harness clusters? l …to get decent failure semantics? l …to really exploit software modularity? n Traditional uniprocessor programming idioms/models don’t seem to scale up to clusters n Question: Is there a “natural to use” cluster model that scales down to uniprocessors? l If so, is it general or application-specific? l What would be the obstacles to adopting such a model?

© 1999, Armando Fox System Administration on a Cluster Thanks to Eric Anderson (1998) for some of this material. n Total cost of ownership (TCO) way high for clusters l Median sysadmin cost per machine per year (1996): ~$700 l Cost of a headless workstation today: ~$1500 n Previous Solutions l Pay someone to watch l Ignore or wait for someone to complain l “Shell Scripts From Hell” (not general  vast repeated work) n Need an extensible and scalable way to automate the gathering, analysis, and presentation of data

© 1999, Armando Fox System Administration, cont’d. Extensible Scalable Monitoring For Clusters of Computers (Anderson & Patterson, UC Berkeley) n Relational tables allow properties & queries of interest to evolve as the cluster evolves n Extensive visualization support allows humans to make sense of masses of data n Multiple levels of caching decouple data collection from aggregation n Data updates can be “pulled” on demand or triggered by push

© 1999, Armando Fox Visualizing Data: Example n Display aggregates of various interesting machine properties on the NOW’s n Note use of aggregation, color

© 1999, Armando Fox Case Study: The Berkeley NOW n History and Pictures of an early research cluster Pictures l NOW-0: four HP-735’s l NOW-1: 32 headless Sparc-10’s and Sparc-20’s l NOW-2: 100 UltraSparc 1’s, Myrinet interconnect l inktomi.berkeley.edu: four Sparc-10’s n Ultra’s, 200 CPU’s total l NOW-3: eight 4-way SMP’s n Myrinet interconnection l In addition to commodity switched Ethernet l Originally Sparc SBus, now available on PCIbus

© 1999, Armando Fox The Adventures of NOW: Applications n AlphaSort: 8.41 GB in one minute, 95 UltraSparcs l runner up: Ordinal Systems nSort on SGI Origin, 5 GB) l pre-1997 record, 1.6 GB on an SGI Challenge n 40-bit DES key crack in 3.5 hours l “NOW+”: headless and some headed machines n inktomi.berkeley.edu (now inktomi.com) l now fastest search engine, largest aggregate capacity n TranSend proxy & Top Gun Wingman Pilot browser l ~15,000 users, 3-10 machines

© 1999, Armando Fox The Adventures of NOW: Tools n GLUnix (coming up, later today) n xFS, a serverless network filesystem l Why not just a big RAID on a single server? n Support for the Myrinet fast interconnect l Active Message (AM-1 and AM-2) over Myrinet l Fast Sockets: one-copy TCP fast path over AM-1 on Myrinet n Moral: cluster tools are hard?

© 1999, Armando Fox Cluster Summary n Clusters have potential advantages…but serious challenges to achieving them in practice l Kind of like Network Computers? n Everyone and their brother is now selling a cluster l Who’s selling a system, and who’s selling a promise? l Can clustering be sold as a “secret sauce”? n Next: non-clustering, and approaches to clustering