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 参数

  1. 创建 RKE2 配置文件目录。
mkdir -p /etc/rancher/rke2/config.yaml.d
  1. 配置 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
  1. 配置私有镜像仓库,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 集群)

  1. 将 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
  1. 准备安装目录。
mkdir /root/artifacts-rke2
  1. rke2、rke2-images、sha256sum 移动到一个目录中,如下所示:
mv install.sh rke2* sha256sum* /root/artifacts-rke2
cd /root/artifacts-rke2
  1. 执行安装命令。
INSTALL_RKE2_ARTIFACT_PATH=/root/artifacts-rke2 sh install.sh
  1. 启动 RKE2 服务。
systemctl enable rke2-server.service && systemctl start --no-block rke2-server.service
  1. 查看启动日志,大概需要 5-10 分钟才能完全启动。
journalctl -fu rke2-server

4.3 配置 Kubectl(K8s 命令行工具)

  1. 配置 Kubectl 访问。
mkdir /root/.kube
cp /etc/rancher/rke2/rke2.yaml /root/.kube/config
cp /var/lib/rancher/rke2/bin/kubectl /usr/local/bin
  1. 验证 K8s 集群状态。
kubectl get node
kubectl get pod -n kube-system

五、离线部署 Rainbond V6

5.1 配置 Rainbond 安装参数

  1. 创建 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

  1. 执行命令离线安装 Rainbond。
helm install rainbond ./rainbond-chart --create-namespace -n rbd-system -f values.yaml
  1. 执行完安装命令后,在集群中执行以下命令查看安装状态。
watch kubectl get pod -n rbd-system
  1. 当名称包含 rbd-app-ui 的 Pod 为 Running 状态时即安装成功。如下所示,Pod rbd-app-ui-678979c995-94kzb 为 Running 状态时,表示 Rainbond 安装成功。

如果你需要在离线环境下使用 Rainbond 的源码构建功能,你需要额外下载离线源码构建的离线包,请阅读 Rainbond 离线环境下使用源码构建文档

六、部署验证

6.1 访问 Rainbond 验证

  1. 使用 gatewayIngressIPs 配置的 IP 地址访问 Rainbond,例如: http://192.168.0.100:7070

  2. 填写 Rainbond 注册信息并登录 Rainbond。

  3. 查看集群信息。

6.2 快速部署测试应用

以 Nginx 为例,在工作空间 -> 容器,通过 Nginx 镜像部署个应用。如下:

最后

按照本指南操作,即使是非技术背景的管理者也能独立完成国产化容器平台的落地。接下来,通过 Rainbond 图形化界面,无需编写代码即可将企业应用轻松迁移至 Rainbond。

鲲鹏Arm+麒麟V10,国产化信创 K8s 离线部署保姆级教程的更多相关文章

  1. 手把手教你一套完善且高效的k8s离线部署方案

    作者:郝建伟 背景 面对更多项目现场交付,偶而会遇到客户环境不具备公网条件,完全内网部署,这就需要有一套完善且高效的离线部署方案. 系统资源 编号 主机名称 IP 资源类型 CPU 内存 磁盘 01 ...

  2. 【k8s】在AWS EKS部署并通过ALB访问k8s Dashboard保姆级教程

    本教程适用范围 在AWS上使用EKS服务部署k8s Dashboard,并通过ALB访问 EKS集群计算节点采用托管EC2,并使用启动模板. 使用AWS海外账号,us-west-2区域 使用账号默认v ...

  3. 信创要求下,FTP要不要替代?要怎么进行国产化替代?

    信创在国内如火如荼地发展,无论在技术探索和突破上,还是在政策规划上,都朝着更加完善的方向大步迈进.信创目前在从大的方面来说,信创目前主要集中在基础软件.硬件和芯片上,其中基础软件包括操作系统.数据库. ...

  4. 国产化之路-麒麟V10操作系统安装.net core 3.1 sdk

    随着芯片国产化,操作系统国产化,软件国产化的声浪越来越高,公司也已经把开发项目国产化提上了日程,最近搞来了台长城的国产化电脑主机,用来搞试验,安装的是麒麟V10的操作系统,国产化折腾之路就此开始,用的 ...

  5. 信创国产化,试试 Solon v2.2.2

    Solon 是一个高效的 Java 应用开发框架:更快.更小.更简单.它不是 Spring.没有用 Servlet.也无关 JavaEE,是一个有自己接口标准的开放生态.可以为应用软件国产化提供支持, ...

  6. Solon v2.2.6 发布,助力信创国产化

    Solon 是一个高效的 Java 应用开发框架:更快.更小.更简单.它是一个有自己接口标准规范的开放生态,可为应用软件国产化提供支持,助力信创建设. 150来个生态插件,覆盖各种不同的应用开发场景: ...

  7. Solon v2.2.10 发布,助力信创国产化

    Solon 是一个高效的 Java 应用开发框架:更快.更小.更简单.它不是 Spring.没有使用 Servlet.JavaEE 接口,是一个有自己接口标准的开放生态.可以为应用软件国产化提供支持, ...

  8. .NET 在信创常用软件适配清单之中?

    2020年8月份写了一篇文章<.NET Core也是国产化信息系统开发的重要选项>, 这又过去了大半年了,在信创领域发生了很大的变化,今天写这篇文章主要是想从信创常用软件适配清单 看一看. ...

  9. iPhone 6 被盗记录二【写在315前夕:苹果售后福州直信创邺在没有三包的情况下帮小偷翻新、助力小偷换机销赃!无视王法。让人震惊,痛心,憎恨!消费者很受伤很无奈】

    投诉公司: 北京直信创邺数码科技有限公司  标题: 写在315前夕:苹果售后在没有三包的情况下帮小偷翻新.助力小偷换机销赃!无视王法.让人震惊,痛心,憎恨!消费者很受伤很无奈 期望: 还我手机,或者赔 ...

  10. 化鲲为鹏,我有话说 ,鲲鹏ARM架构的优势

    首先我在想为什么会用到鲲鹏,我个人认为最重要的还是要掌握自主研发的能力,打破国外关键技术的封锁.鲲鹏芯片完全是华为于自主设计内核,华为云Kunpeng服务器关键计算芯片全自研,提供产品可持续供应能力. ...

随机推荐

  1. 【由技及道】CI/CD的量子纠缠术:Jenkins与Gitea的自动化交响曲【人工智障AI2077的开发日志】

    摘要:当代码提交触发量子涟漪,当构建流水线穿越时空维度--欢迎来到自动化构建的十一维世界.本文记录一个未来AI如何用Jenkins和Gitea搭建量子纠缠式CI/CD管道,让每次代码提交都成为时空交响 ...

  2. Selenium KPI接口 警告弹 -alert/confirm/promp

    应用场景: 有些页面进入后自带弹窗提醒功能需要确认,这时候就需要将焦点定位到alert弹窗上. 使用格式: alert=driver.switchtoalert() alert.accept() 实现 ...

  3. antd vue 嵌套表格之实现每次展开一行

    在项目中遇到一个需求,就是使用嵌套子表格时,每次只展示一行,且展开一行另一行收起,直接上代码吧,顺便记录一下 这里需要注意,我们要在外层table组件添加如图三个属性,缺一不可,咳咳,不用杠我那个&l ...

  4. selenium自动化测试-获取黄金实时价格

    最近黄金比较火爆,想要获取黄金实时价格,方便后续监控预警价格,一般实时刷新的网页数据都是动态加载的,需要用到selenium自动化测试获取动态页面数据. 昨天学会了获取动态网页小说内容,同理也可以获取 ...

  5. python正则表达式笔记1

    最近工作中经常用到正则表达式处理数据,慢慢发现了正则表达式的强大功能,尤其在数据处理工作中,记录下来分享给大家. 一. 正则表达式语法介绍 正则表达式(或 RE)指定了一组与之匹配的字符串:模块内的函 ...

  6. 一些 NuGet 包

    Some RestSharp Simple REST and HTTP API Client Newtonsoft.Json Json.NET is a popular high-performanc ...

  7. ESP32系列,IDF官方实例——外设:通用GPIO

    示例位于 \examples\peripherals\gpio\generic_gpio 文件夹内 GPIO示例逻辑简单,直接看代码理解. /* GPIO示例 此示例代码位于公共域(或CC0许可,由您 ...

  8. eolinker校验规则之 Json Path定位:返回值内有多项同类参数,检验其中一个参数值

    比如创建商品后,查询商品是否生成,执行完创建商品接口后就需要再执行查询商品接口. 查询接口查询出来的数据可能包括所有商品数据或者有同名商品数据,所有整个返回结果内可能包含多个同名不同商品id的数据 往 ...

  9. DPDI(Dispatch PDI)kettle调度管理平台升级预告

    亲爱的DPDI用户们,久等了!Dispatch PDI全新升级,焕然一新的UI页面计划于2025.03.23正式上线.这一次,我们精心打磨每一个细节,只为给您带来前所未有的丝滑体验,让每一次浏览都成为 ...

  10. 20241105,LeetCode 每日一题,用 Go 实现两数之和的非暴力解法

    题目 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标. 你可以假设每种输入只会对应一个答案,并且你不能 ...