k3s 实践 - k3s Cluster 搭建
服务器信息
Center OS 7
此版本使用的是3.10 内核,不支持 cgroup v2
所以使用 k3s 1.34.9 版本
安装Server
此处我们使用192.168.10.200作为 Server 节点
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION="v1.34.9+k3s1" sh -s
安装过程会使用Python2.x,注意Python版本
Serevr节点和Node节点默认都会接收Pod的调度,如果你想单纯让Server作为控制中心,那给Server打个污点
k3s kubectl taint nodes <你的master节点名> node-role.kubernetes.io/master=:NoSchedule
安装Agent/Worker/Node
安装Agent需要token
token从哪里获取?
在Server上,cat /var/lib/rancher/k3s/server/node-token
在每个Node上安装,通过token注册到Server上
curl -sfL https://get.k3s.io | K3S_URL=https://192.168.10.201:6443 K3S_NODE_NAME=node1 K3S_TOKEN={{token}} sh -
curl -sfL https://get.k3s.io | K3S_URL=https://192.168.10.202:6443 K3S_NODE_NAME=node2 K3S_TOKEN={{token}} sh -
curl -sfL https://get.k3s.io | K3S_URL=https://192.168.10.203:6443 K3S_NODE_NAME=node3 K3S_TOKEN={{token}} sh -
验证是否安装成功?
k3s kubectl get nodes -o wide
想卸载?
sudo /usr/local/bin/k3s-agent-uninstall.sh
安装 Kite
Kite 是 Modern Kubernetes Dashboard
Docker部署
docker run -d -p 8080:8080 -v ./data:/data -e DB_DSN=/data/db.sqlite ghcr.io/kite-org/kite:latest
安装完添加集群

kubeconfig从哪里找?
k3s Server节点上,/etc/rancher/k3s/k3s.yaml
注意:k3s.yaml中默认IP是127.0.0.1,修改内容是Server实际IP
配置完成后,就可以看到集群的各种信息

难道一定要安装这个Kite吗?
不一定,你可以使用其他面板工具,web的,桌面版的,甚至不需要面板工具
以Windows为例,将k3s.yaml内容写入C:\Users\USERNAME.kube\config,即可通过本地kubectl命令使用k3s cluster了
Docker Registry配置
通过Kubectl或者Helm部署的时候,都是将期望发给Server调度,各Node执行命令,从Docker Registry拉取app image
所以,我们需要保证cluster中所有server和docker registry连通性。
在每个server上创建文件:/etc/rancher/k3s/registries.yaml
mirrors:
"192.168.10.128:5000":
endpoint:
- "http://192.168.10.128:5000"
configs:
"192.168.10.128:5000":
tls:
insecure_skip_verify: true
重启k3s服务
systemctl restart k3s //Server节点服务名是k3s
systemctl restart k3s-agent //Node节点服务名是k3s-agent

浙公网安备 33010602011771号