Skip to content
This repository was archived by the owner on May 15, 2026. It is now read-only.

KWasm/kwasm-operator

Repository files navigation

kwasm-operator

🏁 KWasm has been retired. This was a fun exploration of WebAssembly on Kubernetes. Thanks to everyone who starred, used, or contributed!

The kwasm.sh domain will continue to resolve until January 20, 2027.

For current Wasm-on-Kubernetes work, check out spinframework/runtime-class-manager.

The repo is archived and will not receive updates.

This Kubernetes Operators uses KWasm/kwasm-node-installer to add WebAssembly support to your Kubernetes Nodes. It works with local and managed cloud K8s distributions based on Ubuntu/Debian with Containerd, including MiniKube, MicroK8s, AKS, GKE, and EKS.

Warning Only for development or evaluation purpose. Your nodes may get damaged!

Note If you are searching for a production ready WebAssembly integration for your Kubernetes cluster, reach out to Liquid Reply

Example

The KWasm Operator allows for fine-grained control over node provisioning instead of using the node installer with a DaemonSet. This example shows how to create a KinD cluster with three nodes and install the KWasm Operator. The example provisions a single node and schedules a Wasm pod on that specific node.

# Create cluster
kind create cluster --config examples/kind/cluster.yaml
# Add helm repo
helm repo add kwasm http://kwasm.sh/kwasm-operator/
# Install operator
helm install -n kwasm --create-namespace kwasm-operator kwasm/kwasm-operator
# Annotate single node
kubectl annotate node kind-worker2 kwasm.sh/kwasm-node=true
# Run example
kubectl apply -f examples/kind/runtimeclass.yaml
kubectl apply -f examples/kind/pod.yaml

Troubleshoot

Version v3.8.7 does not exist or is not available for darwin/arm64.

export KUSTOMIZE_VERSION=v4.5.7
make install run

About

This Kubernetes Operators installs WebAssembly support on your Kubernetes Nodes

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors