search menu icon-carat-right cmu-wordmark

Serverless Integrations on Kubernetes/OpenShift

May 2019 Presentation
Kurt Stam (Red Hat)

This presentation explains how to build cloud-native serverless applications on Kubernetes in general, using Camel K as a reference implementation.

Publisher:

Software Engineering Institute

This presentation was created for a conference series or symposium and does not necessarily reflect the positions and views of the Software Engineering Institute.

Abstract

Apache Camel K is lightweight cloud integration platform based on Apache Camel. The "K" is a reference to Kubernetes but also to Knative. Knative provides tools to support development and CI/CD toolchains, but most interestingly it provides the capability for serverless (scale-to-zero) workloads. This presentation provides a blueprint on how to build cloud-native serverless applications on Kubernetes in general, using Camel K as a reference implementation.

The easiest way to create a Camel K runtime integration application is to use the Syndesis/Fuse Online design time. Syndesis is a cloud-native open source IPaaS that lets users build integrations using a GUI. Syndesis includes AtlasMap for data transformation between components. Under the hood, the deploy step creates a container with a Camel K-based integration application and deploys it to OpenShift/Kubernetes. I will discuss the Syndesis architecture and how it interacts with the Camel K integration runtime.

The presentation includes a demo of Camel K runtime to update a simple integration and a demo of Syndesis/Fuse Online design time.

Key takeaways:

  • You will learn how to define and use Kubernetes Custom Resource Definitions (CRD).
  • You will learn about Custom Controllers called Operators, a method of packaging, deploying, and managing a Kubernetes application.
  • Brief introduction to Istio Open Source Service Mesh leveraged by Knative
  • Introduction to Knative: Provides support for Build, Serving, and Events; lets developers focus on writing code; and allows applications to be scaled to zero.
  • Introduction to the Camel K runtime, Syndesis/Fuse Online IPaaS
  • Discussion about initial response time when scaled-to-zero

Prerequisites: Some basic knowledge of Kubernetes and Containers