Book Image

Serverless Architectures with Kubernetes

By : Onur Yılmaz, Sathsara Sarathchandra
Book Image

Serverless Architectures with Kubernetes

By: Onur Yılmaz, Sathsara Sarathchandra

Overview of this book

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.
Table of Contents (11 chapters)
2. Introduction to Serverless in the Cloud

Introduction to OpenFaaS

In the previous chapter, we learned about OpenWhisk, an open source serverless framework, which is part of the Apache Software Foundation. We learned how to create, list, invoke, update, and delete OpenWhisk actions. We also discussed how to automate the action invocation with feeds, triggers, and rules.

In this chapter, we will be studying OpenFaas, another open source framework used to build and deploy serverless functions on top of containers. This was started as a proof-of-concept project by Alex Ellis in October 2016, and the first version of the framework, written in Golang, was committed to GitHub in December 2016.

OpenFaaS was originally designed to work with Docker Swarm, which is the clustering and scheduling tool for Docker containers. Later, the OpenFaaS framework was rearchitected to support the Kubernetes framework, too.

OpenFaaS comes with a built-in UI named OpenFaaS Portal, which can be used to create and invoke the functions from...