Skip to content

Commit

Permalink
Add 3 eco projects in community/
Browse files Browse the repository at this point in the history
  • Loading branch information
windsonsea committed Mar 25, 2024
1 parent d24e950 commit 8bd7b59
Show file tree
Hide file tree
Showing 8 changed files with 429 additions and 59 deletions.
58 changes: 27 additions & 31 deletions docs/en/docs/community/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,6 @@ hide:

[:octicons-arrow-right-24: Learn more](./clusterpedia.md)

</div>

<div class="grid cards" markdown>

- :simple-amazonapigateway:{ .lg .middle } __egressgateway__

---
Expand All @@ -50,10 +46,6 @@ hide:

[:octicons-arrow-right-24: Learn more](./fast.md)

</div>

<div class="grid cards" markdown>

- :fontawesome-brands-trade-federation:{ .lg .middle } __FedState__

---
Expand All @@ -70,10 +62,6 @@ hide:

[:octicons-arrow-right-24: Learn more](./ferry.md)

</div>

<div class="grid cards" markdown>

- :material-storage-tank:{ .lg .middle } __HwameiStor__ :simple-cncf: Listed in CNCF Sandbox and Landscape

---
Expand All @@ -82,6 +70,14 @@ hide:

[:octicons-arrow-right-24: Learn more](./hwameistor.md)

- :material-doctor:{ .lg .middle } __KasmCloud__

---

Managing and Running Actors, Providers, and Links in Kubernetes.

[:octicons-arrow-right-24: Learn more](./kasmcloud.md)

- :material-doctor:{ .lg .middle } __kdoctor__

---
Expand All @@ -90,10 +86,6 @@ hide:

[:octicons-arrow-right-24: Learn more](./kdoctor.md)

</div>

<div class="grid cards" markdown>

- :simple-kubernetes:{ .lg .middle } __KLTS__

---
Expand All @@ -102,17 +94,21 @@ hide:

[:octicons-arrow-right-24: Learn more](./klts.md)

- :peanuts:{ .lg .middle } __Kubean__ :simple-cncf: Listed in CNCF Landscape
- :peanuts:{ .lg .middle } __kube-node-tuning__

---

A full life cycle management tool for containerized clusters that is applying for Sandbox.
kube-node-tuning is aimed at kernel tuning by kubernetes.

[:octicons-arrow-right-24: Learn more](./kubean.md)

</div>
- :peanuts:{ .lg .middle } __Kubean__ :simple-cncf: Listed in CNCF Landscape

<div class="grid cards" markdown>
---

A full life cycle management tool for containerized clusters that is applying for Sandbox.

[:octicons-arrow-right-24: Learn more](./kubean.md)

- :material-forest:{ .lg .middle } __KWOK__ :simple-cncf: One of the K8s-sigs projects

Expand All @@ -130,10 +126,6 @@ hide:

[:octicons-arrow-right-24: Learn more](./merbridge.md)

</div>

<div class="grid cards" markdown>

- :material-debug-step-over:{ .lg .middle } __miragedebug__

---
Expand All @@ -142,17 +134,13 @@ hide:

[:octicons-arrow-right-24: Learn more](./miragedebug.md)

- :spider:{ .lg .middle } __Spiderpool__ :simple-cncf: Listed in CNCF Sandbox
- :speedboat:{ .lg .middle } __Piraeus__

---

An underlay and RDMA network solution for Kubernetes with bare metal, virtual machines, and public clouds.
a high performance, highly-available, simple, secure, and cloud agnostic storage solution for Kubernetes.

[:octicons-arrow-right-24: Learn more](./spiderpool.md)

</div>

<div class="grid cards" markdown>
[:octicons-arrow-right-24: Learn more](./piraeus.md)

- :speedboat:{ .lg .middle } __Public Mirror Acceleration__

Expand All @@ -162,6 +150,14 @@ hide:

[:octicons-arrow-right-24: Learn more](./mirror.md)

- :spider:{ .lg .middle } __Spiderpool__ :simple-cncf: Listed in CNCF Sandbox

---

An underlay and RDMA network solution for Kubernetes with bare metal, virtual machines, and public clouds.

[:octicons-arrow-right-24: Learn more](./spiderpool.md)

- :simple-iconify:{ .lg .middle } __DaoCloud Icons Library__

---
Expand Down
93 changes: 93 additions & 0 deletions docs/en/docs/community/kasmcloud.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
<div align="center">
<h1><code>KasmCloud</code></h1>

<strong>Managing and Running Actors, Providers, and Links in Kubernetes</strong>
</div>

## :warning: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](https://docs.google.com/document/d/16p-9czZ6GT_layiabGE6HTyVpbYSALjoyxXhgIfYW0s/edit#heading=h.ymjg4q1g3smk)

<div align="center"><img src="./arch.png" style="width:500px;" /></div>

## Quick Start

1. Deploy Nats

```bash
helm repo add nats https://nats-io.github.io/k8s/helm/charts/
helm repo update
helm upgrade --install kasmcloud-nats nats/nats
```

2. Deploy KasmCloud CRDs and Webhook Server

```bash
kubectl apply -f ./deploy/crds
kubectl apply -f ./deploy/webhook
```

3. Deploy KasmCloud Host

```bash
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
```

4. Deploy Actor, Link and Provider Sample

```bash
kubectl apply -f ./sample.yaml
kubectl get kasmcloud
```

Output is similar to:

```console
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
```

5. curl echo server

