ITPub博客

首页 > 云计算 > Docker/K8 > 鲲鹏Arm+麒麟V10,国产化信创 K8s 离线部署保姆级教程

鲲鹏Arm+麒麟V10,国产化信创 K8s 离线部署保姆级教程

原创 Docker/K8 作者:rainbond 时间:2025-05-30 21:00:41 0 删除 编辑

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. 1. 创建 RKE2 配置文件目录。
mkdir -p /etc/rancher/rke2/config.yaml.d
  1. 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. 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. 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. 1. 准备安装目录。
mkdir /root/artifacts-rke2
  1. 1. 将  rke2、rke2-images、sha256sum 移动到一个目录中,如下所示:


mv
 install
.
sh rke2
*
 
sha256sum
*
 
/
root
/
artifacts
-
rke2

cd   / root / artifacts - rke2
  1. 1. 执行安装命令。
INSTALL_RKE2_ARTIFACT_PATH=/root/artifacts-rke2 sh install.sh
  1. 1. 启动 RKE2 服务。
systemctl enable rke2-server.service && systemctl start --no-block rke2-server.service
  1. 1. 查看启动日志,大概需要 5-10 分钟才能完全启动。
journalctl -fu rke2-server

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

  1. 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. 1. 验证 K8s 集群状态。


kubectl get node

kubectl get pod  - n kube - system

五、离线部署 Rainbond V6

5.1 配置 Rainbond 安装参数

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

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

六、部署验证

6.1 访问 Rainbond 验证

  1. 1. 使用  gatewayIngressIPs 配置的 IP 地址访问 Rainbond,例如:  http://192.168.0.100:7070。
  2. 2. 填写 Rainbond 注册信息并登录 Rainbond。
  3. 3. 查看集群信息。

6.2 快速部署测试应用

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

最后

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

  • • 官网:https://www.rainbond.com
  • • Github:https://github.com/goodrain/rainbond


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70008902/viewspace-3086381/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
不用懂 Kubernetes 的云原生应用管理平台

注册时间:2021-10-22

  • 博文量
    91
  • 访问量
    50175