统信UOS平台部署K3s需五步:一、离线脚本安装(推荐);二、RPM包安装(仅服务器版);三、手动二进制+systemd部署;四、启用cgroup v2(桌面版必需);五、开放6443/8472/10250等防火墙端口。

如果您已在统信UOS桌面版或服务器版系统中完成基础环境准备,但尚未部署K3s轻量级Kubernetes集群,则可能是由于缺少离线安装介质、未配置必要内核参数或防火墙规则限制导致安装失败。以下是针对统信UOS平台的多种K3s安装部署方法:
一、使用官方离线二进制脚本安装(推荐)
该方法不依赖网络下载,适用于内网环境或公网受限场景,通过预置install.sh脚本直接调用本地k3s二进制文件完成安装。
1、访问统信UOS适配的K3s发布页,下载对应架构的离线安装包(如k3s-v1.29.4+k3s1-amd64.tar.gz)与install.sh脚本。
2、将压缩包解压至/opt/k3s/目录,并赋予install.sh执行权限:chmod +x /opt/k3s/install.sh。
3、执行离线安装命令:INSTALL_K3S_SKIP_DOWNLOAD=true K3S_KUBECONFIG_MODE=644 ./install.sh。
4、验证服务状态:sudo systemctl status k3s,确认active (running)状态。
二、通过RPM包方式安装(仅限统信UOS服务器版)
该方法利用统信UOS内置的apt/apt-get兼容层及openEuler社区移植的RPM包,实现系统级集成管理与自动依赖解析。
1、启用uos-server-extras源:sudo uos-add-repository -y extras。
2、更新软件包索引:sudo apt update。
3、安装k3s主节点RPM包:sudo apt install -y k3s-server。
4、启动并启用服务:sudo systemctl enable --now k3s-server。
三、手动部署二进制文件并配置systemd服务
该方法提供最高控制粒度,允许自定义数据目录、监听地址、禁用组件等高级参数,适合生产环境精细化部署。
1、下载k3s二进制文件至/usr/local/bin/k3s,并设置可执行权限:chmod +x /usr/local/bin/k3s。
2、创建systemd服务文件/etc/systemd/system/k3s.service,写入含--data-dir=/var/lib/rancher/k3s和--bind-address=0.0.0.0等参数的完整启动项。
3、重载systemd配置:sudo systemctl daemon-reload。
4、启动服务并设为开机自启:sudo systemctl enable --now k3s。
四、启用cgroup v2支持(统信UOS桌面版必需步骤)
统信UOS桌面版默认启用cgroup v1,而K3s 1.25+版本强制要求cgroup v2支持,否则kubelet无法启动。
1、编辑内核引导参数文件/etc/default/grub,在GRUB_CMDLINE_LINUX行末尾添加cgroup_enable=cpuset cgroup_enable=memory cgroup_memory=1。
2、更新grub配置:sudo update-grub(UOS桌面版使用grub2-mkconfig时请替换为sudo grub2-mkconfig -o /boot/grub2/grub.cfg)。
3、重启系统使内核参数生效:sudo reboot。
4、验证cgroup版本:cat /proc/filesystems | grep cgroup2,输出应包含cgroup2条目。
五、开放必要端口并配置防火墙规则
K3s节点间通信依赖特定端口,统信UOS默认启用ufw防火墙,需显式放行以避免集群初始化失败。
1、检查当前防火墙状态:sudo ufw status verbose。
2、放行主节点所需端口:sudo ufw allow 6443/tcp、sudo ufw allow 8472/udp、sudo ufw allow 10250/tcp。
3、放行工作节点所需端口:sudo ufw allow 8472/udp、sudo ufw allow 10250/tcp。
4、重新加载防火墙规则:sudo ufw reload。

