```bash
# other terminal
kubectl port-forward pod/kasmcloud-host-default 8080:8080
curl 127.0.0.1:8080
{"body":[],"method":"GET","path":"/","query_string":""}
```

## 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

## Reference

- [kasmcloud repo](https://github.com/wasmCloud/kasmcloud)
49 changes: 49 additions & 0 deletions docs/en/docs/community/kube-node-tuning.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# kube-node-tuning

kube-node-tuning is aimed at kernel tuning by kubernetes. It's useful to:

* High performance application
* Large Scale Cluster
* Network Tuning

## Quick Start

```bash
export VERSION=v0.3.1
helm repo add kube-node-tuning https://kubean-io.github.io/kube-node-tuning/
helm install -n kube-node-tuning kube-node-tuning kube-node-tuning/kube-node-tuning --version $VERSION --create-namespace
```

!!! tip

If the machine is in China, you should following by: [quick-start-in-china](docs/quick-start-in-china.md)

The kernel's sysctl settings are applied to the node at /etc/99-kube-node-tuning.conf.

Check if the settings are applied by the following command.
SSH to the node of cluster

```bash
cat /etc/sysctl.d/99-kube-node-tuning.conf
sysctl -a # view the sysctl setting
```

## Configuration

```bash
# Change the config
kubectl -n kube-node-tuning edit cm/kube-node-tuning-config -o yaml

# Restart the DaemonSet
kubectl -n kube-node-tuning rollout restart ds kube-node-tuning
```

## Roadmap

* Different OS Support. (Ubuntu, CentOS, RHEL, etc.)
* Multi profile
* Operator instead of Daemonset

## Reference

- [kube-node-tunning repo](https://github.com/kubean-io/kube-node-tuning)
61 changes: 61 additions & 0 deletions docs/en/docs/community/piraeus.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Piraeus Datastore - High-Availability Datastore for Kubernetes

Piraeus is a high performance, highly-available, simple, secure, and cloud agnostic storage solution for Kubernetes.

The Piraeus Project consists of:

* A [Kubernetes Operator](https://github.com/piraeusdatastore/piraeus-operator) to create, configure and maintain all components of Piraeus.
* A [CSI Driver](https://github.com/piraeusdatastore/linstor-csi) to provision persistent volumes and snapshots on the storage cluster maintained by Piraeus.
* A [High Availability Controller](https://github.com/piraeusdatastore/piraeus-ha-controller) to speed up the failover process of stateful workloads
* A [Volume Affinity Controller](https://github.com/piraeusdatastore/linstor-affinity-controller), keeping Kubernetes Persistent Volumes reported affinity in sync with the cluster.
* Container images for the open source components Piraeus is built on:
* [DRBD](https://github.com/LINBIT/drbd) is used as the underlying storage replication mechanism between cluster nodes.
[Documentation](https://docs.linbit.com/docs/users-guide-9.0/) is provided by [LINBIT](https://www.linbit.com/).
* [LINSTOR](https://github.com/LINBIT/linstor-server) creates and manages volumes on request of the CSI Driver, sets up replication using DRBD and prepares
the backing storage devices.
[Documentation](https://docs.linbit.com/docs/linstor-guide/) is provided by [LINBIT](https://www.linbit.com/).

Piraeus is a [CNCF Sandbox Project](https://www.cncf.io/sandbox-projects/).

## Getting started

Installing Piraeus can be as easy as:

```bash
$ kubectl apply --server-side -k "https://github.com/piraeusdatastore/piraeus-operator//config/default?ref=v2"
namespace/piraeus-datastore configured
...
$ kubectl wait pod --for=condition=Ready -n piraeus-datastore -l app.kubernetes.io/component=piraeus-operator
pod/piraeus-operator-controller-manager-dd898f48c-bhbtv condition met
$ kubectl apply -f - <<EOF
apiVersion: piraeus.io/v1
kind: LinstorCluster
metadata:
name: linstorcluster
spec: {}
EOF
```

Head on over to the [Piraeus Operator docs](https://github.com/piraeusdatastore/piraeus-operator/tree/v2/docs) to learn more. It contains detailed instructions on how to get started
using Piraeus.

It also contains a [basic Helm chart](https://github.com/piraeusdatastore/piraeus-operator/tree/v2/charts/piraeus).

## Community

Active communication channels:

* [Slack](https://piraeus-datastore.slack.com/join/shared_invite/enQtOTM4OTk3MDcxMTIzLTM4YTdiMWI2YWZmMTYzYTg4YjQ0MjMxM2MxZDliZmEwNDA0MjBhMjIxY2UwYmY5YWU0NDBhNzFiNDFiN2JkM2Q)

Piraeus Datastore is mainly a glue project that connects LINSTOR and DRBD to Kubernetes. Therefore,
communication channels for [LINSTOR] and [DRBD] are also relevant for people interested in Piraeus
Datastore. This is ...

* [LINBIT community slack](https://linbit-community.slack.com/join/shared_invite/enQtOTg0MTEzOTA4ODY0LTFkZGY3ZjgzYjEzZmM2OGVmODJlMWI2MjlhMTg3M2UyOGFiOWMxMmI1MWM4Yjc0YzQzYWU0MjAzNGRmM2M5Y2Q#/shared-invite/email)
* [DRBD related mailing lists](https://lists.linbit.com/)
* [LINBIT community meetings](https://linbit.com/community-meeting/)

## Reference

- [Piraeus Repo](https://github.com/piraeusdatastore/piraeus)
- [Piraeus Website](https://piraeus.io/)
Loading

0 comments on commit 8bd7b59

Please sign in to comment.