While Google’s cloud business enjoyed some natural advantages as containerized applications became popular over the last few years, things are quite different when it comes to serverless computing. The company tried to make up for some of that lost time Tuesday at Google Cloud Next with the introduction new serverless technologies that build on its existing strengths.
Google announced that Cloud Functions, its serverless computing service, is now generally available, finally giving Google a competitive answer to AWS Lambda and Azure Functions. And the company also introduced Knative (kay-native), an open-source serverless computing project designed with support from Pivotal, IBM, Red Hat, and SAP that helps companies that have invested in Kubernetes get up and running with functions.
Serverless computing is a growing cloud software development practice that is geared around events and functions. AWS introduced this concept to modern developers with the launch of Lambda in 2014, which allows you to build an application that responds to certain events — like a click here, or a influx of traffic there — with a lightweight function that triggers an action. This can all be done without having to know anything about the underlying hardware on which this application will run, hence the “serverless” name.
It’s also drawing attention because it allows companies to pay for cloud services on a per-second basis, given that they only need to use computing resources when an event is detected, rather than sitting around with the engine running in anticipation of something happening. Google actually introduced a version of this years ago for web applications, but has trailed the cloud leaders when it comes to making serverless computing more widely available to developers.
Knative drew a lot of attention Tuesday morning as news began to trickle out from the keynote. It’s a preview of how developers will be able to build serverless applications atop Kubernetes, the container-orchestration platform internally developed at Google and released as an open-source project in 2015.
One of the drawbacks of serverless computing is that it exacerbates “lock-in” worries among customers concerned about that sort of thing, because once you build an application around a given serverless service like Lambda it will be quite different to move that application to a different service provider. It’s early (it was released as an “alpha” preview Tuesday) but Knative could be way to let developers build serverless applications that target Kubernetes, which can be run across multiple public clouds and on-premises servers.
Of course, that means you have to use Kubernetes, which despite widespread support from cloud vendors is still a pretty big investment in time and expertise for companies looking to build cutting-edge applications. It makes some sense that Google would use Kubernetes as the common connection between multiple clouds, given its familiarity with the software and its need to encourage people using other clouds to switch, but putting Kubernetes at the heart of its cloud strategy assumes that developers will trade some of the simplicity of other serverless approaches to gain deployment flexibility.
During the morning event, Google also introduced serverless containers in preview mode, which is again based on Kubernetes as the common underlying framework. This technology also trails similar ideas from AWS, with its Fargate service, and Microsoft’s Azure Container Instances.
Last month, Google’s Aparna Sinha walked attendees at our GeekWire Cloud Tech Summit through a preview of how serverless technologies can run on Kubernetes, and a video of her talk follows below.
(Editor’s note: This post was updated to correct the name of Microsoft’s serverless containers product.)