Clik here to view.

PARIS — Fermyon is a platform to host Spin applications and other compatible WebAssembly workloads. Fermyon now adds Kubernetes to the reach of Spin with the release of open source SpinKube and Fermyon Platform for Kubernetes.
Fermyon has benefited from a lot of open source contributions and the company’s own research and development to iron out compatibility issues between WebAssembly modules, and using them to deploy and run serverless applications using Spin, a tool for developing and maintaining serverless WebAssembly applications. Now, it has extended Spin’s reach to cover Kubernetes deployments. This allows users and organizations to deploy through Spin using compatible Wasm workloads on Kubernetes.
@fermyontech ´s @matei_radu w/@ralph_squillace and @technosophos showing a packed room the very lightweight aspects of #webassembly on @kubernetesio v. containers at @KubeCon_ . @thenewstack pic.twitter.com/fylL4Pcyn2
— BC Gain (@bcamerongain) March 21, 2024
During KubeCon + CloudNativeCon Europe, Radu Matei, chief technology officer at Fermyon, explained and demoed how SpinKube can be used to deploy apps on Kubernetes with lightweight WebAssembly modules, compared to larger containers. Fermyon Technologies’ CEO Matt Butcher, Fermyon principal software engineer Michelle Dhanani, and Ralph Squillace, a principal program manager for Microsoft, Azure Core Upstream, joined Matei during his talk. WebAssembly’s future on Kubernetes and proxying options to scale WebAssembly workloads “from zero to thousands and back again in an instant” were also discussed during the talk.
Image may be NSFW.
Clik here to view.
One of the main capabilities is that it offers a facilitated way to simply deploy and distribute Wasm like it was intended to do across numerous heterogeneous environments.
Maybe you could think of this as serverless Kubernetes — now you can run a Web module with Spin and deploy it across a cluster or clusters simultaneously. In other words, the idea is that you might not care that much about the fact that you are using WebAssembly’s low-power yet powerful modules as much as you can deploy to Kubernetes across numerous endpoints simultaneously with a single click.
While we have not tested SpinKube yet, but plan to do so in the near future, it appears to offer several capabilities.
First is how SpinKube was designed to facilitate Kubernetes deployments. Among all the numerous platforms out there purporting to simplify or offer one single-panel-glass Kubernetes platform — thanks largely to WebAssembly — SpinKube can also offer a simplified route to deploying on Kubernetes with much less complexity, Fermyon said.
I would imagine in many cases the operations team will have set up Kubernetes and/or serverless applications on Kubernetes already on Amazon Elastic Kubernetes Service (EKS), Azure, et al. The developer just uses the deployment tool of Spin to deploy their applications across numerous endpoints simultaneously without having to concern themselves as much about how Kubernetes is working under the hood.
Secondly, containers — not described so much in the announcement — could face some overlap with how, with SpinKube, applications can be deployed through WebAssembly. In a way that consumes less power, while bypassing the container’s structure since the Wasm module provides that conduit to deployments. It will likely be done in a serverless way on Kubernetes. It’ll be interesting to see how this plays out once we know more about the mechanisms of SpinKube and Fermyon Platform for Kubernetes.
Running Wasm on Kubernetes is especially interesting in how it offers developers the same convenient deployment process they know from Fermyon Spin, Torsten Volk, an analyst for Enterprise Management Associates (EMA), told The New Stack. Meanwhile “existing Kubernetes operations guys can manage, move and optimize WebAssembly apps alongside standard app containers,” Volk said. “Not having to get into the weeds of Kubernetes deployment can and will save developers a lot of time, while operators can focus on infrastructure management without having to worry about breaking WebAssembly-based apps. It’s a win-win.”
On the server side, what makes WebAssembly a compelling technology is its ability to scale from zero to millions of instances and back again in just seconds, Butcher told The New Stack. “At Fermyon, we’ve been able to achieve tremendous density, running three thousand user applications per node in the Fermyon Cloud cluster,” Butcher said. “Time and again, engineers have asked us how they could use WebAssembly in their Kubernetes clusters and reap some of those same rewards. That’s why we built SpinKube and Fermyon Platform for Kubernetes. Our goal is to drive down the cost of operating a Kubernetes cluster while simultaneously delivering on performance and density.”
For serverless, WebAssembly is an “enabling technology to build a next generation of serverless — something faster and cheaper than AWS Lambda,” Butcher said. “By integrating this seamlessly into Kubernetes, we’ve enabled platform engineers to integrate WebAssembly-powered serverless side-by-side with their container-based services,” Butcher said. “Reap all the benefits of your Kubernetes configuration — from security to observability to development–while gaining the rewards of a next generation of blazing-fast event-based functions.”
Fermyon Platform for Kubernetes
Fermyon Platform for Kubernetes is powered by SpinKube. SpinKube combines the Spin operator, containerd Spin shim and the runtime class manager (formerly KWasm) open source projects with contributions from Microsoft, SUSE and Liquid Reply, as well as Fermyon. By running applications at the Wasm abstraction layer, SpinKube enables application developers to easily deploy serverless WebAssembly applications into Kubernetes, leading to efficient use of node resources with cold start speeds under one millisecond, Fermyon says.
Fermyon Platform for Kubernetes capabilities that Fermyon communicated include:
- Greater than 50x Density: Fermyon Platform for Kubernetes can deliver more than, 500 serverless applications per Kubernetes node, with automated scale-to-zero and sub-millisecond cold-start times (the idea is that increased density can lower costs and add more capacity per node), Fermyon said.
- Improved Developer Experience: Using the WebAssembly Component Model, developers with little to no Kubernetes expertise can easily build and deploy cross-platform applications.
- Simplified Kubernetes Implementations: By deploying Spin WebAssembly applications to Kubernetes, Fermyon enables the standardization of a hosting platform across hosting providers.
- SpinKube was created with the ambition of streamlining the experience of developing, deploying and operating Wasm workloads on Kubernetes, using Spin in tandem with the runwasi and KWasm open source projects, Fermyon said.
- According to SpinKube’s documentation, organizations can use WebAssembly for their workloads so that:
- Artifacts are significantly smaller in size compared to container images.
- Artifacts can be quickly fetched over the network and started much faster (while Fermyon noted that there are “several optimizations” that still need to be implemented to enhance the startup time for workloads).
- Fewer resources are required during idle times.
- Kubernetes primitives (DNS, probes, autoscaling, metrics, and more cloud native and CNCF projects) thanks to Spin Operator can be integrated.
Spin operator watches Spin App Custom Resources and realizes the desired state in the Kubernetes cluster. The foundation of this project was built using the Kubebuilder framework and contains a Spin App Custom Resource Definition (CRD) and controller.
Fermyon runs on Nomad, in order deployment scenarios will first configure and install this software, in tandem with Consul, according to Ferymon documentation. Afterward, the components consisting of Fermyon are deployed in the form of Nomad jobs, including a Bindle server, Traefik as the reverse proxy/load balancer and Hippo, the web UI for managing Spin-based applications.
According to a statement, utilizing Spin WebAssembly with SpinKube on Microsoft’s Azure Kubernetes Service has helped ZEISS Group to achieve faster scalability, and reach higher density without the need to dramatically change its operational posture. “With that, we’ve been able to take a Kubernetes batch process of tens of thousands of orders and cut the compute cost by 60% without trading off performance,” said Kai Walter, distinguished architect, ZEISS Group. “We are excited to see WebAssembly become a first-class workload in Kubernetes. SpinKube and Fermyon Platform for Kubernetes will reshape how we all do high-performance computing in Kubernetes.”
The post Fermyon Says WebAssembly on Kubernetes Is Now Doable appeared first on The New Stack.
Fermyon offers Kubernetes support to its Spin tool with the release of open source SpinKube and Fermyon Platform for Kubernetes.