Google Cloud’s serverless compute platform Cloud Run has entered a beta phase and aims to prevent the vendor lock-in problem faced by enterprises looking to go serverless.
Revealed at Google Cloud Next 2019 in San Francisco, the Cloud Run environment is stateless, which will tackle the issue that developers face when making the choice between the ease of serverless or the flexibility of containers.
With a serverless environment, developers need not worry about configuring the underlying infrastructure and how much resources they will need to power their applications.
As such, with a stateless environment, enterprises can commit to a vendor for some of their serverless products, let’s say Dell, but not have to worry about being restricted only to the vendor’s software partners.
Cloud Run is fully serverless and automatically scales up or down with your website’s traffic within seconds, meaning that you’ll only pay for the resources that you need.
“What’s beautiful about the system is that you’re paying by the hundred-millisecond for what you use only and it scales up horizontally to many, many thousands of cores in just a few seconds,” said Oren Teich, director product management at Google Cloud.
It’s already and being deployed by some of the world’s biggest firms. Veolia, the waste management giant praises the ease and cost-effectiveness of the new environment.
“Cloud Run removes the barriers of managed platforms by giving us the freedom to run our custom workloads at lower cost on a fast, scalable, and fully managed infrastructure,” said Hervé Dumas, group CTO at Veolia. “Our development team benefits from a great developer experience without limits and without having to worry about anything.”
The Cloud Run environment can be used on its own or integrated with your company’s existing Kubernetes cluster; merging the two will also offer you some specific enhancements to your stack.
Using Cloud Run on Kubernetes grants access to Google’s other cloud products such as Custom Machine Types on its Compute Engine networks, which provides users with the ability to create scalable virtual machines tailored for each process that are configurable for optimal pricing.
Cloud Run on Kubernetes, the industry standard for container management, also allows you to run side-by-side with other networks deployed in the same cluster. Airbus Aerial, the aerospace company’s satellite imagery arm is already using Cloud Run on Kubernetes to process and stream aerial images.
“With Cloud Run on GKE, we are able to run lots of compute operations for processing and streaming cloud-optimized aerial images into web maps without worrying about library dependencies, auto-scaling or latency issues,” said Madhav Desetty, chief software architect at Airbus Aerial.
Cloud Run is also based on Google’s Knative open API which lets users run workloads on Google Cloud Platform, on a Google Kubernetes Engine (GKE) cluster or on a company’s own self-managed Kubernetes cluster. The underlying Knative API makes it easier for businesses to start on Cloud Run and then move to Cloud Run on GKE later on.
There are some operational constraints to Cloud Run which Teich detailed in a press conference. It runs at a maximum of 1Gb memory size instance, you get a single core per instance so it’s horizontal scale and not vertical scale. Each process must also respond to an HTTP 1.1 request in a maximum time of 15 minutes.