Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 41 additions & 19 deletions content/en/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,23 @@
title: SpinKube
---

{{< blocks/cover title="Hyper-efficient serverless on Kubernetes, powered by WebAssembly." image_anchor="top" height="full" >}}
<a class="btn btn-lg btn-primary me-3 mb-4" href="/docs">
Get Started <i class="fas fa-arrow-alt-circle-right ms-2"></i>
</a>
{{< blocks/cover title="Hyper-efficient serverless on Kubernetes, powered by WebAssembly."
image_anchor="top" height="full" >}} <a class="btn btn-lg btn-primary me-3 mb-4" href="/docs"> Get
Started <i class="fas fa-arrow-alt-circle-right ms-2"></i> </a>
<p class="lead mt-5">SpinKube is an open source project that streamlines developing, deploying and operating WebAssembly workloads in Kubernetes - resulting in delivering smaller, more portable applications and incredible compute performance benefits.</p>
{{< blocks/link-down color="info" >}}
{{< /blocks/cover >}}


{{% blocks/lead color="secondary" %}}

SpinKube combines the <a href="https://github.com/spinkube/spin-operator">Spin operator</a>, <a href="https://github.com/spinkube/containerd-shim-spin">containerd Spin shim</a>, and the <a href="https://github.com/spinkube/runtime-class-manager">runtime class manager</a> (formerly <a href="https://kwasm.sh/">KWasm</a>) open source projects with contributions from Microsoft, SUSE, Liquid Reply, and Fermyon. By running applications at the Wasm abstraction layer, SpinKube gives developers a more powerful, efficient and scalable way to optimize application delivery on Kubernetes.
SpinKube combines the <a href="https://github.com/spinkube/spin-operator">Spin operator</a>, <a
href="https://github.com/spinkube/containerd-shim-spin">containerd Spin shim</a>, and the <a
href="https://github.com/spinkube/runtime-class-manager">runtime class manager</a> (formerly <a
href="https://kwasm.sh/">KWasm</a>) open source projects with contributions from Microsoft, SUSE,
Liquid Reply, and Fermyon. By running applications at the Wasm abstraction layer, SpinKube gives
developers a more powerful, efficient and scalable way to optimize application delivery on
Kubernetes.


### Made with Contributions from:
Expand All @@ -23,19 +28,36 @@ SpinKube combines the <a href="https://github.com/spinkube/spin-operator">Spin o

### Overview

