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

https://github.com/kite-org/kite

Docker部署

docker run -d -p 8080:8080 -v ./data:/data -e DB_DSN=/data/db.sqlite ghcr.io/kite-org/kite:latest

安装完添加集群
image

kubeconfig从哪里找?
k3s Server节点上,/etc/rancher/k3s/k3s.yaml
注意:k3s.yaml中默认IP是127.0.0.1,修改内容是Server实际IP

配置完成后,就可以看到集群的各种信息
image

图源: https://github.com/kite-org/kite

难道一定要安装这个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
posted @ 2026-07-24 11:04  talentzemin  阅读(5)  评论(0)    收藏  举报