Book Image

DevOps for Serverless Applications

By : Shashikant Bangera
Book Image

DevOps for Serverless Applications

By: Shashikant Bangera

Overview of this book

Serverless applications are becoming very popular among developers and are generating a buzz in the tech market. Many organizations struggle with the effective implementation of DevOps with serverless applications. DevOps for Serverless Applications takes you through different DevOps-related scenarios to give you a solid foundation in serverless deployment. You will start by understanding the concepts of serverless architecture and development, and why they are important. Then, you will get to grips with the DevOps ideology and gain an understanding of how it fits into the Serverless Framework. You'll cover deployment framework building and deployment with CI and CD pipelines for serverless applications. You will also explore log management and issue reporting in the serverless environment. In the concluding chapters, you will learn important security tips and best practices for secure pipeline management. By the end of this book, you will be in a position to effectively build a complete CI and CD delivery pipeline with log management for serverless applications.
Table of Contents (17 chapters)
Title Page
Dedication
Packt Upsell
Contributors
Preface
5
Integrating DevOps with IBM OpenWhisk
Index

What is Kubeless?


Kubeless is an open source serverless framework based on Kubernetes. It allows us to deploy and execute a piece of code without worrying about the underlying infrastructure. It uses the resources of Kubernetes to provide autoscaling, routing, and monitoring. Post-deployment functions can be triggered with pub–sub, HTTP, and scheduling.  The pub–sub events are managed through a Kafka cluster, an out-of-the-box component within Kubeless, which consists of a basic Kafka cluster with a broker and a zookeeper. HTTP triggers are available through the Kubernetes services, and schedule functions translate to a cron job. The languages/runtime supported by Kubeless are python2.7, python3.4, python3.6, nodejs6, nodejs8, nodejs_distroless8, ruby2.4, php7.2, go1.10, dotnetcore2.0, java1.8, ballerina0.980.0, and jvm1.8. Kubeless also supports HTTP, NATS, Kafka, cron, and stream triggers. 

Kubeless architecture

Kubeless uses custom resource definition, which means that when you create a...