使用UDEV处理k3s节点路由异常问题
一、出了什么问题
去年弄了一堆轻量应用服务器,搭建了一个k3s(Rancher发布的轻量版kubebernets)。k3s默认的Flannel的CNI,这个网络插件的好处就是简单,坏处就是过于简陋。每当设置网卡重启的时候flannel路由丢失(相关ISSUE),导致节点失联。
去年弄了一堆轻量应用服务器,搭建了一个k3s(Rancher发布的轻量版kubebernets)。k3s默认的Flannel的CNI,这个网络插件的好处就是简单,坏处就是过于简陋。每当设置网卡重启的时候flannel路由丢失(相关ISSUE),导致节点失联。
先说结论,显卡受限于驱动原因,暂时有Ubuntu 21.04+ 以上系统可以实现,直通Windows 10绝无可能(2022/05/19)。
回到主题,最近流行各种小主机做软路由、家庭影音、Nas等系统。这些主机的CPU主要有J4125(10gen)、N5105(11gen)、N6005,其中前两款为Intel® Celeron®,后面这个款为Intel® Pentium®,10代采用14nm工艺,11代采用10nm工艺,N5105和N6005相对J4125有不错的性能提升。在性能相差不大的情况N5105要经济一些,这也是很多人被坑的主要原因,N5105有各种直通方案的折腾。
CoreDNS 是Kubernetes默认也是最常用的DNS工具。
内网环境下我们经常会使用一些特殊结尾的域名来却分访问环境,这些域名往往是不存在或者我们自己不是持有人,最常见的使用方案是我们在内网DNS上做解析或者公网DNS解析成内网地址。
Wireguard能让处于不同网络的主机组成一个子网,是一种高性能的廉价组网方案。
K3S、Microk8s、kind、MiniKube等是Kubernetes的轻量实现版本,本篇采用k3s做为集群方案。
如果你有多个对象存储数据迁移需求可继续往下看