国产 OS 部署 K8s 差异(Kylin / UOS / Ubuntu):依赖、内核与安全策略
一、背景
政企场景常要求国产化操作系统(麒麟 Kylin、统信 UOS)。这些 OS 在内核、包管理、安全模块上与 Ubuntu 有差异,部署 K8s 需针对性处理。
二、环境信息
| 项目 |
Ubuntu 22.04 |
Kylin V10 |
UOS 1050 |
| 包管理 |
apt |
yum/dnf |
apt |
| 系谱 |
Debian |
CentOS 系 |
Debian 系 |
| 安全 |
AppArmor |
kysec / krb5 |
AppArmor |
| cgroup |
v2 默认 |
v1/v2 视版本 |
v2 默认 |
三、操作要点
通用前置(三系统一致)
1 2 3
| swapoff -a modprobe br_netfilter
|
Kylin 差异处理
1 2 3 4 5
| yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
|
UOS 差异处理
1 2
| apt install -y kubelet kubeadm kubectl
|
Ubuntu(标准流程)
1
| apt install -y kubelet kubeadm kubectl
|
四、验证方式
1 2 3
| kubeadm config images pull kubeadm init ... && kubectl get nodes
|
五、常见问题
- cgroup v2 与 docker:旧版 docker shim 移除后建议 containerd + systemd driver
- 国产 OS 缺内核模块:netfilter/bridge 模块未编入,需装 kernel-modules 包
- 安全模块拦截:kysec/apparmor 导致 kubelet/容器二进制无法执行,需放行或软模式
- 软件源替换:国产 OS 默认源慢,换为厂商或镜像源
- 内核版本过旧:K8s 新版本要求较新内核,升级 OS 内核