讲师中心 微信公众号
AI工具推荐 视频效率加速

如何在华为云欧拉系统上平稳安装Kubernetes

千杰吖_9548

千杰吖_9548

发布时间:2026-10-14 07:04:02

|

269人浏览过

|

来源于php中文网

原创

在华为云欧拉(openEuler)ARM64架构上部署Kubernetes,必须使用原生aarch64版本的kubelet、containerd、CNI插件及镜像,提前加载br_netfilter/ip_vs等内核模块,禁用SELinux和swap,配置containerd启用systemd-cgroup,并指定ARM兼容的镜像仓库与版本,否则将出现exec format error、NotReady或CoreDNS崩溃等问题。

如何在华为云欧拉系统上平稳安装kubernetes

直接说结论:在华为云欧拉(openEuler)上装 Kubernetes,别硬套 x86 教程,ARM64 架构下必须确认所有组件原生支持 aarch64,且容器运行时、CNI 插件、kubelet 二进制都得是 ARM 版本。否则会卡在 exec format error、image not found 或节点 NotReady。


确认 openEuler 版本与内核模块是否就绪

openEuler 22.03 LTS(含 SP1/SP3)是当前最稳妥的选择,但 SP 版本间内核模块加载行为有差异:

  • 必须提前加载 br_netfilter 和 ip_vs 系列模块,否则 kube-proxy IPVS 模式启动失败

  • /etc/modules-load.d/k8s.conf 中要显式列出:

    br_netfilter
    ip_vs
    ip_vs_rr
    ip_vs_wrr
    ip_vs_sh
    nf_conntrack
  • 验证方式:lsmod | grep -E 'br_netfilter|ip_vs',缺任何一个都可能导致 Calico/Flannel 启动后 Pod 网络不通

  • openEuler 默认启用 SELINUX=permissive,但 kubeadm 要求彻底禁用(SELINUX=disabled),仅 setenforce 0 不够,重启后会恢复

  • swap 必须永久关闭:swapoff -a + 注释 /etc/fstab 中所有 swap 行,否则 kubeadm init 直接报错


containerd 替代 Docker 是更稳的选择

