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
2. Introduction to Serverless in the Cloud

Kubernetes Client Tool: kubectl

The Kubernetes control plane runs a REST API server for accessing Kubernetes resources and undertaking operational activities. Kubernetes comes with an open source official command-line tool named kubectl in order to consume the REST API. It is installed on the local system and configured to connect remote clusters securely and reliably. kubectl is the primary tool for the complete life cycle of applications running in Kubernetes. For instance, say you deploy a WordPress blog in your cluster. First, you start creating your database passwords as secrets using kubectl. Following that, you deploy your blog application and check its status. In addition to that, you may trace the logs of your applications or even SSH into the containers for further analysis. Therefore, it is a powerful CLI tool that can handle both basic create, read, update, and delete (CRUD) actions and troubleshooting.

In addition to application management, kubectl is also a powerful...