Design For Failure Is The Path To Success In Cloud

15
Design For Failure Is The Path To Success In Cloud Ashay Chaudhary

description

Design For Failure Is The Path To Success In Cloud. Ashay Chaudhary. Requirements. Journey thru the computing models. Mainframe Desktop Client-Server Internet Cloud Computing. Reliability Availability Serviceability Performance + Security + Agility. Evolution of Requirements. - PowerPoint PPT Presentation

Transcript of Design For Failure Is The Path To Success In Cloud

Page 1: Design For Failure Is The Path To Success In Cloud

Design For Failure Is The Path To Success In CloudAshay Chaudhary

Page 2: Design For Failure Is The Path To Success In Cloud

REQUIREMENTSJourney thru the computing models

Page 3: Design For Failure Is The Path To Success In Cloud

Evolution of Requirements

• Mainframe• Desktop• Client-Server

• Internet

• Cloud Computing

• Reliability• Availability• Serviceability• Performance

+• Security

+• Agility

Page 4: Design For Failure Is The Path To Success In Cloud

AVAILABILITYNon-Cloud Model

Page 5: Design For Failure Is The Path To Success In Cloud

Guiding Principles

• Design for Non-Failure• Deploy with Redundancy• Manage Effectively

Page 6: Design For Failure Is The Path To Success In Cloud

• Design for Non-Failure• Quality

Hardware

• Deploy with Redundancy• Specialty

Hardware• Manage

Effectively• Expert Staff• Processes

Page 7: Design For Failure Is The Path To Success In Cloud

AVAILABILITYCloud Model

Page 8: Design For Failure Is The Path To Success In Cloud

Guiding Principles

• Design for Failure• Design for Redundancy• Monitor Extensively• Track Dependencies

Page 9: Design For Failure Is The Path To Success In Cloud

Design For Failure

• Assume nothing• Expect failures• Anywhere and everywhere• If it is available now, doesn’t mean it is there later

• Failures cascade• Unhandled failures propagate• Poorly handled failures adds complexity• Difficulty increases exponentially with complexity

• Embrace failure, make it a first class citizen

Page 10: Design For Failure Is The Path To Success In Cloud

Handle All Failures

• Unhandled failures is a very bad idea• Poorly handled trivial failure in one part

becomes a critical one somewhere else• Two types of failures: Transient and Resource• Transient failures are difficult, treat them like

Resource failures and fail fast• Delays are transient failures, define response

time guarantees• Failure injection is a lifestyle

Page 11: Design For Failure Is The Path To Success In Cloud

Design For Redundancy

• Eliminate single points of failure• Architect distributed applications• Minimize duration of statefulness

Page 12: Design For Failure Is The Path To Success In Cloud

Monitor Extensively

• Self assess and report health• Complementary external monitoring• Load and latency monitoring• Proactively restart components

Page 13: Design For Failure Is The Path To Success In Cloud

Track Dependencies

• Identify all dependencies• Hardware, 3rd Party Libraries, Other servers, Network• Infrastructure/Platform services, External services• Your own components

• Track their health and availability

Page 14: Design For Failure Is The Path To Success In Cloud

Key Takeaways

• If there’s only one thing you could do• Design for Failure

• It is a paradigm shift• It is a cultural change• It is not easy

• It is the key to success in the cloud

Page 15: Design For Failure Is The Path To Success In Cloud

Ashay ChaudharyCloud Consultant

Corporate EducationPrivate Cloud SolutionsHighly Scalable SaaS ApplicationsSaaS Business Intelligence & Analytics

[email protected]@ashay_c