Cloud Native Infrastructure: Patterns for Scalable Infrastructure and Applications in a Dynamic Environment

"O'Reilly Media, Inc."
Free sample

Cloud native infrastructure is more than servers, network, and storage in the cloud—it is as much about operational hygiene as it is about elasticity and scalability. In this book, you’ll learn practices, patterns, and requirements for creating infrastructure that meets your needs, capable of managing the full life cycle of cloud native applications.

Justin Garrison and Kris Nova reveal hard-earned lessons on architecting infrastructure from companies such as Google, Amazon, and Netflix. They draw inspiration from projects adopted by the Cloud Native Computing Foundation (CNCF), and provide examples of patterns seen in existing tools such as Kubernetes.

With this book, you will:

  • Understand why cloud native infrastructure is necessary to effectively run cloud native applications
  • Use guidelines to decide when—and if—your business should adopt cloud native practices
  • Learn patterns for deploying and managing infrastructure and applications
  • Design tests to prove that your infrastructure works as intended, even in a variety of edge cases
  • Learn how to secure infrastructure with policy as code
Read more
Collapse

About the author

Justin Garrison is an engineer at one of the world's largest media companies. He loves open source almost as much as he loves community. He is not a fan of buzzwords but searches for the patterns and benefits behind technology trends. He frequently shares his findings and tries to disseminate knowledge through practical lessons and unique examples. He is an active member in many communities and constantly questions the status quo. He is relentless in trying to learn new things and giving back to the communities who have taught him so much.

Kris Nova is a Senior Developer Advocate for Heptio with an emphasis in containers, infrastructure, and Kubernetes. She is an ambassador for the Cloud Native Computing Foundation.Prior to Heptio, Kris worked as a developer advocate for Microsoft, as well as an engineer on Kubernetes in Azure. She has a deep technical background in the Go programming language, and has authored many successful tools in Go. Kris is a Kubernetes maintainer, and the creator of kubicorn, a successful Kubernetes infrastructure management tool. She organizes a special interest group in Kubernetes, and is a leader in the community. She understands the grievances with running cloud native infrastructure via a distributed cloud native application. She lives in Seattle, WA, and spends her free time mountaineering.

Read more
Collapse
Loading…

Additional Information

Publisher
"O'Reilly Media, Inc."
Read more
Collapse
Published on
Oct 25, 2017
Read more
Collapse
Pages
160
Read more
Collapse
ISBN
9781491984253
Read more
Collapse
Read more
Collapse
Read more
Collapse
Language
English
Read more
Collapse
Genres
Computers / Software Development & Engineering / General
Computers / System Administration / General
Computers / Systems Architecture / Distributed Systems & Computing
Computers / Systems Architecture / General
Read more
Collapse
Content protection
This content is DRM free.
Read more
Collapse
Read aloud
Available on Android devices
Read more
Collapse
Eligible for Family Library

Reading information

Smartphones and Tablets

Install the Google Play Books app for Android and iPad/iPhone. It syncs automatically with your account and allows you to read online or offline wherever you are.

Laptops and Computers

You can read books purchased on Google Play using your computer's web browser.

eReaders and other devices

To read on e-ink devices like the Sony eReader or Barnes & Noble Nook, you'll need to download a file and transfer it to your device. Please follow the detailed Help center instructions to transfer the files to supported eReaders.
Don't waste your time building an application server. See how to build low-cost, low-maintenance, highly available, serverless single page web applications that scale into the millions of users at the click of a button. Quickly build reliable, well-tested single page apps that stay up and running 24/7 using Amazon Web Services. Avoid messing around with middle-tier infrastructure and get right to the web app your customers want.

You don't need to manage your own servers to build powerful web applications. This book will show you how to create a single page app that runs entirely on web services, scales to millions of users, and costs less per day than a cup of coffee.

Using a web browser, a prepared workspace, and your favorite editor, you'll build a complete single page web application, step by step. Learn the fundamental technologies behind modern single page apps, and use web standards to create lean web applications that can take advantage of the newest technologies. Deploy your application quickly using Amazon S3. Use Amazon Cognito to connect with providers like Google and Facebook to manage user identities. Read and write user data directly from the browser using DynamoDB, and build your own scalable custom microservices with Amazon Lambda.

