DevOps

Google promises to be good with Knative as it releases Cloud Run serverless containers

Admits open-source API bigger than any one company, but it is not letting go

By Tim Anderson

2 SHARE

Google's Cloud Run service, which lets you run containers on Kubernetes (K8s) using a serverless model, has hit general availability, and El Reg has taken it for quick spin.

Cloud Run is for both Google Cloud Platform and Anthos, which presents various ways to use Cloud Run on Google Kubernetes Engine (GKE) on-premises or in other clouds.

The idea of the service is that developers can think mainly about their code and the container in which it runs. You deploy the container with Cloud Run and it will auto-scale from zero to 1,000 (the default maximum) or more, according to demand.

The auto-scaling is based on three factors: CPU utilisation; concurrency (number of requests per container instance); and the number of requests. By default, each instance will support up to 80 concurrent requests, though if Cloud Run detects that the CPU is maxed out, it will create new instances before the maximum is reached.

Since it is container-based, the configuration of the container in terms of runtimes and dependencies is a developer choice, provided it is based on 64-bit Linux. Containers are stateless so you will need additional services to provide and persist data as needed.

Google calls this model "serverless containers". Serverless platforms like AWS Lambda, Azure Functions or Google Cloud Functions let you deploy code to a fully managed runtime. Although this is cleaner than having to worry about containers, it is also less flexible since you have little influence over the details of the runtime environment. It can also be inefficient. Cloud Functions can only handle one request at a time, which means more instances will be created at busy times. Cloud Run lets you tune this for best efficiency.

A Hello World Cloud Run project

We took Cloud Run for a short, er, run, downloading the GCP Cloud Shell, writing a few lines of JavaScript for Node.js, and letting Cloud Run deploy it to GCP.

Cloud Run is based on the Knative API. This extends K8s to provide the deployment and auto-scaling features used by Cloud Run. That said, if you use the GCP version of Cloud Run, it might not use K8s. "Knative is the API that Cloud Run is based on. On the fully managed version of Cloud Run we don't actually run a K8s cluster," said product manager Donna Malayeri, also a member of the Knative Steering Committee, in a podcast. "But we do have a K8s API server. So the API that you use to deploy your application... is the Knative API."

In other scenarios, such as Cloud Run for Anthos, or your own K8s cluster, Cloud Run does use a K8s cluster.

No one company should aspire to control outcomes

There are some industry politics around Knative, which is open source under the Apache 2.0 licence. Kubernetes is maintained by the Cloud Native Computing Foundation (CNCF), part of the Linux Foundation. It had been expected that Knative along with Istio, a service mesh used by Knative, would in due course be handed over to CNCF. In October, though, Google stated that it would not do so "for the foreseeable future" to the disappointment of many in the community.

Google has now responded with a blog post in the form of an open letter from the steering committee (currently four Google members, and one each from Pivotal, IBM and Red Hat). The letter states that future membership of the Steering Committee and Technical Oversight Committee will be based on both code and non-code contributions to the project. It also says that "no one company should aspire to control outcomes" and takes an aggressive stance towards protecting the "Knative trademark", with the promise of legal help from Google as needed. This would perhaps deter others from forking Knative.

The letter does not address the question of why Google is unwilling to hand the project to a foundation. There is indirect reference to this by Malayeri in the podcast mentioned above, though it is pretty confusing. "The feedback we heard from both our partners on the steering committee as well as the community at large was, Google isn't the only contributor any more. Now Google was 60 per cent of the contributions. Why don't we look at this again, why don't we broaden this space?" said Malayeri, promising "more diversity in Knative". She then said:

Our goal is not to have this be a Google-controlled project. If that were the case it would have been a lot easier to just open source this and throw it over the wall versus what we intended to do, which is to build an open and vibrant community.

Does Google believe that handing over stewardship to a vendor-neutral foundation is "throwing it over the wall"? And that it prevents an "open and vibrant community"?

The fact is that Google does not want to cede control of Knative and must regard this as a commercial advantage, while at the same time wanting to make the right noises about it being a cross-vendor project. It is a tension that is unlikely to go away. ®

Sign up to our NewsletterGet IT in your inbox daily

2 Comments

Related

Everything's coming up Kubernetes: Google Cloud adds support for Windows Server Containers

All your clouds look like K8

The winners and losers of infrastructure clouds revealed: AWS, Microsoft, Google and Alibaba get fatter

Can you smell the democratisation of IT? Neither can the shrinking 'others' section

AWS goes live with Windows containers... but contain yourselves: It's going to be niche

Too many caveats to make this a slick option in most cases

Power of the cloud builders: Who ate one-third of the $38bn data centre pie in Q3? AWS, Microsoft, Google 'n' pals

Old world vendors should club together, form new biz called 'Screwed by Cloud'

Amazon Web Services joins Google in paying lip service to Microsoft's .NET platform

With the hope of running more enterprise applications

Deutsche Bank calls in AWS, Microsoft and Google to tout for cloud biz: Come in to tender, deal value unknown

One of the Big Three will snap up floaty tech pact within 'months'

Is AWS sponsoring Rust? Only a bit – and so is Microsoft Azure

A confusing announcement from the cloud giant

Archive storage comes to Google Cloud: Will it give AWS and Azure the cold shoulder?

Fast retrieval and 'Bucket lock' security, but not the cheapest for cloud storage

Microsoft, you should look away now: Google's cloud second only to AWS in dev survey

Mountain View's white stuff used more than Azure among 7,000 code monkeys

AWS shoves Java 11 support into Lambda serverless toy box

As well as managed nodes for K8s and new FireLens container logging service

Whitepapers

Delivering Instant Experiences: Optimizing the Performance, Cost and Capacity of Data-Driven Applications

How can you accelerate data processing to keep up with accelerating business demands for an instant experience? Get the answer to this question and more in this webinar.

Build A Digital Experience Portfolio

The strategy and technology you need to create tomorrow’s digital experiences

How to Fortify Your Organization’s Last Layer of Security – Your Employees

People impact security outcomes, much more often than any technology, policy or process.

Endpoint Detection and Response

EDR solutions come in a variety of implementations and can vary significantly in scope and efficacy. Choosing the best solution can be challenging.