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

Preface

This book will help you understand the core design elements required to build scalable systems. You will learn how to plan resources and technology stacks effectively to achieve high security and fault tolerance. While doing so, you will also explore core architectural principles using real-world examples. This book adopts a hands-on approach with real-world examples and use cases, which will cater to your need to architect cloud applications and migrate your business to cloud efficiently 

Who this book is for

This book is for software architects who are keen on designing resilient, scalable, and highly available applications that are native to the cloud.

What this book covers

Chapter 1, Introducing Cloud Native Architecture, set the tone of the book and be used as a base to define and explain what cloud native architecture is and is not. Various points will be discussed, including the pros, cons, myths, challenges and impacts.

Chapter 2, The Cloud Adoption Journey, explores what it means to adopt the cloud. This will be looked at from various angles, including how to migrate from an on-premises or existing environment to a cloud environment.

Chapter 3, Cloud Native Application Design, dives deep into the development of cloud native architectures, using microservices and serverless computing as a design principle.  

Chapter 4, How to Choose Technology Stacks, explores the common technology that is used to create cloud native architectures, from open source to licensed software. It will explore marketplaces that can be used to consume resources in the cloud. Finally, it will discuss the procurement process and licensing models that are common in the cloud.  

Chapter 5, Scalable and Available, talks about available tools/features and strategies to employ when designing cloud native systems for scale and HA. The chapter will explore how these tools/features work, how they enable cloud native applications and how to deploy them.

Chapter 6, Secure and Reliable, discusses security models, features available in the cloud, pitfalls, and best practices related to security of IT systems. It will also explore how these security features work and how they can help enable cloud users to deploy better secured environments.

 Chapter 7, Optimizing Cost, covers the pricing model for Cloud environments. We will then discuss how to approach costing exercises as well as the differences between the old and cloud models.

Chapter 8, Cloud Native Operations, talks about tools, procedures, and models to ensure environments that are deployed in the cloud stay running. The chapter will outline organizational models, governance strategies, and deployment patterns that support operationally healthy systems.

Chapter 9, Amazon Web Services, focuses on providing a perspective on Amazon WebServices' cloud native application development capabilities, strengths, ecosystem maturity and overall approach.

Chapter 10, Microsoft Azure, focuses on providing a perspective on Microsoft Azure's cloud native application development capabilities, strengths, ecosystem maturity and overall approach.

Chapter 11, Google Cloud Platform, focus on providing a perspective on Google Cloud Platform's cloud native application development capabilities, strengths, ecosystem maturity and overall approach.

Chapter 12, What's Next? Cloud Native Application Architecture Trends, looks at future trends and what to expect from various cloud providers in this space.

To get the most out of this book

  1. A prior experience with software architecture will be helpful to follow this book.
  2. All the examples and instructions are given at the relevant instances.

Download the example code files

You can download the example code files for this book from your account at www.packtpub.com. If you purchased this book elsewhere, you can visit www.packtpub.com/support and register to have the files emailed directly to you.

 

You can download the code files by following these steps:

  1. Log in or register at www.packtpub.com.
  2. Select the SUPPORT tab.
  3. Click on Code Downloads & Errata.
  4. Enter the name of the book in the Search box and follow the onscreen instructions.

Once the file is downloaded, please make sure that you unzip or extract the folder using the latest version of:

  • WinRAR/7-Zip for Windows
  • Zipeg/iZip/UnRarX for Mac
  • 7-Zip/PeaZip for Linux

The code bundle for the book is also hosted on GitHub at https://github.com/PacktPublishing/Cloud-Native-Architectures. We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!

Conventions used

There are a number of text conventions used throughout this book.

CodeInText: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: "For the handler, specify the value as lambda_function.lambda_handler."

A block of code is set as follows:

print('Loading function') def respond(err, res=None): return { 'statusCode': '400' if err else '200', 'body': err if err else res, 'headers': { 'Content-Type': 'application/json', }, } 

When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:

print('Loading function') 
 
def respond(err, res=None): 
    return { 
        'statusCode': '400' if err else '200', 
        'body': err if err else res, 
        'headers': { 
            'Content-Type': 'application/json', 
        }, 
    } 

Bold: Indicates a new term, an important word, or words that you see onscreen. For example, words in menus or dialog boxes appear in the text like this. Here is an example: "Click on the API's name, Serverless Weather Service, to drill down into its configuration."

Note

Warnings or important notes appear like this.

Note

Tips and tricks appear like this.

Get in touch

Feedback from our readers is always welcome.

General feedback: Email [email protected] and mention the book title in the subject of your message. If you have questions about any aspect of this book, please email us at [email protected]. Alternatively, you can also share feedback/comments with the authors by emailing them at  [email protected].

Errata: Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you have found a mistake in this book, we would be grateful if you would report this to us. Please visit www.packtpub.com/submit-errata, selecting your book, clicking on the Errata Submission Form link, and entering the details.

Piracy: If you come across any illegal copies of our works in any form on the Internet, we would be grateful if you would provide us with the location address or website name. Please contact us at [email protected] with a link to the material.

If you are interested in becoming an author: If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, please visit authors.packtpub.com.

Reviews

Please leave a review. Once you have read and used this book, why not leave a review on the site that you purchased it from? Potential readers can then see and use your unbiased opinion to make purchase decisions, we at Packt can understand what you think about our products, and our authors can see your feedback on their book. Thank you!

For more information about Packt, please visit packtpub.com.