Whether you've never built a web application before or you're a seasoned web developer who's just looking for an alternative to complex server-side web frameworks, this book describes a simple approach to building serverless web applications that you can easily apply or adapt for your own projects.

What You Need:

To follow the tutorial in this book, you'll need a computer with a web browser. You'll also need a text editor and a git client. Building this web application will require some sort of development web server. You can use your own, or you can also use the one included with the tutorial's prepared workspace. The included web server requires Ruby 2.0, although we also suggest few alternatives.

To get started quickly, you need a basic understanding of HTML, CSS, and JavaScript. If you're new to these topics, you can get up to speed using links we'll provide in the Introduction.
Build scalable, reliable, and cost-effective applications with a serverless architectureAbout This BookDesign a real-world serverless application from scratchLearn about AWS Lambda function and how to use Lambda functions to glue other AWS ServicesUse the Java programming language and well-known design patterns. Although Java is used for the examples in this book, the concept is applicable across all languagesLearn to migrate your JAX-RS application to AWS Lambda and API GatewayWho This Book Is For

This book is for developers and software architects who are interested in designing on the back end. Since the book uses Java to teach concepts, knowledge of Java is required.

What You Will LearnLearn to form microservices from bigger SoftwaresOrchestrate and scale microservicesDesign and set up the data flow between cloud services and custom business logicGet to grips with cloud provider's APIs, limitations, and known issuesMigrate existing Java applications to a serverless architectureAcquire deployment strategiesBuild a highly available and scalable data persistence layerUnravel cost optimization techniquesIn Detail

Over the past years, all kind of companies from start-ups to giant enterprises started their move to public cloud providers in order to save their costs and reduce the operation effort needed to keep their shops open. Now it is even possible to craft a complex software system consisting of many independent micro-functions that will run only when they are needed without needing to maintain individual servers.

The focus of this book is to design serverless architectures, and weigh the advantages and disadvantages of this approach, along with decision factors to consider. You will learn how to design a serverless application, get to know that key points of services that serverless applications are based on, and known issues and solutions.

The book addresses key challenges such as how to slice out the core functionality of the software to be distributed in different cloud services and cloud functions. It covers basic and advanced usage of these services, testing and securing the serverless software, automating deployment, and more.

By the end of the book, you will be equipped with knowledge of new tools and techniques to keep up with this evolution in the IT industry.

Style and approach

The book takes a pragmatic approach, showing you all the examples you need to build efficient serverless applications.

Deploy, orchestrate, and monitor serverless applications using KubernetesKey FeaturesGet hands-on experience with frameworks, such as Kubeless, Apache OpenWhisk, and FunktionMaster the basics of Kubernetes and prepare yourself for challenging technical assessmentsLearn how to launch Kubernetes both locally and in a public cloudBook Description

Kubernetes has established itself as the standard platform for container management, orchestration, and deployment. By learning Kubernetes, you’ll be able to design your own serverless architecture by implementing the function-as-a-service (FaaS) model.

After an accelerated, hands-on overview of the serverless architecture and various Kubernetes concepts, you’ll cover a wide range of real-world development challenges faced by real-world developers, and explore various techniques to overcome them. You’ll learn how to create production-ready Kubernetes clusters and run serverless applications on them. You'll see how Kubernetes platforms and serverless frameworks such as Kubeless, Apache OpenWhisk and OpenFaaS provide the tooling to help you develop serverless applications on Kubernetes. You'll also learn ways to select the appropriate framework for your upcoming project.

By the end of this book, you’ll have the skills and confidence to design your own serverless applications using the power and flexibility of Kubernetes.

What you will learnDeploy a Kubernetes cluster locally with MinikubeGet familiar with AWS Lambda and Google Cloud FunctionsCreate, build, and deploy a webpage generated by the serverless functions in the cloudCreate a Kubernetes cluster running on the virtual kubelet hardware abstractionCreate, test, troubleshoot, and delete an OpenFaaS functionCreate a sample Slackbot with Apache OpenWhisk actionsWho this book is for

