K3s 安装笔记(CentOS 7.9)

45 阅读2分钟

K3s 是 K8s 的轻量化认证发行版,专为边缘计算精简,100% 兼容 K8s API,资源消耗降低约 80%。

一、安装 K3s

# 安装指定版本 K3s(使用国内镜像)
curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | \
  sudo INSTALL_K3S_MIRROR=cn \
  sudo INSTALL_K3S_VERSION=v1.27.10+k3s1 \
  sh -

二、配置 kubectl 软连接

sudo ln -s /usr/local/bin/k3s /usr/local/bin/kubectl

三、测试集群状态

sudo kubectl get nodes

四、配置镜像加速(可选,推荐)

# 创建配置文件
sudo mkdir -p /etc/rancher/k3s
sudo tee /etc/rancher/k3s/registries.yaml <<'EOF'
mirrors:
  docker.io:
    endpoint:
      - "https://mirrors.tuna.tsinghua.edu.cn"
      - "https://dockercf.jsdelivr.fyi"
      - "https://docker.jsdelivr.fyi"
      - "https://dockertest.jsdelivr.fyi"
      - "https://docker.nju.edu.cn"
      - "https://mirror.iscas.ac.cn"
      - "https://dc.j8.work"
      - "https://gst6rzl9.mirror.aliyuncs.com"
      - "http://mirrors.ustc.edu.cn"
      - "http://mirrors.sohu.com"
      - "https://registry.docker-cn.com"
EOF
​
# 重启 K3s
sudo systemctl restart k3s
​
# 等待启动
sleep 30
​
# 检查状态
sudo systemctl status k3s --no-pager

五、部署测试应用(Nginx)

# 创建 Deployment 和 Service
sudo kubectl create deployment nginx --image=nginx
sudo kubectl expose deployment nginx --port=80 --type=NodePort
​
# 查看 Pod 详情
sudo kubectl describe pod -l app=nginx
​
# 实时监控 Pod 状态
sudo kubectl get pods -w

六、查看服务与访问

# 查看服务
kubectl get svc
## 输出结果:
NAME         TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
kubernetes   ClusterIP   10.43.0.1      <none>        443/TCP        29h
nginx        NodePort    10.43.220.99   <none>        80:32568/TCP   27h
​
# 创建一个临时的一次性 Pod,运行 busybox 容器,并进入它的交互式 Shell
kubectl run test --rm -it --image=busybox -- /bin/sh
wget -O- temp.html http://<svc-name>:80
cat temp.html

七、删除测试应用

# 删除部署,自动删除 Deployment 管理的所有 Pod
sudo kubectl delete deployment nginx
sudo kubectl delete svc nginx
​
# 确认删除
sudo kubectl get pods
sudo kubectl get svc


附:常用命令速查

操作命令
查看节点sudo kubectl get nodes
查看 Podsudo kubectl get pods [-o wide]
查看 Servicesudo kubectl get svc
查看所有资源sudo kubectl get all
查看 K3s 日志sudo journalctl -u k3s -f
停止 K3ssudo systemctl stop k3s
启动 K3ssudo systemctl start k3s
重启 K3ssudo systemctl restart k3s
卸载 K3ssudo /usr/local/bin/k3s-uninstall.sh