边缘节点使用 WasmEdge
这篇文章将介绍如何在 OpenYurt 集群中运行一个 WasmEdge 应用程序。
WasmEdge 是符合 OCI 标准的,且兼容 k8s 的轻量级 WebAssembly runtime。 相较于 Linux 容器,WasmEdge 是更好的边缘轻量级容器替代选项。 WasmEdge 提供基于能力的安全沙箱,对底层操作系统服务做很少的假设,同时在前端支持多种编程语言。
准备工作
首先,关闭 swap 分区
sudo swapoff -a
free -m //验证
接下来,配置两个节点的文件 node/etc/hosts
然后,加载内核模块 br_netfilter
,并调整内核参数。
//load the module
sudo modprobe br_netfilter
//verify
lsmod | grep br_netfilter
// create k8s.conf
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sudo sysctl --system
然后,设置 rp-filter
值,将文件 /etc/sysctl.d/10-network-security.conf
中两个参数的值由 2 改为 1,且将 /proc/sys/net/ipv4/ip_forward
设置为 1。
sudo vi /etc/sysctl.d/10-network-security.conf
echo 1 > /proc/sys/net/ipv4/ip_forward
sudo sysctl --system
安装 OpenYurt
现在,我们可以在 Edge 节点上安装 OpenYurt 来控制它下面的 containerd、crun 和 wasmedge 堆栈。