Build Serverless Apps on Kubernetes with Knative: Build, deploy, and manage serverless applications on Kubernetes 9789355515797

Learn how to deploy and maintain high-performing, resilient serverless applications using Knative Description As cloud

209 92 5MB

English Pages 364 Year 2023

Report DMCA / Copyright

DOWNLOAD FILE

Build Serverless Apps on Kubernetes with Knative: Build, deploy, and manage serverless applications on Kubernetes
 9789355515797

Table of contents :
1. Serverless and Knative in a Nutshell

Introduction

Structure

Objectives

Introduction to Serverless

Serverless

How serverless works

Key advantages of serverless

Serverless should be considered for

Key limitations/shortcomings of serverless

Scenarios not suited for serverless

Serverless 1.0 - Function-as-a-Service

Serverless 2.0 - Serverless Containers

Introduction to Knative

Knative Serving

Knative Eventing

Knative features

Conclusion

Multiple choice questions

Answers

Key terms

2. Installation and Configuration of Knative – Part I

Introduction

Structure

Objectives

Kubernetes cluster

Explore and understand various methods to get Kubernetes cluster

Install kubectl CLI

Validation of the Kubernetes cluster

Kubernetes package manager

Understanding Helm and its need

Helm installation

Verify Helm installation

Istio

Why Istio for Knative

Istio installation

Verify Istio installation

Knative installation

Explore and understand various approaches to installing Knative

Install Knative

Install Knative Serving with YAML

Install Knative Eventing with YAML

Install Knative CLI

Validate Knative installation

Conclusion

Multiple choice questions

Answers

Key terms

3. Installation and Configuration – Part II

Introduction

Structure

Objective

Broker

Brokers for Knative and its need

Installation options for Kafka broker

Installation and validation of Kafka

GitOps with Argo CD

Understanding GitOps and its need

Installation of Argo CD

Observability

Understanding observability and its significance in Knative

Understanding the Knative observability stack

Loki

Installing Loki

Prometheus

Installing Prometheus

Jaeger

Installing Jaeger

Grafana

Conclusion

Multiple choice questions

Answers

Key terms

4. Knative Functions – An Overview

Introduction

Structure

Objectives

Knative Functions

Installing Knative functions

Creating function

Building function

Local build

Remote build

Conclusion

Multiple choice questions

Answers

Key terms

5. Knative Serving

Introduction

Structure

Objectives

Knative Serving

Benefits of Knative Serving

Case study – Online order processing system

Functional architecture

Deployment architecture

Flow diagram

Service Implementation

Order service

Product service

Customer service

Build and deploy

Order service

Product and customer service

Validate services

Knative Serving – Services runtime behavior

Conclusion

Multiple choice questions

Answers

Key terms

6. Knative Eventing

Introduction

Structure

Objectives

Knative Eventing

Knative Eventing patterns

Source to Sink pattern

Broker and Trigger pattern

Case study – Online order processing system

Functional architecture

Deployment architecture

Order processing system with Source to Sink pattern

Service implementation

Build and deploy services

Event source installation

Create event sources

Validate services

Order processing system with Broker and Triggers Pattern

Service implementation

Build and deploy services

Broker installation

Create event source

Create triggers

Validate services

Conclusion

Multiple choice questions

Answers

Key terms

7. Scaling and Routing

Introduction

Structure

Objectives

Deployment of use case on remote Kubernetes cluster

Autoscaling in Knative

About Knative Pod autoscaler

Autoscaling configurations

Global settings configuration

Applying global settings – Order processing system

Per-Revision settings configuration

Metrics and targets

Traffic management

Revisions

Understanding Revisions with order service

Traffic splitting and switching

Deployment strategies

Blue-green deployment strategy

Apply blue-green deployment strategy

Canary deployment strategy

Apply canary deployment strategy

A/B testing deployment strategy

Apply A/B testing deployment strategy

Conclusion

Multiple choice questions

Answers

Key terms

8. Knative Best Practices

Introduction

Structure

Objectives

Manage Knative Services deployment

Manage Service deployment with GitOps powered by Argo CD

Installation of Argo CD

Access Argo CD web interface

Setup Git repository for deployment through Argo CD

Add Git repository for Argo CD

Deployment of Services with Argo CD

Continuous deployment with Argo CD

Observability for Knative services

Observability tools - Loki, Prometheus, Jaeger, and Grafana

Configure Loki for logs

Access Grafana web interface

Visualize logs with Grafana

Integrate Jaeger for distributed tracing

Set up and configure Prometheus for Metrics Collection

Configure alerts using Grafana

Conclusion

Multiple choice questions

Answers

Key terms

Index

Polecaj historie