麒麟OS怎么安装Kubernetes_麒麟OS K8s集群部署安装方法【高级】

秋芳君_1680

秋芳君_1680

2026-04-06

319人浏览

原创

麒麟os上部署kubernetes需按架构、网络及容器运行时选方案;银河麒麟v10/v11支持kubeadm标准在线安装(x86_64),依赖apt与阿里云镜像源,流程含系统更新、docker安装配置及k8s国内源设置。

麒麟os怎么安装kubernetes_麒麟os k8s集群部署安装方法【高级】

如果您在麒麟OS操作系统上部署Kubernetes集群,需根据架构类型、网络连通性及容器运行时选择适配方案。以下是适用于银河麒麟V10/V11的多种K8s集群部署方法:

一、基于kubeadm的标准在线安装(x86_64架构)

该方法依赖APT包管理器与阿里云镜像源,适用于具备外网访问能力的x86_64平台麒麟OS服务器版,流程标准化且版本可控。

1、更新系统并安装基础工具:
sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl gnupg-agent software-properties-common

2、添加Docker官方GPG密钥并配置Docker CE源:
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/debian $(lsb_release -cs) stable"

3、安装Docker并启动服务:
sudo apt-get update && sudo apt-get install -y docker-ce docker-ce-cli containerd.io
sudo systemctl start docker && sudo systemctl enable docker

4、配置Kubernetes国内镜像源:
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add -
sudo tee /etc/apt/sources.list.d/kubernetes.list deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF

5、安装kubeadm、kubelet、kubectl并锁定版本:
sudo apt-get update && sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl

6、初始化控制平面节点:
sudo kubeadm init --pod-network-cidr=10.233.64.0/18 --kubernetes-version=v1.32.11

7、配置kubectl非root用户访问:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

8、部署Calico网络插件:
kubectl apply -f https://docs.projectcalico.org/v3.25/manifests/calico.yaml

二、ARM64架构离线安装(鲲鹏/飞腾平台)

该方案规避网络依赖与架构兼容问题,使用静态二进制方式部署Docker与kubeadm组件,适用于无外网环境的国产ARM64服务器。

1、下载ARM64版Docker静态二进制包:
从Docker官方aarch64目录获取docker-24.0.0.tgz

