跳到主要内容

k3s 国内离线安装方法

步骤

下载离线文件

进入 k3s release 页面,下载 k3s 二进制和依赖镜像的压缩包:

  • k3s: 二进制。
  • k3s-airgap-images-amd64.tar: 镜像压缩包。

下载安装脚本:

curl -o install.sh https://get.k3s.io

下载完将所有文件放入需要安装 k3s 的机器上。

安装依赖镜像

sudo mkdir -p /var/lib/rancher/k3s/agent/images/
sudo cp ./k3s-airgap-images-amd64.tar /var/lib/rancher/k3s/agent/images/

安装 k3s 二进制

chmod +x k3s
cp k3s /usr/local/bin/

执行安装脚本

chmod +x install.sh
INSTALL_K3S_SKIP_DOWNLOAD=true ./install.sh

验证

查看 k3s 运行状态:

systemctl status k3s

查看 k3s 日志:

journalctl -u k3s -f

查看 k3s 集群状态:

$ k3s kubectl get node
NAME STATUS ROLES AGE VERSION
vm-55-160-centos Ready control-plane,master 3m22s v1.25.2+k3s1
$ k3s kubectl get pod -A
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system local-path-provisioner-5b5579c644-6h99x 1/1 Running 0 3m22s
kube-system coredns-75fc8f8fff-sjjzs 1/1 Running 0 3m22s
kube-system helm-install-traefik-crd-mgffn 0/1 Completed 0 3m22s
kube-system metrics-server-74474969b-6bj6r 1/1 Running 0 3m22s
kube-system svclb-traefik-0ab06643-6vj96 2/2 Running 0 3m1s
kube-system helm-install-traefik-m7wdm 0/1 Completed 2 3m22s
kube-system traefik-7d647b7597-dw6b4 1/1 Running 0 3m1s

获取 kubeconfig

若希望在本机之外用 kubectl 操作集群,可以将 kubeconfig 导出来:

k3s kubectl config view --raw > k3s

修改其中 server 地址的 IP 为本机 IP,将 kubeconfig 文件放到 kubectl 所在机器上,然后用 kubecm 合并到本地 kubeconfig:

kubecm add --context-name=k3s -cf k3s

使用 kubectx 切换 context:

$ kubectl ctx k3s
Switched to context "k3s".

使用 kubectl 操作 k3s 集群:

$ kubectl get node
NAME STATUS ROLES AGE VERSION
vm-55-160-centos Ready control-plane,master 14m v1.25.2+k3s1

参考资料