KubeCon + CloudNativeCon EU Preview: The State of FaaS

By April 20, 2018 Blog

With KubeCon + CloudNativeCon EU coming up in Copenhagen next month, we’re bringing you previews of some of the great programming we have planned. Michael Hausenblas, a Developer Advocate at Red Hat, is heading up a lightning talk on May 1 about Function as a Service (FaaS, also commonly known as serverless)—a promising compute paradigm suitable for event-driven scenarios. Register now before KubeCon sells out.

Here are five topics he’ll be addressing in his lightning talk starting at 18:15 on May 1:

What is FaaS?

The architectural evolution over the past 15 to 20 years has been from services to microservices, and now, says Hausenblas, “As a kind of natural next step, if you break this down even further, you arrive at functions. Typically, they are totally stateless and they’re event-driven.” The three parts of any function as a service are the trigger, the management, and the integrations.

The landscape is growing.

Though FaaS is less than four years old—AWS Lambda started in 2014—the community and landscape are growing rapidly. There are already at least nine Kubernetes-native serverless projects, and dozens of frameworks, tools, and platforms in the overall serverless cloud native landscape. Apache OpenWhisk has the largest following at this time, but the main takeaway, Hausenblas says, is that you have choices. “There are some that are focused more on usability, which are more developer-friendly: Kubeless, OpenFaaS come to mind. There are others that target the enterprise space. My recommendation here would be to look at the supported languages, integration points, and so on. Pick the one that fits your needs.”

Containers and serverless can coexist.

“Sometimes you hear people arguing, it’s containers on one hand and serverless or Function as a Service on the other hand,” says Hausenblas. “Most, if not all, of the Function-as-a-Service offerings and communities do use containers to package and ship your functions. It’s just that containers are less visible to developers.”

It’s not no-ops.

By the same token, “Someone somewhere will have to take care of that logging, monitoring, optimizing runtime, whatever, troubleshooting our profile,” he says. “If you’re not aware of that, then at some point in time, this will probably bite you in the behind. So, you better have a policy and a strategy around that. The more developers are aware of that, the easier it is for DevOps.”

The future is in orchestration.

Right now, most people are dealing with small numbers of functions. But “imagine breaking up a monolith—an initial 10 microservices could turn into 100, 200, maybe even more functions. Remember a function really has a very, very small scope,” says Hausenblas. “As soon as you start spreading out hundreds of containers over hundreds of nodes, you probably want something to orchestrate.”

Hausenblas says it’s an underdeveloped space: “We are not even in a position yet that we can point out what such an orchestration is supposed to do. Is it things like dependency management between functions? Cascading of functions? How functions communicate?”

Interested in finding out more about FaaS? For a more in-depth talk on the State of FaaS, check out this OpenShift  Commons Briefing on “The State of FaaS” with Michael Hausenblas and Brian Gracely. You can also find Hausenblas in the CNCF Serverless Working Group, which is meeting face-to-face at KubeCon on May 2, 16:25 – 17:00. Finally, be sure to check out other related serverless talks that will be presented at KubeCon in Copenhagen May 2-4.