跳到主要内容
版本:V6-latest

在阿里云 ACK 上安装 Rainbond

本文将手把手教你如何在 阿里云 ACK(Alibaba Cloud Kubernetes)集群上安装 Rainbond。无论你是第一次接触 Kubernetes,还是 Rainbond 新用户,都能顺利完成安装。

提示

场景说明

  • 如果你已经有 Rainbond 平台,想再对接一个 ACK 集群,请在平台管理 → 集群管理 → 添加集群 → 选择 ACK 集群,然后按照下文步骤操作。
  • 如果你是第一次安装 Rainbond,也可以直接参考本指南。

一、准备工作

1. 什么是 ACK?

阿里云 ACK(Alibaba Cloud Kubernetes)是阿里云提供的托管 Kubernetes 服务,帮助你快速搭建和管理容器集群。

2. 创建 ACK 集群

  1. 登录 阿里云控制台 → 容器服务 ACK。
  2. 点击"创建集群",选择 ACK 托管集群 类型。
  3. 按需选择节点配置、网络、地域等。
注意
  • 不要安装 Ingress 组件,否则会与 Rainbond 冲突。
  • 容器运行时请选择 Containerd

3. 安装必要工具

在任意 ACK 节点上,安装:

  • Kubectl(Kubernetes 命令行工具)
  • Helm(Kubernetes 包管理工具)

建议提前配置好 kubectl 连接到你的 ACK 集群。

4. 可选资源准备

4.1 SLB 负载均衡(推荐)

  • 购买阿里云 SLB 负载均衡实例。
  • 用于代理 Rainbond 网关流量,提升高可用性。
  • 添加必要端口:80443606070708443

4.2 RDS MySQL(可选)

  • Rainbond 默认自带 MySQL,如需高可用或数据持久化,建议购买阿里云 RDS MySQL
  • 要求:MySQL 8.0+,需创建 consoleregion 两个数据库。

4.3 ACR 镜像仓库(可选)

  • Rainbond 默认自带 goodrain.me 私有镜像仓库。
  • 如需更快拉取镜像,建议购买阿里云 ACR 镜像仓库。

二、安装 Rainbond

1. 添加 Rainbond Helm 仓库

helm repo add rainbond https://chart.rainbond.com
helm repo update

2. 准备 values.yaml 配置文件

编辑 values.yaml 文件,填写以下关键信息:

vim values.yaml
Cluster:
gatewayIngressIPs: 172.20.251.93 # SLB 负载均衡的 IP,或网关节点的外网 IP

# 绑定节点为 Rainbond 网关节点
nodesForGateway:
- externalIP: 172.20.251.93 # ACK 节点外网IP
internalIP: 172.20.251.93 # ACK 节点内网IP
name: k8s-node1 # ACK 节点名称
# 绑定节点为 Rainbond 构建节点
nodesForChaos:
- name: k8s-node1 # ACK 节点名称

# 使用 ACR 镜像仓库(如有)
imageHub:
enable: true
domain: <你的ACR域名>
namespace: <你的命名空间>
username: <你的用户名>
password: <你的密码>

# 使用 RDS MySQL 数据库(如有)
regionDatabase:
enable: true
host: <你的RDS地址>
port: 3306
name: region
username: <你的用户名>
password: <你的密码>

uiDatabase:
enable: true
host: <你的RDS地址>
port: 3306
name: console
username: <你的用户名>
password: <你的密码>

说明:

  • gatewayIngressIPs:Rainbond 网关对外访问的 IP,建议填写 SLB 的公网 IP。
  • nodesForGateway:指定哪个节点作为网关节点。
  • nodesForChaos:指定哪个节点作为构建节点。
  • imageHub/regionDatabase/uiDatabase:如不使用外部服务,可不填写。

3. 安装 Rainbond

helm install rainbond rainbond/rainbond --create-namespace -n rbd-system -f values.yaml

4. 查看安装状态

watch kubectl get pod -n rbd-system

等待所有 Pod 状态为 Running,尤其是 rbd-app-ui 相关 Pod。

安装成功结果示例
NAME                                      READY   STATUS    RESTARTS   AGE
local-path-provisioner-78d88b6df5-wkr84 1/1 Running 0 5m37s
minio-0 1/1 Running 0 5m37s
rainbond-operator-59ff8bb988-nlqrt 1/1 Running 0 5m56s
rbd-api-5466bd748f-brqmv 1/1 Running 0 5m15s
rbd-app-ui-5577b8ff88-fpnnv 1/1 Running 0 4m39s
rbd-chaos-6828h 1/1 Running 0 5m12s
rbd-db-0 1/1 Running 0 5m35s
rbd-gateway-69bfb68f4d-7xd9n 2/2 Running 0 5m34s
rbd-hub-8457697d4c-fqwgn 1/1 Running 0 5m28s
rbd-monitor-0 1/1 Running 0 5m27s
rbd-mq-5b6f94b695-gmdnn 1/1 Running 0 5m25s
rbd-worker-7db9f9cccc-s9wml 1/1 Running 0 5m22s

5. 访问 Rainbond

使用 gatewayIngressIPs 配置的 IP 地址访问 Rainbond:

http://<gatewayIngressIPs>:7070

三、常见问题与排查

1. Pod 长时间 Pending 或 CrashLoopBackOff?

  • 检查节点资源是否充足(CPU/内存)。
  • 检查 values.yaml 配置是否正确,尤其是 IP、节点名称。
  • 查看 Pod 详细日志:
    kubectl describe pod <pod-name> -n rbd-system
    kubectl logs <pod-name> -n rbd-system

2. 无法访问 Rainbond 网页?

  • 检查 SLB 或节点安全组端口是否已放通。
  • 检查 gatewayIngressIPs 是否填写正确。
  • 检查 rbd-gateway Pod 是否 Running。

3. 镜像拉取失败?

  • 检查 imageHub 配置是否正确。
  • 检查 ACR 仓库是否授权 ACK 集群访问。

4. 数据库连接失败?

  • 检查 RDS MySQL 的网络和账号权限。
  • 检查 regionDatabase/uiDatabase 配置。

四、下一步

Rainbond 安装完成后,你可以参考快速入门部署你的第一个应用。