华为云欧拉默认不预装 Docker,且社区版 Docker 对 aarch64 的维护滞后(比如 24.x+ 版本在某些 SP3 内核上 cgroupv2 兼容性差):

  • 推荐用系统自带的 containerd(openEuler 22.03 自带 1.6+,满足 k8s 1.28+ 要求)

  • 关键配置项必须设对:/etc/containerd/config.toml 中:

    Kubernetes Network Policy Generator
    Kubernetes Network Policy Generator

    使用加权评分卡在12项标准上评估和比较隐私解决方案供应商。适用于选择隐私管理软件、比较数据保护方案等场景。

    下载
    [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
    runtime_type = "io.containerd.runc.v2"
    [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
    SystemdCgroup = true
  • 若用 systemd-cgroup(openEuler 默认),SystemdCgroup = true 必须开启,否则 kubelet 报 cgroup driver mismatch

  • 配置完执行:systemctl restart containerd && crictl info 确认 RuntimeReady 为 true

  • 不建议强行用 Docker:即使装上,也要改 /etc/docker/daemon.json 加 "exec-opts": ["native.cgroupdriver=systemd"],且需额外装 cri-dockerd —— 多一层封装,多一个故障点


kubeadm init 时必须指定 ARM 兼容参数

kubeadm 默认拉取的是 amd64 镜像,不加干预会在 master 节点卡住:

  • 所有节点先执行:kubeadm config images pull --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.28.2(替换成你选的版本)
  • init 命令不能省略 --image-repository 和 --cri-socket:
    kubeadm init \
    --pod-network-cidr=10.244.0.0/16 \
    --image-repository registry.aliyuncs.com/google_containers \
    --cri-socket unix:///run/containerd/containerd.sock \
    --kubernetes-version v1.28.2
  • 如果用 Calico,后续 kubectl apply -f 的 manifest 必须是 ARM 适配版(官方 manifests 默认不含 aarch64 镜像,得手动替换 calico/cni、calico/node 镜像 tag 为 arm64 后缀版,或用 calico/v3.26.3 这类已内置多架构的版本)
  • kubeadm join 命令里若含 --control-plane,确保所有 master 节点的 /etc/hosts 解析一致,否则 etcd 成员注册失败,出现 context deadline exceeded 错误

网络插件选型和镜像源是隐形大坑

Calico 和 Flannel 在 ARM 上表现差异明显:

  • Flannel 的 quay.io/coreos/flannel 官方镜像从 v0.22.0 起才正式支持 aarch64,旧版直接拉取失败

  • Calico 的 docker.io/calico/cni 镜像在 v3.25 之前未做 multi-arch push,必须用类似 docker.io/calico/cni:v3.26.3-arm64 这种明确带架构后缀的 tag(或改 manifest 用 imagePullPolicy: Always 强制校验)

  • 国内环境务必配镜像加速:

    • containerd 配置中加 registry.mirrors(如阿里云 <a href="https://www.php.cn/link/6fabe12b784d22a2b9af5570011eed9d">https://www.php.cn/link/6fabe12b784d22a2b9af5570011eed9d</a>)
    • kubeadm --image-repository 推荐用 registry.cn-hangzhou.aliyuncs.com/google_containers,比默认的 gcr.io 可靠得多
  • 最容易被忽略的一点:openEuler 的 firewalld 即使 disabled,也可能残留 iptables 规则,导致 NodePort 不通。部署后跑个 curl -v http://<node-ip>:30000</node-ip> 测试前,先 iptables -L -t nat | grep 30000 看规则是否生效

复杂点在于:ARM 生态的镜像不是“存在就行”,而是得同时满足「架构匹配 + registry 可达 + manifest 正确声明 platform」。少验证其中一环,就会在节点 Ready 后突然发现 CoreDNS CrashLoopBackOff 或 DNS 解析失败——那往往不是配置问题,是镜像本身没跑起来。

相关文章

数码产品性能查询
数码产品性能查询

该软件包括了市面上所有手机CPU,手机跑分情况,电脑CPU,电脑产品信息等等,方便需要大家查阅数码产品最新情况,了解产品特性,能够进行对比选择最具性价比的商品。

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
Seko
Seko Hot

一款AI视频创作工具,主要用于商汤科技推出的创编一体的AI短视频创作Agent,适合需要提升相关任务效率的用户。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

VibeKnow
VibeKnow Hot

一款AI视频创作工具,主要用于全球首个AI知识视频创作平台,文档、文章、网页,一键生成视频,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

AionClaw
AionClaw Hot

AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

相关专题

更多
Golang云原生微服务Kubernetes_Golang怎么集成Kubernetes开发云原生服务
Golang云原生微服务Kubernetes_Golang怎么集成Kubernetes开发云原生服务

Golang云原生微服务Kubernetes (K8s) 是指 使用 Go 语言(Golang)编写的云原生微服务,并利用 Kubernetes 平台进行容器化部署、自动化管理、弹性伸缩和高效编排的一整套现代应用架构方案。

116

2025.12.22

Go云原生应用与Kubernetes服务部署实战
Go云原生应用与Kubernetes服务部署实战

本专题围绕 Go 语言在云原生环境中的应用展开,讲解容器化部署、Kubernetes 编排、服务发现、健康检查与弹性扩缩容机制。通过真实云端案例,帮助开发者构建可扩展的云原生微服务架构。

188

2026.06.29

剧云AI短剧创作教程合集
剧云AI短剧创作教程合集

本专题聚焦剧云AI短剧创作,讲解从短剧灵感、梗概、全局大纲到分集、分场和正文的完整流程及节奏设计方法。

0

2026.10.14

剧云AI剧本创作零基础入门
剧云AI剧本创作零基础入门

本专题系统讲解剧云AI剧本创作流程,涵盖灵感、梗概、大纲、分场与正文生成,帮助新手快速完成首个中文剧本项目。

0

2026.10.14

VibeKnow文档转视频操作指南
VibeKnow文档转视频操作指南

本专题讲解VibeKnow上传Word、TXT、Markdown等材料生成视频的方法,覆盖内容解析、脚本组织、画面生成与成片检查。

0

2026.10.14

VibeKnow知识视频制作与导出详解
VibeKnow知识视频制作与导出详解

本专题整理VibeKnow从注册、素材上传、AI生成到预览导出的完整操作,帮助新手快速制作第一条知识讲解视频。

0

2026.10.14

二狗PPT大纲编辑实操指南
二狗PPT大纲编辑实操指南

本专题聚焦二狗PPT结构化大纲的生成和修改,讲解标题、正文、目录、页数与页面顺序的调整方法,提升汇报逻辑和内容完整性。

0

2026.10.14

二狗PPT文档转PPT全教程
二狗PPT文档转PPT全教程

本专题讲解二狗PPT解析Word、PDF、Excel和PPT资料的方法,涵盖文件上传、内容提取、大纲整理、异常处理与转换后校对。

0

2026.10.14

讯飞绘文全功能使用教程
讯飞绘文全功能使用教程

本专题系统整理讯飞绘文官网入口、注册登录、工作台及内容创作流程,帮助用户熟悉常用功能,快速完成首篇图文内容。

0

2026.10.14

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Kubernetes官方教程手册
Kubernetes官方教程手册

共0课时 | 0人学习

Kubernetes官方中文文档
Kubernetes官方中文文档

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn