Just about every serverless computing framework of any consequence make use of containers as the enabling technology on which an event-driven architecture gets built. To help IT organizations get a better handle on when to deploy serverless computing frameworks, the Cloud Native Computing Foundation this week released a Serverless Working Group white paper.
Chris Aniszczyk, COO for the CNCF, says the goal of the CNCF is not to anoint one serverless computing framework over all others, but rather promote the use of all of them in concert with existing application development methodologies.
Serverless computing frameworks employ what is known as a functions-as-a-service (FaaS) architecture. Developers run and manage application code with functions that are triggered by events or HTTP requests. Via an application programming interface, various back-end services are then exposed to replace code developers otherwise would have to write themselves.
The primary economic benefit of a serverless computing framework is that, in theory, no costs are incurred while the back-end service is sitting idle. In contrast, most cloud services today are delivered using virtual machines that often sit idle.
Naturally, the emergence of serverless computing frameworks employing FaaS architectures has major implications for DevOps. Aniszczyk says it’s not so much that FaaS eliminates the need for DevOps as much is it does force DevOps to evolve in a way to focus more on software than on underlying infrastructure. To help facilitate that transition, the CNCF has outlined how a functions pipeline ideally would operate across the life cycle of an application.
Aniszczyk says the primary mission of the CNCF is to promote interoperability between serverless computing frameworks, regardless of whether that serverless framework is exposed as a cloud service or deployed in an on-premises IT environment. Use cases for serverless computing frameworks are still emerging, he says, but any batch-oriented process could benefit from being able to dynamically invoke IT infrastructure resources via an event-driven architecture.
The CNCF doesn’t expect applications themselves to be written in functions. That would require developers to stitch together too many pieces of code. Rather, a function will provide a simple mechanism for invoking a service to reduce the total amount of code that needs to be written.
In terms of serverless computing platforms, Amazon Web Services (AWS) has been able to steal a march on rivals via a proprietary AWS Lambda service. It’s not clear to what degree there will be an effort to standardize functions or the APIs employed to call them. But IT organizations in general are becoming more conscious of the potential liabilities of being locked into a specific cloud service in the age of multicloud computing.
It’s also not clear to what degree application logic will move from one cloud to another. But at the very least, IT organizations want to be able to decide which cloud to invoke based on its merits versus being dependent on a set of proprietary APIs that get baked into their applications. The good news is, the cost of invoking many of those cloud services should substantially decline for all concerned.