KasmCloud
Managing and Running Actors, Providers, and Links in Kubernetes Warning¶
This is a contributor-led experimental project and is not recommended to run in production at this time.
With each tag, it works fine, but there may be incompatible changes between tags.
Design¶
Combining WasmCloud with Kubernetes
Quick Start¶
-
Deploy Nats
-
Deploy KasmCloud CRDs and Webhook Server
-
Deploy KasmCloud Host
kubectl apply -f ./deploy/kasmcloud_host_rbac.yaml # Deploy Default KasmCloud Host kubectl apply -f ./deploy/kasmcloud_host_default.yaml # [Optional] You can also deploy KasmCloud Host in each Kubernetes node. kubectl apply -f ./deploy/kasmcloud_host_daemonset.yaml # [Optional] You can also deploy as many temporary hosts as you want # and change the number of temporary hosts by scaling the Deployment kubectl apply -f ./deploy/kasmcloud_host_deployment.yaml
-
Deploy Actor, Link and Provider Sample
Output is similar to:
NAME DESC PUBLICKEY REPLICAS AVAILABLEREPLICAS CAPS IMAGE actor.kasmcloud.io/echo-default Echo MBCFOPM6JW2APJLXJD3Z5O4CN7CPYJ2B4FTKLJUR5YR5MITIU7HD3WD5 10 10 ["wasmcloud:httpserver","wasmcloud:builtin:logging"] wasmcloud.azurecr.io/echo:0.3.8 NAME CONTRACTID LINK ACTORYKEY PROVIDERKEY link.kasmcloud.io/httpserver-echo wasmcloud:httpserver test MBCFOPM6JW2APJLXJD3Z5O4CN7CPYJ2B4FTKLJUR5YR5MITIU7HD3WD5 VAG3QITQQ2ODAOWB5TTQSDJ53XK3SHBEIFNK4AYJ5RKAX2UNSCAPHA5M NAME DESC PUBLICKEY LINK CONTRACTID IMAGE provider.kasmcloud.io/httpserver-default HTTP Server VAG3QITQQ2ODAOWB5TTQSDJ53XK3SHBEIFNK4AYJ5RKAX2UNSCAPHA5M test wasmcloud:httpserver ghcr.io/iceber/wasmcloud/httpserver:0.17.0-index
-
curl echo server
RoadMap¶
- Add KasmCloudHost resource
- Add status information for the resource
- Add Kasmcloud Repeater module
- Add rolling updates for Actor
- Add DaemonSet deployment for Actor
- Blue/Green Deployment for Actors and Providers