Top Banner
Steve Loughran Julio Guijarro HP Laboratories, Bristol, UK November 2008 Farms, Fabrics and Clouds [email protected] m [email protected] m
38

Farms, Fabrics and Clouds

Dec 04, 2014

Download

Technology

Steve Loughran

Trends in server-side, clustered, datacentred and cloud computing, including a look at what classic assumptions are no longer valid in these worlds.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Farms, Fabrics and Clouds

Steve LoughranJulio GuijarroHP Laboratories, Bristol, UK

November 2008

Farms, Fabrics and Clouds

[email protected]@hpl.hp.com

Page 2: Farms, Fabrics and Clouds

Page 2 www.smartfrog.org

Researcher at HP LaboratoriesArea of interest: DeploymentAuthor of Ant in Action

Steve Loughran

Page 3: Farms, Fabrics and Clouds

Page 3Farms, Fabrics and Clouds www.smartfrog.org

Julio Guijarro

Researcher at HP Laboratories

Area of interest: Deployment

In charge of OSS release

http://smartfrog.org/

Page 4: Farms, Fabrics and Clouds

Page 4 www.smartfrog.org

• How to host big applications across distributed resources– Automatically– Repeatably– Dynamically– Correctly– Securely

• How to manage them from installation to removal

• How to make dynamically allocated servers useful

Our research - see smartfrog.org

Page 5: Farms, Fabrics and Clouds

Page 5Farms, Fabrics and Clouds www.smartfrog.org

Who had breakfast this morning?

Question

Page 6: Farms, Fabrics and Clouds

Page 6Farms, Fabrics and Clouds www.smartfrog.org

Who harvested wheat or corn, or killed an animal

for that breakfast?

Question

Page 7: Farms, Fabrics and Clouds

Page 7Farms, Fabrics and Clouds www.smartfrog.org

Farms provide food.

It is somebody else's problem

Page 8: Farms, Fabrics and Clouds

Page 8Farms, Fabrics and Clouds www.smartfrog.org

Who is wearing clothes they wove or knitted themselves?

Question

Page 9: Farms, Fabrics and Clouds

Page 9Farms, Fabrics and Clouds www.smartfrog.org

Provisioning of clothing -fabrics- is outsourced

It is somebody else's problem

Page 10: Farms, Fabrics and Clouds

Page 10Farms, Fabrics and Clouds www.smartfrog.org

Future applications are on the Web

• Web Browser, AJAX clients

• Richer: Flash, XUL, Silverlight

• "… as a Service "

⇒Lots of code running in the server

⇒Unpredictable demand

⇒Data mining/analysis problems

Page 11: Farms, Fabrics and Clouds

Page 11Farms, Fabrics and Clouds www.smartfrog.org

Old world installation: single server

Single web server,Single DBRAID filestore

-SPOF-limitations of scale

firewall/router

Application serverDatabase

Database server

Application server

firewall/router

Page 12: Farms, Fabrics and Clouds

Page 12Farms, Fabrics and Clouds www.smartfrog.org

yesterday: clustering

Multiple web servers,Replicated DBRAID Network filestoreLoad-balancing router

-Cost-Complexity-Limitations of scale

replication protocol

Application servers

firewall/router

DB Master DB Slave

Maintains the illusion of a single server

Page 13: Farms, Fabrics and Clouds

Page 13Farms, Fabrics and Clouds www.smartfrog.org

Now: server farms

500 web servers,Distributed filestoreRented storage & CPU

Scales upNo capital outlayAgile infrastructure

Page 14: Farms, Fabrics and Clouds

Page 14Farms, Fabrics and Clouds www.smartfrog.org

Tomorrow? grid fabric. 50000 servers

Page 15: Farms, Fabrics and Clouds

Page 15Farms, Fabrics and Clouds www.smartfrog.org

Application architectures and deployment problems change radically in this world

Page 16: Farms, Fabrics and Clouds

Application architectures

September 2008

IE

Your friends arehaving more funthan you

Mozilla

Your friendsare havingmore funthan you

Chrome

Your friendsare havingmore funthan you

iPhone

You are havingmore fun thanyourfriends

Scatter/gather?Message Queue?

Tuple Space?

Diskless frontend

MemcachedJSP?PHP?

Cloud Layer

HDFSHBase

MapReduceDLucene

Ops View

92% servers upNetwork OKCost: $200/hour

Management view

David Hasslehof isvery popular today

Affiliate View

David Hasslehofkeywords costmore today

Cloud Owner View

Customer #17 isusing lots of diskspace. NormalHDD failure rate

Developer View

MR job 17 completed.

REST APIs

Page 17: Farms, Fabrics and Clouds

Page 17Farms, Fabrics and Clouds www.smartfrog.org

Application architectures

• ROA/REST• Virtualized• MapReduce• Shards• Tuple-spaces• XMPP

Page 18: Farms, Fabrics and Clouds

Page 18Farms, Fabrics and Clouds www.smartfrog.org

Virtualization

Page 19: Farms, Fabrics and Clouds

Page 19Farms, Fabrics and Clouds www.smartfrog.org

Why?

• Save on hardware (and power, space)• Dynamically move running servers• Demand creation of new images• Testing complex system configurations• Redistributing entire machine image• 'virtual appliance'

Page 20: Farms, Fabrics and Clouds

Page 20Farms, Fabrics and Clouds www.smartfrog.org

Assumptions that are now invalid

• Systems have a long lifespan• It is slow/expensive to create a new system• It is expensive to duplicate one• Systems can/should be managed by hand• Clocks proceed at the same rate• Physical RAM doesn’t get swapped out• Running machines can't be moved/cloned• Virtualization is only for testing.

Page 21: Farms, Fabrics and Clouds

Page 21Farms, Fabrics and Clouds www.smartfrog.org

Server Farms

http://www.linuxjournal.com/

Page 22: Farms, Fabrics and Clouds

Page 22Farms, Fabrics and Clouds www.smartfrog.org

Assumptions that are now invalid

• System failure is an unusual event• 100% availability can be achieved• Data is always near the server• You need physical access to the servers• Databases are the best form of storage• You need millions of $/£/€ to play

Page 23: Farms, Fabrics and Clouds

Page 23Farms, Fabrics and Clouds www.smartfrog.org

Who has the servers?

• Yahoo!, Google, MSN, Amazon, eBay: services• MMORPG Game Vendors:

World of Warcraft, Second Life• EU Grid: Scientists• HP, IBM, Sun: rent to companies (some resold)

-focus on CPU performance for enterprise• Amazon: rent to anyone with an Amazon account

-focus on startups

Page 24: Farms, Fabrics and Clouds

Page 24Farms, Fabrics and Clouds www.smartfrog.org

Amazon EC2

• Pay as you go Virtual Machine Hosting• No persistent storage other than S3 filestore -

uses HTTP GET/PUT/DELETE operations• $0.10 per CPU/hour• Resold OS images for more

(RedHat, Windows)• Rent static IP addresses for failover/balancing• New: RAID-like storage

Page 25: Farms, Fabrics and Clouds

Page 25Farms, Fabrics and Clouds www.smartfrog.org

Host

Amazon EC2

S3 Storage

AMI

(Xen VM)

AMI

(Xen VM)

/mnt

Host

AMI

(Xen VM)

AMI

(Xen VM)

Public Internet

/mnt /mnt /mnt

Fast (free) network

free access; slow initial read time pay per GET; per megabyte

$

$$$$

Page 26: Farms, Fabrics and Clouds

Page 26Farms, Fabrics and Clouds www.smartfrog.org

Demo

Page 27: Farms, Fabrics and Clouds

Page 27Farms, Fabrics and Clouds www.smartfrog.org

