Cloud Native Infrastructure
by Justin Garrison and Kris Nova
Copyright 2018 Justin Garrison and Kris Nova. All rights reserved.
Printed in the United States of America.
Published by OReilly Media, Inc. , 1005 Gravenstein Highway North, Sebastopol, CA 95472.
OReilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://oreilly.com/safari). For more information, contact our corporate/institutional sales department: 800-998-9938 or corporate@oreilly.com .
- Editors: Virginia Wilson and Nikki McDonald
- Production Editor: Kristen Brown
- Copyeditor: Amanda Kersey
- Proofreader: Rachel Monaghan
- Indexer: Angela Howard
- Interior Designer: David Futato
- Cover Designer: Karen Montgomery
- Illustrator: Rebecca Demarest
- Tech Reviewers: Peter Miron, Andrew Schafer, and Justice London
- November 2017: First Edition
Revision History for the First Edition
- 2017-10-25: First Release
See http://oreilly.com/catalog/errata.csp?isbn=9781491984307 for release details.
The OReilly logo is a registered trademark of OReilly Media, Inc. Cloud Native Infrastructure, the cover image, and related trade dress are trademarks of OReilly Media, Inc.
While the publisher and the authors have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the authors disclaim all responsibility for errors or omissions, including without limitation responsibility for damages resulting from the use of or reliance on this work. Use of the information and instructions contained in this work is at your own risk. If any code samples or other technology this work contains or describes is subject to open source licenses or the intellectual property rights of others, it is your responsibility to ensure that your use thereof complies with such licenses and/or rights.
978-1-491-98430-7
[LSI]
Introduction
Technology infrastructure is at a fascinating point in its history. Due to requirements for operating at tremendous scale, it has gone through rapid disruptive change. The pace of innovation in infrastructure has been unrivaled except for the early days of computing and the internet.These innovations make infrastructure faster, more reliable, and more valuable.
The people and companies who have pushed the boundaries of infrastructure to its limits have found ways of automating and abstracting it to extract more business value. By offering a flexible, consumable resource, they have turned what was once an expensive cost center into a required business utility.
However, it is rare for utilities to provide financial value to the business, which means infrastructure is often ignored and seen as an unwanted cost.This leaves it with little time and money to invest in innovations or improvements.
How can such an essential and fascinating part of the business stack be so easily ignored?The business obviously pays attention when infrastructure breaks, so why is it so hard to improve?
Infrastructure has reached a maturity level that has made it boring to consumers. However, its potential and new challenges have ignited a passion in implementors and engineers.
Scaling infrastructure and enabling new ways of doing business have aligned engineers from all different industries to find solutions.The power of open source software (OSS) and communities driven to help each other have caused an explosion of new concepts and innovations.
If managed correctly, challenges with infrastructure and applications today will not be the same tomorrow.This allows infrastructure builders and maintainers to make progress and take on new, meaningful work.
Some companies have surmounted challenges such as scalability, reliability, and flexibility.They have created projects that encapsulate patterns others can follow. The patterns are sometimes easily discovered by the implementor, but in other cases they are less obvious.
In this book we will share lessons from companies at the forefront of cloud native technologies to allow you to conquer the problem of reliably running scalable applications.Modern business moves very fast. The patterns in this book will enable your infrastructure to keep up with the speed and agility demands of your business.More importantly, we will empower you to make your own decisions about when you need to employ these patterns.
Many of these patterns have been exemplified in open source projects. Some of those projects are maintained by the Cloud Native Computing Foundation (CNCF). The projects and foundation are not the sole embodiment of the patterns, but it would be remiss of you to ignore them. Look to them as examples, but do your own due diligence to vet every solution you employ.
We will show you the benefits of cloud native infrastructure and the fundamental patterns that make scalable systems and applications.Well show you how to test your infrastructure and how to create flexible infrastructure that can adapt to your needs.Youll learn what is important and how to know whats coming.
May this book inspire you to keep moving forward to more exciting opportunities, and to share freely what you have learned with your communities.
Who Should Read This Book
If youre an engineer developing infrastructure or infrastructure management tools, this book is for you.It will help you understand the patterns, processes, and practices to create infrastructure intended to be run in a cloud environment.By learning how things should be, you can better understand the applications role and when you should build infrastructure or consume cloud services.
Application engineers can also discover which services should be a part of their applications and which should be provided from the infrastructure.Through this book they will also discover the responsibilities they share with the engineers writing applications to manage the infrastructure.
Systems administrators who are looking to level up their skills and take a more prominent role in designing infrastructure and maintaining infrastructure in a cloud native way can also learn from this book.
Do you run all of your infrastructure in a public cloud?This book will help you know when to consume cloud services and when to build your own abstractions or services.
Run a data center or on-premises cloud?We will outline what modern applications expect from infrastructure and will help you understand the necessary services to utilize your current investments.
This book is not a how-to and, outside of giving implementation examples, were not prescribing a specific product.It is probably too technical for managers, directors, and executives but could be helpful, depending on the involvement and technical expertise of the person in that role.
Most of all, please read this book if you want to learn how infrastructure impacts business, and how you can create infrastructure proven to work for businesses operating at a global internet scale.Even if you dont have applications that require scaling to that size, you will still be better able to provide value if your infrastructure is built with the patterns described here, with flexibility and operability in mind.
Why We Wrote This Book
We want to help you by focusing on patterns and practices rather than specific products and vendors.Too many solutions exist without an understanding of what problems they address.