Book Image

Cloud Native Architectures

By : Tom Laszewski, Kamal Arora, Erik Farr, Piyum Zonooz
Book Image

Cloud Native Architectures

By: Tom Laszewski, Kamal Arora, Erik Farr, Piyum Zonooz

Overview of this book

Cloud computing has proven to be the most revolutionary IT development since virtualization. Cloud native architectures give you the benefit of more flexibility over legacy systems. To harness this, businesses need to refresh their development models and architectures when they find they don’t port to the cloud. Cloud Native Architectures demonstrates three essential components of deploying modern cloud native architectures: organizational transformation, deployment modernization, and cloud native architecture patterns. This book starts with a quick introduction to cloud native architectures that are used as a base to define and explain what cloud native architecture is and is not. You will learn what a cloud adoption framework looks like and develop cloud native architectures using microservices and serverless computing as design principles. You’ll then explore the major pillars of cloud native design including scalability, cost optimization, security, and ways to achieve operational excellence. In the concluding chapters, you will also learn about various public cloud architectures ranging from AWS and Azure to the Google Cloud Platform. By the end of this book, you will have learned the techniques to adopt cloud native architectures that meet your business requirements. You will also understand the future trends and expectations of cloud providers.
Table of Contents (19 chapters)
Title Page
Packt Upsell
Foreword
Contributors
Preface
Index

Cloud native development teams


In order to take full advantage of cloud technology as an enabler for the business, teams must be reorganized into autonomous organizations, which we refer to as CND teams. The CND tenets are as follows:

  • Complete ownership of their service
  • Streamline decision-making within their group (build consensus quickly)
  • Rotate operations responsibility (everyone does pager duty)
  • Publish and maintain APIs forever
  • APIs are the only way to interface with other services
  • The right tools are the ones that get the job done (the team determines which language, framework, platform, engine, and so on is right for their service)
  • Automation is more important than new features (automation enables the release of more features more quickly in the long run)

In order to maximize the speed at which teams develop, they need to have complete ownership of the design and build decision-making process. They cannot rely on resources or senior management to make decisions. This would introduce a huge...