K3S是一个轻量级Kubernetes发行版,特别适合边缘计算和云边端架构,也可以作为标准K8S集群使用。
FabEdge是一个专门针对边缘计算场景设计的,基于kubernetes的容器网络方案,它符合CNI规范,可以无缝集成任何K8S环境,解决边缘计算场景下云边协同,边边协同,服务发现等难题。
GitHub - FabEdge/fabedge: Secure Edge Networking Solution Based On Kubernetes
VPS的资源那么贵,自己用的话,搞个k3s就够用了。
节点之间互联使用了FabEdge,因为FabEdge的配置简单。
<aside> ⚠️ Edge节点之间跨公网互通有问题。因为现在还不支持,配置community之后是通过本地的内网地址进行ipsec通道来建立连接。
</aside>
master 42.193.249.123
edge1 1.14.250.108
edge2 119.91.131.254
在安全组放通所有端口。因为懒得测需要放开那些端口。
curl -fsSL <https://get.docker.com> | bash -s docker --mirror Aliyun
如果镜像拉取速度太慢,请自行配置镜像加速器。
curl -sfL <http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh> | INSTALL_K3S_MIRROR=cn INSTALL_K3S_EXEC='--docker' sh -s - --node-external-ip publicip
example:
curl -sfL <http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh> | INSTALL_K3S_MIRROR=cn INSTALL_K3S_EXEC='--docker' sh -s - --node-external-ip 42.193.249.123
# 先在master节点查看 token
cat /var/lib/rancher/k3s/server/node-token
tokenxxx
example:
root@master:~# cat /var/lib/rancher/k3s/server/node-token
K10348801fa1c0dab0266f0c7677e1b77681ebe3e8738d9c5249a6959b33ba0e21d::server:604272115ff731d8ae519c2d236fa9ff
# 安装k3s并加入集群
curl -sfL <http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh> | INSTALL_K3S_MIRROR=cn INSTALL_K3S_EXEC='--docker --flannel-backend none' K3S_URL=https://publicip:6443 K3S_TOKEN=tokenxxxxxx sh -
example:
curl -sfL <http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh> | INSTALL_K3S_MIRROR=cn INSTALL_K3S_EXEC='--docker --flannel-backend none' K3S_URL=https://42.193.249.123:6443 K3S_TOKEN=K10348801fa1c0dab0266f0c7677e1b77681ebe3e8738d9c5249a6959b33ba0e21d::server:604272115ff731d8ae519c2d236fa9ff sh -
# 查看节点状态
root@master:~# kubectl get node
NAME STATUS ROLES AGE VERSION
master Ready control-plane,master 18m v1.21.5+k3s2
edge1 Ready <none> 45s v1.21.5+k3s2
edge2 Ready <none> 45s v1.21.5+k3s2