当前位置: 首页 > news >正文

【k8s】arm架构从零开始在线/离线部署k8s1.34.5+KubeSphere3.4.1 - 天行1st

本文在鲲鹏920openEuler+Ubuntu,从0开始使用Containerd部署k8s1.34.5+开源KS3.4.1版本。

1.说明

关于kt

kt是基于kk二次开发的产物,具备kk的所有功能。二开主要为适配信创国产化环境、简化arm部署过程和国产化环境离线部署。支持arm64amd64架构国产操作系统,已适配芯片+操作系统 如下。

kt新增功能点

  • 适配arm架构harbor和支持,部署体验与X86一样简单。
  • 离线环境部署增强。常用国际和国产操作系统依赖,内置到安装包中。已适配芯片和操作系统如下
    • ./kt init-os 一条命令完成操作系统依赖安装和初始化操作。
    • CPU:鲲鹏、飞腾、海光、兆芯、intel、amd等。
    • OS:Centos、Rocky Linux、Ubuntu、Debian、银河麒麟V10、麒麟V11、麒麟国防版、麒麟信安、中标麒麟V7、统信UOS、华为欧拉、移动大云、阿里龙蜥、TencenOS等。
  • 支持开启防火墙,只暴露30000-32767端口,其他k8s端口添加到节点白名单。
    • ./kt firewall 一条命令自动获取节点信息开白名单和防火墙。

kt版本更新和下载地址

  • kt:kt
  • 关注我不迷路

2.环境准备

服务器基本信息

主机名 架构 OS 配置 IP
master arm64 openEuler 4核8G 192.168.0.18
harbor arm64 Ubuntu 2核4G 192.168.0.203

2.1 上传离线制品

操作系统不需要安装docker,不需要设置selinux,swap等操作,全新的操作系统即可。

将离线制品、配置文件、kt和sh脚本上传至服务器其中一个节点(本文以master为例),后续在该节点操作创建集群。本文使用kt:3.1.14版本

2.2 修改配置文件

根据实际服务器信息,配置到生成的config-sample.yaml中,默认使用containerd运行时,如果需要使用docker运行时,请修改31行 为dockercontainerManager: docker

kind: Cluster
metadata:name: sample
spec:hosts:- {name: harbor, address: 192.168.0.18, internalAddress: 192.168.0.18, user: root, password: "123213", arch: "arm64"}- {name: node1, address: 192.168.0.103, internalAddress: 192.168.0.103, user: root, password: "123213", arch: "arm64"}roleGroups:etcd:- node1control-plane:- node1worker:- node1# 如需使用 kk 自动部署镜像仓库,请设置该主机组 (建议仓库与集群分离部署,减少相互影响)# 如果需要部署 harbor 并且 containerManager 为 containerd 时,由于部署 harbor 依赖 docker,建议单独节点部署 harborregistry:- harborcontrolPlaneEndpoint:## Internal loadbalancer for apiservers internalLoadbalancer: haproxydomain: lb.kubesphere.localaddress: ""port: 6443kubernetes:version: v1.34.5clusterName: cluster.localautoRenewCerts: truecontainerManager: containerdetcd:type: kubekeynetwork:plugin: calicokubePodsCIDR: 10.233.64.0/18kubeServiceCIDR: 10.233.0.0/18## multus support. https://github.com/k8snetworkplumbingwg/multus-cnimultusCNI:enabled: falseregistry:type: harborregistryMirrors: []insecureRegistries: []privateRegistry: "dockerhub.kubekey.local"namespaceOverride: "kubesphereio"auths: # if docker add by `docker login`, if containerd append to `/etc/containerd/config.toml`"dockerhub.kubekey.local":username: "admin"password: Harbor@123 # 此处可自定义,kk3.1.8新特性skipTLSVerify: true # Allow contacting registries over HTTPS with failed TLS verification.plainHTTP: false # Allow contacting registries over HTTP.certsPath: "/etc/docker/certs.d/dockerhub.kubekey.local"addons: []
---
apiVersion: installer.kubesphere.io/v1alpha1
kind: ClusterConfiguration
metadata:name: ks-installernamespace: kubesphere-systemlabels:version: v3.4.1

2.3 系统初始化

解压kt-centos.tar.gz文件后执行./kt init-os -f config-sample.yaml 已适配操作系统和架构见1.说明