2、解压并部署至系统路径:
tar -xzf docker-24.0.0.tgz
sudo cp -p docker/* /usr/bin/

3、创建systemd服务文件/etc/systemd/system/docker.service:
[Unit]
Description=Docker Application Container Engine
After=network-online.target firewalld.service
Wants=network-online.target

4、启用并启动Docker服务:
sudo systemctl daemon-reload
sudo systemctl start docker && sudo systemctl enable docker

5、下载ARM64适配的kubeadm/kubelet/kubectl二进制文件:
从Kubernetes GitHub Release页面获取v1.32.9-aarch64版本

6、复制二进制文件至/usr/bin并设置权限:
sudo cp kubeadm kubelet kubectl /usr/bin/
sudo chmod +x /usr/bin/kubeadm /usr/bin/kubelet /usr/bin/kubectl

7、配置kubelet为系统服务并启用:
sudo systemctl enable kubelet

8、准备离线镜像包并导入:
将k8s.gcr.io/pause、coredns、etcd等镜像打包为tar文件,使用docker load -i导入

9、执行kubeadm init初始化(指定cgroup驱动):
sudo kubeadm init --pod-network-cidr=10.233.64.0/18 --kubernetes-version=v1.32.9 --cri-socket unix:///var/run/containerd/containerd.sock

三、KubeKey全离线集群部署(多节点高可用)

KubeKey是专为信创环境设计的集群部署工具,支持自动分发、证书生成、网络插件集成与Harbor镜像仓库协同部署,适用于生产级多节点场景。

1、在master节点上传KubeKey二进制文件及离线制品包:
chmod +x kk
./kk create cluster -f config-sample.yaml --with-kubernetes v1.32.11 --with-kubesphere v4.1.2

2、编辑config-sample.yaml,明确各节点IP、用户名、密码及架构标识:
hosts:
- {name: master, address: 192.168.85.163, internalAddress: 192.168.85.163, user: root, password: "123213", arch: "arm64"}
- {name: node1, address: 192.168.85.155, internalAddress: 192.168.85.155, user: root, password: "123213", arch: "arm64"}

3、配置containerManager字段为containerd或docker:
containerManager: containerd

4、指定网络插件与CIDR范围:
network:
  plugin: calico
  kubePodsCIDR: 10.233.64.0/18
  kubeServiceCIDR: 10.233.0.0/18

5、如需集成Harbor,单独配置registry主机组并填写认证信息:
registry:
  type: harbor
  privateRegistry: "dockerhub.kubekey.local"
  auths:
    "dockerhub.kubekey.local":
      username: "admin"
      password: "Harbor@123"

6、执行部署命令后,KubeKey自动完成节点SSH连接、系统参数调优、容器运行时安装、K8s组件部署及KubeSphere扩展安装

7、验证集群状态:
kubectl get nodes -o wide
kubectl get pod -A

四、containerd替代Docker的轻量部署方案

在麒麟V11等新版本系统中,containerd作为CNCF毕业项目已成为推荐运行时,避免Docker守护进程开销,提升安全隔离性与启动效率。

1、卸载Docker相关组件:
sudo apt-get purge -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

2、安装containerd二进制包:
wget https://github.com/containerd/containerd/releases/download/v2.1.5/containerd-2.1.5-linux-amd64.tar.gz
sudo tar Czxvf /usr/local containerd-2.1.5-linux-amd64.tar.gz

3、生成默认配置文件:
sudo mkdir -p /etc/containerd
sudo containerd config default | sudo tee /etc/containerd/config.toml

4、修改配置启用systemd cgroup驱动:
在/etc/containerd/config.toml中定位[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]段,添加:
SystemdCgroup = true

5、启动containerd服务:
sudo systemctl daemon-reload
sudo systemctl enable containerd
sudo systemctl start containerd

6、配置crictl客户端工具:
sudo crictl config runtime-endpoint unix:///run/containerd/containerd.sock

7、使用kubeadm初始化时显式指定运行时套接字:
sudo kubeadm init --cri-socket unix:///run/containerd/containerd.sock --pod-network-cidr=10.233.64.0/18

五、KubeSphere增强型集群部署(含可观测性与DevOps)

在基础K8s集群之上叠加KubeSphere,提供图形化控制台、多租户管理、日志审计、CI/CD流水线与服务网格能力,适用于需要统一运维门户的企业场景。

1、确保K8s集群已就绪且网络插件正常运行:
kubectl get pods -n kube-system | grep -E "(calico|coredns)"

2、下载KubeSphere离线安装包(含所有依赖镜像与YAML清单):
wget https://github.com/kubesphere/ks-installer/releases/download/v4.1.2/kubesphere-installer-v4.1.2-offline-linux-amd64.tar.gz

3、解压并进入scripts目录:
tar -zxf kubesphere-installer-v4.1.2-offline-linux-amd64.tar.gz
cd kubesphere-installer/scripts

4、修改cluster-configuration.yaml,启用所需功能模块:
openpitrix: enabled: true
logging: enabled: true
metrics_server: enabled: true
devops: enabled: true
servicemesh: enabled: true

5、执行安装脚本:
./install.sh

6、等待ks-installer Pod完成部署:
kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath='{.items[0].metadata.name}') -f

7、获取控制台访问地址:
kubectl get svc -n kubesphere-system | grep ks-console

注意:首次登录需使用admin账户,初始密码可通过kubectl get secret -n kubesphere-system ks-secret -o jsonpath='{.data.password}' | base64 -d获取

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

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

相关专题

更多
curl_exec
curl_exec

curl_exec函数是PHP cURL函数列表中的一种,它的功能是执行一个cURL会话。给大家总结了一下php curl_exec函数的一些用法实例,这个函数应该在初始化一个cURL会话并且全部的选项都被设置后被调用。他的返回值成功时返回TRUE, 或者在失败时返回FALSE。

2023.06.14

3403

6

linux常见下载安装工具
linux常见下载安装工具

linux常见下载安装工具有APT、YUM、DNF、Snapcraft、Flatpak、AppImage、Wget、Curl等。想了解更多linux常见下载安装工具相关内容,可以阅读本专题下面的文章。

2023.10.30

735

4

k8s和docker区别
k8s和docker区别

k8s和docker区别有抽象层次不同、管理范围不同、功能不同、应用程序生命周期管理不同、缩放能力不同、高可用性等等区别。本专题为大家提供k8s和docker区别相关的各种文章、以及下载和课程。

2023.07.24

665

4

docker进入容器的方法有哪些
docker进入容器的方法有哪些

docker进入容器的方法:1. Docker exec;2. Docker attach;3. Docker run --interactive --tty;4. Docker ps -a;5. 使用 Docker Compose。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.04.08

4599

6

docker容器无法访问外部网络怎么办
docker容器无法访问外部网络怎么办

docker 容器无法访问外部网络的原因和解决方法:配置 nat 端口映射以将容器端口映射到主机端口。根据主机兼容性选择正确的网络驱动(如 host 或 overlay)。允许容器端口通过主机的防火墙。配置容器的正确 dns 服务器。选择正确的容器网络模式。排除主机网络问题,如防火墙或连接问题。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.04.08

5497

6

docker镜像有什么用
docker镜像有什么用

docker 镜像是预构建的软件组件,用途广泛,包括:应用程序部署:简化部署,提高移植性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.04.08

2053

7

Docker容器化部署与DevOps实践
Docker容器化部署与DevOps实践

本专题面向后端与运维开发者,系统讲解 Docker 容器化技术在实际项目中的应用。内容涵盖 Docker 镜像构建、容器运行机制、Docker Compose 多服务编排,以及在 DevOps 流程中的持续集成与持续部署实践。通过真实场景演示,帮助开发者实现应用的快速部署、环境一致性与运维自动化。

2026.02.11

219

16

Docker 容器部署
Docker 容器部署

本专题整合了Docker容器部署相关内容,阅读专题下面的文章了解更多详细操作教程。

2026.03.31

411

14

Java容器化部署与Docker实践教程合集
Java容器化部署与Docker实践教程合集

聚焦 Java 应用的容器化与云原生部署,讲解 Dockerfile 编写规范与 Java 应用镜像构建、多阶段构建(Multi-stage Build)减小镜像体积、Jib / Buildpacks 免 Dockerfile 镜像构建方案、JVM 容器感知参数(-XX:MaxRAMPercentage)配置、Docker Compose 编排多服务(应用 + MySQL + Redis)、容器健康检查与资源限制、Kubernetes

2026.05.11

360

26

热门下载

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

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.6万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.3万人学习