鲲鹏Arm+麒麟V10,国产化信创 K8s 离线部署保姆级教程
Rainbond V6 国产化部署教程,针对鲲鹏 CPU + 麒麟 V10 的离线环境,手把手教你从环境准备到应用上线,所有依赖包提前打包好,步骤写成傻瓜式操作指南。别说技术团队了,照着文档一步步来,让你领导来都能独立完成部署。
一、环境规划
准备至少两台机器。
| 架构 | OS | 作用 | | ----- | ---------------- | ------------------------ | | Arm64 | 任意,Mac 也可以 | 下载离线包 | | Arm64 | 麒麟 V10 | 单机部署 K8s 和 Rainbond |
二、准备离线包
2.1 准备 RKE2 离线包(K8s)
下载 RKE2 v1.30.4
离线安装包。
wget https://pkg.rainbond.com/rke2/v1.30.4+rke2r1/rke2-images-linux-arm64.tar wget https://pkg.rainbond.com/rke2/v1.30.4+rke2r1/rke2.linux-arm64.tar.gz wget https://pkg.rainbond.com/rke2/v1.30.4+rke2r1/sha256sum-arm64.txt wget https://rancher-mirror.rancher.cn/rke2/install.sh
2.2 准备 Helm 离线包
下载 Helm 二进制离线包。
wget https://get.helm.sh/helm-v3.18.1-linux-arm64.tar.gz
2.3 准备 Rainbond 离线包
使用脚本下载 Rainbond 离线镜像。
cat >download_rbd_images.sh <<'EOF' #!/bin/bash IMAGE_DOMAIN=registry.cn-hangzhou.aliyuncs.com IMAGE_NAMESPACE=goodrain VERSION=v6.3.0-release image_list="${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rainbond:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-chaos:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-mq:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rainbond-operator:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-worker:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-api:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-init-probe:${VERSION} ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-monitor:v2.20.0 ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/apisix-ingress-controller:v1.8.3 ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/apisix:3.9.1-debian ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/local-path-provisioner:v0.0.30 ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/minio:RELEASE.2023-10-24T04-42-36Z ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/rbd-db:8.0.19 ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/registry:2.6.2 ${IMAGE_DOMAIN}/${IMAGE_NAMESPACE}/alpine:latest" for image in ${image_list}; do docker pull "${image}" done docker save -o rainbond-offline-images.tar ${image_list} EOF
获取 Rainbond Helm Chart 包。
git clone -b main --depth=1 https://github.com/goodrain/rainbond-chart.git
三、离线部署准备
以下操作在离线的麒麟 V10 服务器上执行。
3.1 导入离线包
导入上述准备的离线包。
3.2 安装 Helm 命令
解压离线包并将二进制移动到可执行目录。
tar zxvf helm-v3.18.1-linux-arm64.tar.gz && cp linux-arm64/helm /usr/local/bin
四、离线部署 K8s(RKE2 方式)
4.1 配置 RKE2 参数
- 创建 RKE2 配置文件目录。
mkdir -p /etc/rancher/rke2/config.yaml.d
- 配置 RKE2 参数,需禁用默认 Ingress 这会与 Rainbond 网关冲突。
cat >/etc/rancher/rke2/config.yaml.d/00-rbd.yaml <<EOL disable: - rke2-ingress-nginx system-default-registry: registry.cn-hangzhou.aliyuncs.com EOL
- 配置私有镜像仓库,
goodrain.me
是 Rainbond 默认安装的私有镜像仓库域名。
cat >/etc/rancher/rke2/registries.yaml <<EOL mirrors: "goodrain.me": endpoint: - "https://goodrain.me" configs: "goodrain.me": auth: username: admin password: admin1234 tls: insecure_skip_verify: true EOL
4.2 安装 RKE2(K8s 集群)
- 将 RKE2 离线镜像包放到指定目录,启动时它会自动加载离线镜像包。
mkdir -p /var/lib/rancher/rke2/agent/images cp /root/artifacts-rke2/rke2-images* /var/lib/rancher/rke2/agent/images # 同时将 Rainbond 离线镜像包也放入该目录 cp /root/rainbond-offline-images.tar /var/lib/rancher/rke2/agent/images
- 准备安装目录。
mkdir /root/artifacts-rke2
- 将
rke2、rke2-images、sha256sum
移动到一个目录中,如下所示:
mv install.sh rke2* sha256sum* /root/artifacts-rke2 cd /root/artifacts-rke2
- 执行安装命令。
INSTALL_RKE2_ARTIFACT_PATH=/root/artifacts-rke2 sh install.sh
- 启动 RKE2 服务。
systemctl enable rke2-server.service && systemctl start --no-block rke2-server.service
- 查看启动日志,大概需要 5-10 分钟才能完全启动。
journalctl -fu rke2-server
4.3 配置 Kubectl(K8s 命令行工具)
- 配置 Kubectl 访问。
mkdir /root/.kube cp /etc/rancher/rke2/rke2.yaml /root/.kube/config cp /var/lib/rancher/rke2/bin/kubectl /usr/local/bin
- 验证 K8s 集群状态。
kubectl get node kubectl get pod -n kube-system
五、离线部署 Rainbond V6
5.1 配置 Rainbond 安装参数
- 创建 Helm
values.yaml
配置文件。
cat >values.yaml <<EOL Cluster: #集群入口IP,网关节点的公网IP或者内网IP,或者网关节点之上的负载均衡 gatewayIngressIPs: 192.168.0.100 nodesForGateway: # k8s节点外网IP,没外网IP填写内网IP - externalIP: 192.168.0.100 # k8s节点内网IP internalIP: 192.168.0.100 # k8s节点名称,通过 kubectl get node 获取 name: ecs-c893 # - More nodes for gateway nodesForChaos: # k8s节点名称 - name: ecs-c893 # - More nodes for chaos containerdRuntimePath: /var/run/k3s/containerd # containerd.sock文件路径 Component: rbd_app_ui: env: - name: DISABLE_DEFAULT_APP_MARKET # 禁用默认在线开源应用商店 value: "true" EOL
5.2 离线安装 Rainbond
- 执行命令离线安装 Rainbond。
helm install rainbond ./rainbond-chart --create-namespace -n rbd-system -f values.yaml
- 执行完安装命令后,在集群中执行以下命令查看安装状态。
watch kubectl get pod -n rbd-system
- 当名称包含
rbd-app-ui
的 Pod 为 Running 状态时即安装成功。如下所示,Podrbd-app-ui-678979c995-94kzb
为 Running 状态时,表示 Rainbond 安装成功。
如果你需要在离线环境下使用 Rainbond 的源码构建功能,你需要额外下载离线源码构建的离线包,请阅读 Rainbond 离线环境下使用源码构建文档。
六、部署验证
6.1 访问 Rainbond 验证
-
使用
gatewayIngressIPs
配置的 IP 地址访问 Rainbond,例如:http://192.168.0.100:7070
。 -
填写 Rainbond 注册信息并登录 Rainbond。
-
查看集群信息。
6.2 快速部署测试应用
以 Nginx 为例,在工作空间 -> 容器,通过 Nginx 镜像部署个应用。如下:
最后
按照本指南操作,即使是非技术背景的管理者也能独立完成国产化容器平台的落地。接下来,通过 Rainbond 图形化界面,无需编写代码即可将企业应用轻松迁移至 Rainbond。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
是时候跟虚拟机说再见了?
在企业IT架构的历史长河中,虚拟机(VM)曾是不可或缺的基石。它让物理服务器的利用率大幅提升,也让“资源隔离”“弹性伸缩”这些今天看似理所当然的能力成为可能。但随着技术进步,企业IT的需求正经历一场深刻变革:更快的交付、更高的资源利用率、更细致的权限管理,以及对软件资产化的强烈诉求。于是,“虚拟机还适合未来企业IT吗?”这个问题,开始被越来越多的技术决策者认真思考。 虚拟机的黄金时代与瓶颈 虚拟机的优势毋庸置疑: 资源隔离:不同业务、不同团队可以运行在各自的虚拟机里,互不干扰。 灵活分配:可以按需“划分”CPU、内存,满足不同业务的需求。 兼容传统应用:老旧软件可以原样运行,无需大规模改造。 但随着企业IT环境变得更加复杂,这些优势逐渐变成了限制: 资源利用率难以进一步提升:虚拟机粒度太粗,容易导致资源浪费。 运维复杂度高:每个虚拟机都像一个小型数据中心,升级、迁移、扩容都很繁琐。 交付效率低:供应商交付、测试、上线、升级等流程缺乏标准化和自动化,协作成本高。 软件资产沉淀不足:交付成果分散在各个虚拟机里,难以统一管理和复用。 技术趋势:从“机器为中心”到“应用为中心” 云原生、Dev...
- 下一篇
玩转 Databend UDF
引言 Databend 作为新一代云原生数据仓库,提供了六百多个内置函数,满足了大部分用户的需求。然而,随着业务的增长,需求也变的日新月异,内置的函数可能无法服务用户变化的需求。在这种场景下, Databend 提供了多种用户自定义函数(UDF)实现方式,满足不同场景下的数据处理需求。 本文将深入探讨三种 UDF 形态:Lambda UDF、UDF Script 和 External UDF Server,并通过具体的案例展示它们的实现方式,最后进行性能对比分析。 Lambda UDF:纯 SQL 定义的函数语法糖 Lambda UDF 是 Databend 中最简单的 UDF 形式,完全通过 SQL 语句定义和执行表达式,适合简单的数据转换和计算。 我们可以在 SQL 中定义一个闭包函数,然后进行调用。 Lambda UDF 示例: 🐳 root@default:) CREATE FUNCTION plus_3 AS (a,b,c) -> a + b + c; 🐳 root@default:) select plus_3(1,2,3); ╭─────────────...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2整合Thymeleaf,官方推荐html解决方案