EC2 Limitations

• Can't talk to peers using public IP addresses• Persistent file system is a premium extra• Most addresses are dynamic• No managed redundancy/restart• No multicast IP• No movement of VMs off high-traffic racks

Page 28: Farms, Fabrics and Clouds

Page 28Farms, Fabrics and Clouds www.smartfrog.org

Amazon S3

• Multiple geo-located data storage• No limits on size• Cost of write is high (guarantee of written remotely)• Read is cheap; may be out of date• Cost: Low

S3 is a global file system that any project can afford

Page 29: Farms, Fabrics and Clouds

Page 29Farms, Fabrics and Clouds www.smartfrog.org

Amazon S3 Charges

Storage $0.15/GB/month

Upload $0.10 per GB - all data transfer in

Download$0.18 per GB - first 10 TB / month data transfer out$0.16 per GB - next 40 TB / month data transfer out$0.13 per GB - data transfer out / month over 50 TB

Requests$0.01 per 1,000 PUT or LIST$0.01 per 10,000 GET or HEAD $0 DELETE

•S3 sets the limit on costs for reliable data storage over the network

•For Amazon, indexing and writes are the big costs…small files are the enemy

Page 30: Farms, Fabrics and Clouds

Page 30Farms, Fabrics and Clouds www.smartfrog.org

MapReduce

Commodity data processing for commodity data

Page 31: Farms, Fabrics and Clouds

Page 31Farms, Fabrics and Clouds www.smartfrog.org

Assumptions that are now invalid

• Terabyte datasets are hard to work with• Code runs on a single machine• Sequential code is better than parallel code• RAID hardware is the best way to store data• Databases are better than filesystems• Low-value data isn't worth collecting

even if you don't have a use for it now

Page 32: Farms, Fabrics and Clouds

Page 32Farms, Fabrics and Clouds www.smartfrog.org

Shards

Page 33: Farms, Fabrics and Clouds

Page 33Farms, Fabrics and Clouds www.smartfrog.org

Assumptions that are now invalid

• A single farm needs to scale to infinity• You need to provide 100% availability to 100%

of users• You have to roll out simultaneous updates to

the application, changes to the DB schema, globally

Page 34: Farms, Fabrics and Clouds

Page 34Farms, Fabrics and Clouds www.smartfrog.org

XMPP

post extends GoogleChatClientWorkflow {

to "[email protected]";

login "smartfrog.two";

password xmpp.password;

message "hello, world";

}

Page 35: Farms, Fabrics and Clouds

Page 35Farms, Fabrics and Clouds www.smartfrog.org

Assumptions that are now invalid

• You can't send message to a laptop that moves around behind a firewall.

• You need to build your own monitoring infrastructure.

• Blocking RPC is a good metaphor for long-haul communications.

• You can't send messages to your server farm from your phone

• IT doesn't have their eyes on your protocol

Page 36: Farms, Fabrics and Clouds

Page 36Farms, Fabrics and Clouds www.smartfrog.org

Problems for us farmers

• Power management• Predictive disk failure management• Load balancing for availability, power • File management• Billing• Routing• Security/Isolation• How will this change server hardware?• Managing/Configuring Machine Images• Diagnostics when things go wrong

Page 37: Farms, Fabrics and Clouds

Page 37Farms, Fabrics and Clouds www.smartfrog.org

“Agile” Routers

• Handle hundreds to thousands of (concurrent) change requests/second

• Integrate with billing• Managed throttling to specific hosts• Propagation of state to peer rooters• 'agile' DHCP -short leases; mobile• Monitored bandwidth may trigger VM migration

Page 38: Farms, Fabrics and Clouds

Page 38Farms, Fabrics and Clouds www.smartfrog.org

“Agile” Operating Systems

• Design for VM-only use• Limited functionality• Limited lifespan• Fully configurable before initial boot• Adapt to changes in surrounding environment• Viable licensing model