周口市文章资讯

k3s安装部署流程

2026-03-26 14:35:02 浏览次数:0
详细信息

一、快速安装(单节点)

1. 使用默认配置安装

# 使用默认配置一键安装(包含containerd和traefik ingress)
curl -sfL https://get.k3s.io | sh -

# 获取kubectl配置
sudo cat /etc/rancher/k3s/k3s.yaml

2. 设置环境变量

# 使kubectl可用
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
kubectl get nodes

二、高级安装选项

1. 使用外部数据库(高可用)

# 安装时指定外部数据库(MySQL/PostgreSQL/etcd)
curl -sfL https://get.k3s.io | sh -s - server \
  --datastore-endpoint="mysql://username:password@tcp(hostname:3306)/database-name"

2. 禁用组件

# 禁用内置组件
curl -sfL https://get.k3s.io | sh -s - server \
  --disable traefik \
  --disable servicelb \
  --disable local-storage

三、多节点集群部署

1. 主节点安装

# 在主节点执行
curl -sfL https://get.k3s.io | K3S_TOKEN=my-secret-token sh -s - server \
  --cluster-init

2. 获取节点令牌

# 在主节点查看token
sudo cat /var/lib/rancher/k3s/server/node-token

3. 工作节点加入

# 在工作节点执行
curl -sfL https://get.k3s.io | K3S_URL=https://<主节点IP>:6443 \
  K3S_TOKEN=<节点令牌> sh -

四、Docker作为容器运行时

1. 使用Docker代替containerd

curl -sfL https://get.k3s.io | sh -s - server \
  --docker

五、配置文件

1. 配置文件位置

/etc/rancher/k3s/k3s.yaml    # kubeconfig文件
/var/lib/rancher/k3s/server   # 服务端数据
/var/lib/rancher/k3s/agent    # 代理数据

2. 配置示例

# 创建配置文件
sudo mkdir -p /etc/rancher/k3s
sudo cat > /etc/rancher/k3s/config.yaml << EOF
write-kubeconfig-mode: "0644"
tls-san:
  - "k3s.example.com"
  - "192.168.1.100"
cluster-init: true
datastore-endpoint: "mysql://username:password@tcp(hostname:3306)/k3s"
EOF

# 使用配置文件安装
curl -sfL https://get.k3s.io | sh -s - server --config /etc/rancher/k3s/config.yaml

六、卸载k3s

1. 完全卸载

# 使用官方卸载脚本
/usr/local/bin/k3s-uninstall.sh   # 单节点卸载
/usr/local/bin/k3s-agent-uninstall.sh  # 工作节点卸载

七、常用管理命令

1. 服务管理

# 查看服务状态
sudo systemctl status k3s
sudo systemctl status k3s-agent

# 重启服务
sudo systemctl restart k3s
sudo systemctl restart k3s-agent

# 查看日志
sudo journalctl -u k3s -f

2. 集群管理

# 查看集群信息
kubectl get nodes -o wide
kubectl cluster-info

# 查看所有pods
kubectl get pods --all-namespaces

# 查看k3s版本
k3s --version

八、注意事项

端口要求:确保 6443(API)、8472(Flannel VXLAN)端口开放 硬件要求:至少 512MB RAM,1 CPU 核心 网络要求:节点间网络互通 存储:默认使用 sqlite,生产环境建议使用外部数据库 安全:及时更新到最新版本

九、故障排查

# 查看k3s日志
sudo journalctl -u k3s -xe

# 检查证书是否有效
sudo k3s kubectl get secrets

# 重置集群(慎用)
sudo k3s-killall.sh
sudo rm -rf /var/lib/rancher/k3s/

十、资源清理

# 清理不需要的镜像
sudo k3s crictl rmi --prune

# 查看资源使用
sudo k3s kubectl top nodes
sudo k3s kubectl top pods -A

这是基本的 k3s 安装流程,具体配置可根据实际需求调整。

相关推荐