**Containerd Shim Spin**
The [Containerd Shim Spin repository](https://github.com/spinkube/containerd-shim-spin) provides shim implementations for running WebAssembly ([Wasm](https://webassembly.org/)) / Wasm System Interface ([WASI](https://github.com/WebAssembly/WASI)) workloads using [runwasi](https://github.com/deislabs/runwasi) as a library, whereby workloads built using the [Spin framework](https://github.com/fermyon/spin) can function similarly to container workloads in a Kubernetes environment.

**Runtime Class Manager**
The [Runtime Class Manager, also known as the Containerd Shim Lifecycle Operator](https://github.com/spinkube/runtime-class-manager), is designed to automate and manage the lifecycle of containerd shims in a Kubernetes environment. This includes tasks like installation, update, removal, and configuration of shims, reducing manual errors and improving reliability in managing WebAssembly (Wasm) workloads and other containerd extensions.

**Spin Plugin for Kubernetes**
The [Spin plugin for Kubernetes](https://github.com/spinkube/spin-plugin-kube) is designed to enhance Kubernetes by enabling the execution of Wasm modules directly within a Kubernetes cluster. This plugin works by integrating with containerd shims, allowing Kubernetes to manage and run Wasm workloads in a way similar to traditional container workloads.

**Spin Operator**
The [Spin Operator](https://github.com/spinkube/spin-operator/) enables deploying Spin applications to Kubernetes. The foundation of this project is built using the [kubebuilder](https://github.com/kubernetes-sigs/kubebuilder) framework. Spin Operator defines Spin App Custom Resource Definitions (CRDs). Spin Operator watches SpinApp Custom Resources e.g. Spin app image, replicas, schedulers and other user-defined values and realizes the desired state in the Kubernetes cluster. Spin Operator introduces a host of functionality such as resource-based scaling event-driven scaling and much more.

**Spin Trigger MQTT**
[Spin Trigger MQTT](https://github.com/spinkube/spin-trigger-mqtt/) is an MQTT trigger designed specifically for Spin. It enables seamless integration between Spin and MQTT-based systems, allowing you to automate workflows and trigger actions based on MQTT messages.
**Containerd Shim Spin** The [Containerd Shim Spin
repository](https://github.com/spinkube/containerd-shim-spin) provides shim implementations for
running WebAssembly ([Wasm](https://webassembly.org/)) / Wasm System Interface
([WASI](https://github.com/WebAssembly/WASI)) workloads using
[runwasi](https://github.com/deislabs/runwasi) as a library, whereby workloads built using the [Spin
framework](https://github.com/fermyon/spin) can function similarly to container workloads in a
Kubernetes environment.

**Runtime Class Manager** The [Runtime Class Manager, also known as the Containerd Shim Lifecycle
Operator](https://github.com/spinkube/runtime-class-manager), is designed to automate and manage the
lifecycle of containerd shims in a Kubernetes environment. This includes tasks like installation,
update, removal, and configuration of shims, reducing manual errors and improving reliability in
managing WebAssembly (Wasm) workloads and other containerd extensions.

**Spin Plugin for Kubernetes** The [Spin plugin for
Kubernetes](https://github.com/spinkube/spin-plugin-kube) is designed to enhance Kubernetes by
enabling the execution of Wasm modules directly within a Kubernetes cluster. This plugin works by
integrating with containerd shims, allowing Kubernetes to manage and run Wasm workloads in a way
similar to traditional container workloads.

**Spin Operator** The [Spin Operator](https://github.com/spinkube/spin-operator/) enables deploying
Spin applications to Kubernetes. The foundation of this project is built using the
[kubebuilder](https://github.com/kubernetes-sigs/kubebuilder) framework. Spin Operator defines Spin
App Custom Resource Definitions (CRDs). Spin Operator watches SpinApp Custom Resources e.g. Spin app
image, replicas, schedulers and other user-defined values and realizes the desired state in the
Kubernetes cluster. Spin Operator introduces a host of functionality such as resource-based scaling
event-driven scaling and much more.

**Spin Trigger MQTT** [Spin Trigger MQTT](https://github.com/spinkube/spin-trigger-mqtt/) is an MQTT
trigger designed specifically for Spin. It enables seamless integration between Spin and MQTT-based
systems, allowing you to automate workflows and trigger actions based on MQTT messages.

{{% /blocks/lead %}}
13 changes: 7 additions & 6 deletions content/en/docs/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,11 @@ where to look for certain things.

- [Installation guides]({{< relref "install" >}}) cover how to install SpinKube on various
platforms.
- [Topic guides]({{< relref "topics" >}}) discuss key topics and concepts at a fairly high level and provide useful background
information and explanation.
- [Reference guides]({{< relref "reference" >}}) contain technical reference for APIs and other aspects of SpinKube's machinery.
They describe how it works and how to use it but assume that you have a basic understanding of key
concepts.
- [Topic guides]({{< relref "topics" >}}) discuss key topics and concepts at a fairly high level and
provide useful background information and explanation.
- [Reference guides]({{< relref "reference" >}}) contain technical reference for APIs and other
aspects of SpinKube's machinery. They describe how it works and how to use it but assume that you
have a basic understanding of key concepts.
- [Contributing guides]({{< relref "contrib" >}}) show how to contribute to the SpinKube project.
- [Miscellaneous guides]({{< relref "misc" >}}) cover topics that don't fit neatly into either of the above categories.
- [Miscellaneous guides]({{< relref "misc" >}}) cover topics that don't fit neatly into either of
the above categories.
4 changes: 2 additions & 2 deletions content/en/docs/contrib/troubleshooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@ $ kubectl apply -f https://github.com/cert-manager/cert-manager/releases/downloa
error: error validating "https://github.com/cert-manager/cert-manager/releases/download/v1.14.3/cert-manager.yaml": error validating data: failed to download openapi: Get "https://127.0.0.1:6443/openapi/v2?timeout=32s": dial tcp 127.0.0.1:6443: connect: connection refused; if you choose to ignore these errors, turn validation off with --validate=false
```

This is because no cluster exists. You can create a cluster following the
[Quickstart guide]({{< ref "quickstart" >}}).
This is because no cluster exists. You can create a cluster following the [Quickstart guide]({{< ref
"quickstart" >}}).

## Installation Failed

Expand Down
3 changes: 2 additions & 1 deletion content/en/docs/contrib/writing-code.md
Original file line number Diff line number Diff line change
Expand Up @@ -161,4 +161,5 @@ See the guide on [writing documentation]({{< ref "writing-documentation" >}}) fo
Congratulations! You've made a contribution to SpinKube.

After a pull request has been submitted, it needs to be reviewed by a maintainer. Reach out on the
`#spinkube` channel on the [CNCF Slack](https://cloud-native.slack.com/archives/C06PC7JA1EE) to ask for a review.
`#spinkube` channel on the [CNCF Slack](https://cloud-native.slack.com/archives/C06PC7JA1EE) to ask
for a review.
Loading