Kubernetes for Serverless Applications
Implement FaaS by effectively deploying, managing, monitoring, and orchestrating serverless applications using Kubernetes
Russ McKendrick
BIRMINGHAM - MUMBAI
Kubernetes for Serverless Applications
Copyright 2018 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to have been caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
Commissioning Editor: Gebin George
Acquisition Editor: Prateek Bharadwaj
Content Development Editor: Nithin Varghese
Technical Editor: Khushbu Sutar
Copy Editor: Safis Editing
Project Coordinator: Virginia Dias
Proofreader: Safis Editing
Indexer: Francy Puthiry
Graphics: Tania Dutta
Production Coordinator: Aparna Bhagat
First published: January 2018
Production reference: 1170118
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham
B3 2PB, UK.
ISBN 978-1-78862-037-6
www.packtpub.com
mapt.io
Mapt is an online digital library that gives you full access to over 5,000 books and videos, as well as industry leading tools to help you plan your personal development and advance your career. For more information, please visit our website.
Why subscribe?
Spend less time learning and more time coding with practical eBooks and Videos from over 4,000 industry professionals
Improve your learning with Skill Plans built especially for you
Get a free eBook or video every month
Mapt is fully searchable
Copy and paste, print, and bookmark content
PacktPub.com
Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at service@packtpub.com for more details.
At www.PacktPub.com , you can also read a collection of free technical articles, sign up for a range of free newsletters, and receive exclusive discounts and offers on Packt books and eBooks.
Contributors
About the author
Russ McKendrick is an experienced solution architect who has been working in IT and related industries for over 25 years. During his career, he has had varied responsibilities, from looking after an entire IT infrastructure to providing first-line, second-line, and senior support in both client-facing and internal teams for large organizations.
Russ supports open source systems and tools on public and private clouds at Node4 Limited, where he heads up the Open Source Solutions team.
I would like to thank my family and friends for their support and for being so understanding about all the time I have spent in front of the computer, writing. I would also like to thank my colleagues at Node4 and our customers for their kind words of support and encouragement throughout the writing process.
About the reviewer
Paul Adamson has worked as an Ops engineer, a developer, a DevOps Engineer, and all variations and mixes of all of these. When not reviewing this book, Paul keeps busy helping companies embrace the AWS infrastructure. His language of choice is PHP for all the good reasons and even some of the bad.
Jeeva S. Chelladhurai has been working as a DevOps specialist at the IBM GTS Labs for the last 10 years. He is the coauthor of Learning Docker by Packt Publishing. He has more than 20 years of IT industry experience and has technically managed and mentored diverse teams across the globe in envisaging and building pioneering telecommunication products. He is also a strong proponent of the agile methodologies, DevOps, and IT automation. He holds a master's degree in computer science from Manonmaniam Sundaranar University and a graduation certificate in project management from Boston University.
Packt is searching for authors like you
If you're interested in becoming an author for Packt, please visit authors.packtpub.com and apply today. We have worked with thousands of developers and tech professionals, just like you, to help them share their insight with the global tech community. You can make a general application, apply for a specific hot topic that we are recruiting an author for, or submit your own idea.
Preface
Kubernetes has been one of the standout technologies of the last few years; it has been adopted as a container clustering and orchestration platform by all the major public cloud providers, and it has quickly become the standard across the industry.
Add to this that Kubernetes is open source, and you have the perfect base for hosting your own Platform as a Service or PaaS across multiple public and private providers; you can even run it on a laptop and, due to its design, you will get a consistent experience across all of your platforms.
Its design also makes it the perfect platform for running serverless functions. In this book, we will look at several platforms that can be both deployed on and integrated with Kubernetes, meaning that not only will we have PaaS but also a robust Function as a Service platform running in your Kubernetes environment.
Who this book is for
This book is primarily for operations engineers, cloud architects, and developers who want to host their serverless functions on a Kubernetes cluster.
What this book covers
, The Serverless Landscape, explains what is meant by serverless. Also, we will get some practical experience of running serverless functions on public clouds using AWS Lambda and Azure Functions.
, An Introduction to Kubernetes, discusses what Kubernetes is, what problems it solves, and also takes a look at its backstory, from internal engineering tool at Google to an open source powerhouse.
, Installing Kubernetes Locally, explains how to get hands-on experience with Kubernetes. We will install a local single node Kubernetes cluster using Minikube and interact with it using the command-line client.