该命令kt会根据配置文件自动判断操作系统和架构以完成所有节点的初始化配置和依赖安装。

3 创建 Harbor私有仓库

3.1 创建镜像仓库

./kt init registry -f config-sample.yaml -a artifact-arm-k8s1345.tar.gz

此命令会在harbor节点自动安装dockerdocker-compose

3.2 创建harbor项目

说明:

Harbor 管理员账号:admin,密码:Harbor@123。密码同步使用配置文件中的对应password

harbor 安装文件在 <font style="background-color:rgb(255,245,235);">/opt/harbor</font> 目录下,可在该目录下对 harbor 进行运维。

创建 Harbor 项目

chmod +x create_project_harbor.sh && ./create_project_harbor.sh

4 创建k8s和KubeSphere

./kt create cluster -f config-sample.yaml -a artifact-arm-k8s1345-ks3.4.1.tar.gz --with-local-storage

此命令kt会自动将离线制品中的镜像推送到harbor 私有仓库

执行后会有如下提示,输入yes/y继续执行

等待一段时间,直至出现熟悉的等待安装完成的小箭头>>--->

期间可以另开一个窗口用以下命令查看部署日志

kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l 'app in (ks-install, ks-installer)' -o jsonpath='{.items[0].metadata.name}') -f

继续等待一段时间,可以看到在内核3.10.0上面使用containerd成功部署了1.34.5版本+ks

5 验证

ps:default-http-backend那个pod显示:ImagePullBackOff,没啥用,不需要理会。

登录页面

集群管理

集群节点

监控告警

集群信息

节点情况

配置文件默认只安装了监控,如果需要安装其他组件,可以自行在自定义资源中开启

http://www.jsqmd.com/news/461908/

相关文章:

  • 强烈建议尽快搞个软考证(新政策风口)
  • 响应错误: Indirect modification of overloaded element of app\model\StudentCacheModel has no effect
  • 【2025最新】基于SpringBoot+Vue的船运物流管理系统管理系统源码+MyBatis+MySQL
  • 2026年靠谱的除甲醛负离子发生器厂家推荐:高浓度负离子发生器优质供应商推荐(信赖) - 行业平台推荐
  • 【具身智能】技术群出炉!
  • CLion的配置
  • 携程任我行卡回收实时报价,回收途径三种方式 - 京回收小程序
  • Why does life originate from Africa.
  • WINCC初始化数据库连接卡在10%,无法加载,如何解决?
  • 诚悦橡塑管理水平怎么样,产品交货期准时且可信度高吗 - 工业品网
  • STM32入门(5)
  • 2026年重庆地区性价比高的叛逆少年教育学校推荐,树桥素质教育当选 - 工业设备
  • VR社区安全学习机|开启智慧社区新模式
  • 2026烟气分析仪选购指南:青岛明华等5家企业深度横评 - 品牌推荐大师1
  • 尊重用好所有手指:多元包容共生之道 ——在空论中看见,在时论中亲历,在共生中成为自己
  • VR科普学习一体机,在学校教育的应用前景
  • 电模温机专业供应商,选购时要注意什么? - 工业品牌热点
  • 告别高成本黑洞:营销云如何重塑B2B企业“降本增效”新范式? - 纷享销客智能型CRM
  • 多场景适配・洁净更高效:予华仪器超声波清洗设备优势全解读 - 品牌推荐大师1
  • 小龙虾openclaw的多模态能力扩展深度解析
  • pbootcms模板提交留言表单后,如何跳转到指定的网址?
  • 2026年上饶正规中餐烹饪培训学校排名,哪家性价比高? - myqiye
  • MySQL数据库安装(超详细超简单,3分钟轻松安装MySQL)
  • 深入理解Linux线程控制
  • 支招有机肥造粒设备制造商选择,哪家更值得选的实用建议 - 工业推荐榜
  • 天然草本防脱育发产品有哪些?防脱洗发水十大排名最新出炉,榜首本草成分,长期洗护更靠谱 - 博客万
  • 简述WEB前端开发流程
  • 2026 年 AI 搜索排名优化公司大揭秘:让你的流量一路狂飙! - 品牌测评鉴赏家
  • 车用机油与齿轮油优质代理品牌推荐 - 优质品牌商家
  • 基于yolov13的人行道、盲道障碍物检测系统,支持图像、视频和摄像实时检测【pytorch框架、python源码】