This book is for software developers and DevOps engineers who have basic or intermediate knowledge about Kubernetes and want to learn how to create serverless applications that run on Kubernetes. Those who want to design and create serverless applications running on the cloud, or on-premise Kubernetes clusters will also find this book useful.

Exploit design, deployment, and management of large-scale containersKey FeaturesExplore the latest features available in Kubernetes 1.10Ensure that your clusters are always available, scalable, and up to dateMaster the skills of designing and deploying large clusters on various cloud platformsBook Description

Kubernetes is an open source system that is used to automate the deployment, scaling, and management of containerized applications. If you are running more containers or want automated management of your containers, you need Kubernetes at your disposal. To put things into perspective, Mastering Kubernetes walks you through the advanced management of Kubernetes clusters.

To start with, you will learn the fundamentals of both Kubernetes architecture and Kubernetes design in detail. You will discover how to run complex stateful microservices on Kubernetes including advanced features such as horizontal pod autoscaling, rolling updates, resource quotas, and persistent storage backend. Using real-world use cases, you will explore the options for network configuration, and understand how to set up, operate, and troubleshoot various Kubernetes networking plugins. In addition to this, you will get to grips with custom resource development and utilization in automation and maintenance workflows.

To scale up your knowledge of Kubernetes, you will encounter some additional concepts based on the Kubernetes 1.10 release, such as Promethus, Role-based access control, API aggregation, and more. By the end of this book, you’ll know everything you need to graduate from intermediate to advanced level of understanding Kubernetes.

What you will learnArchitect a robust Kubernetes cluster for long-time operationDiscover the advantages of running Kubernetes on GCE, AWS, Azure, and bare metalUnderstand the identity model of Kubernetes, along with the options for cluster federationMonitor and troubleshoot Kubernetes clusters and run a highly available KubernetesCreate and configure custom Kubernetes resources and use third-party resources in your automation workflowsEnjoy the art of running complex stateful applications in your container environmentDeliver applications as standard packagesWho this book is for

Mastering Kubernetes is for you if you are a system administrator or a developer who has an intermediate understanding of Kubernetes and wish to master its advanced features. Basic knowledge of networking would also be helpful. In all, this advanced-level book provides a smooth pathway to mastering Kubernetes.

Transform yourself into a Kubernetes specialist in serverless applications.Key FeaturesGet hands-on experience in installing, configuring, and using services such as Kubeless, Funktion, OpenWhisk, and FissionLearn how to launch Kubernetes both locally and in public cloudsExplore the differences between using services such as AWS Lambda and Azure Functions and running your ownBook Description

Kubernetes has established itself as the standard platform for container management, orchestration, and deployment. It has been adopted by companies such as Google, its original developers, and Microsoft as an integral part of their public cloud platforms, so that you can develop for Kubernetes and not worry about being locked into a single vendor.

This book will initially start by introducing serverless functions. Then you will configure tools such as Minikube to run Kubernetes. Once you are up-and-running, you will install and configure Kubeless, your first step towards running Function as a Service (FaaS) on Kubernetes. Then you will gradually move towards running Fission, a framework used for managing serverless functions on Kubernetes environments. Towards the end of the book, you will also work with Kubernetes functions on public and private clouds.

By the end of this book, we will have mastered using Function as a Service on Kubernetes environments.

What you will learnGet a detailed analysis of serverless/Functions as a ServiceGet hands-on with installing and running tasks in Kubernetes using MinikubeInstall Kubeless locally and launch your first functionLaunch Kubernetes in the cloud and move your applications between your local machine and your cloud clusterDeploy applications on Kubernetes using Apache OpenWhiskExplore topics such as Funktion and Fission installation on the cloud followed by launching applicationsMonitor a serverless function and master security best practices and Kubernetes use casesWho this book is for

If you are a DevOps engineer, cloud architect, or a stakeholder keen to learn about serverless functions in Kubernetes environments, then this book is for you.

©2020 GoogleSite Terms of ServicePrivacyDevelopersArtistsAbout Google|Location: United StatesLanguage: English (United States)
By purchasing this item, you are transacting with Google Payments and agreeing to the Google Payments Terms of Service and Privacy Notice.