该配置需求适用于基于私有服务器部署高可用的 Rainbond 集群。

一、操作系统要求

系统版本内核版本OpenSSH版本
Ubuntu16.04/18.044.0+7.0+
CentOS7.*4.0+7.0+

Rainbond 支持基于多种 Linux 发行版部署,如果使用 CentOS 7 操作系统,请务必升级操作系统内核;操作步骤参考 CentOS系统内核升级攻略

二、节点属性概述

节点类型属性说明如下:

属性类别属性概述
Kubernetes管理节点Kubernetes 管理节点与 Rainbond 管理服务混合部署
Kubernetes计算节点为工作负载提供计算资源
KubernetesETCD节点用于保存Kubernetes集群所有的网络配置和对象的状态信息
Rainbond网关节点云上应用访问的入口
Rainbond构建节点Rainbond平台执行源码构建任务节点
Rainbond数据库节点在集群外搭建数据库,供平台存储元数据
Rainbond存储节点部署开源版本 GlusterFS 集群,为平台提供共享存储

三、硬件需求详情

生产服务器配置需求

节点属性CPU内存服务器数量备注
管理节点4vCPU8G至少2台
计算节点16vCPU64G至少2台根据业务情况分配资源,后续可进行扩容
网关节点4vCPU16G至少2台
构建节点4vCPU16G至少2台
ETCD节点4vCPU8G至少3台
数据库节点2vCPU4G至少2台
存储节点4vCPU8G至少3台

在生产环境下,可以将所有的角色分离,实现一个完全拆分,各自功能专一的架构;也可以将角色属性复用,用最少的服务器搭建一个复用式的集群。

四、磁盘分区

磁盘分区建议使用逻辑卷lvm,便于后期扩容。

  • 各节点磁盘分区详情如下:

管理节点

磁盘分区Size说明
系统盘/100G系统根分区
数据盘/var/lib/docker100Gdocker分区

计算节点

磁盘分区Size说明
系统盘/100G系统根分区
数据盘/var/lib/docker300Gdocker分区

ETCD节点

磁盘分区Size说明
系统盘/100G系统根分区
数据盘/var/lib/etcd100Getcd数据分区,推荐使用ssd

网关节点

磁盘分区Size说明
系统盘/100G系统根分区
数据盘/var/lib/docker100Gdocker分区

构建节点

磁盘分区Size说明
系统盘/100G系统根分区
数据盘/var/lib/docker300Gdocker分区
数据盘/cache300G(按需)源码构建缓存数据分区,如在平台使用源码构建功能较多的情况下可提升磁盘容量

数据库节点

磁盘分区Size说明
系统盘/100G系统根分区
数据盘/var/lib/mysql100GMySQL数据分区

存储节点

磁盘分区Size说明
系统盘/100G系统根分区
数据盘/var/lib/docker100Gdocker分区
数据盘/data1T+共享存储数据分区

五、其他资源及要求

网关高可用

Rainbond网关节点需要使用 Keepalived负载均衡 保证高可用性,若服务器网络不支持Keepalived服务,则需了解是否有其他的负载均衡服务可用,如阿里云 SLB 负载均衡。

使用 Keepalived 服务时需要准备以下资源:

节点类型资源数量
网关节点同网段虚拟IP1

使用已有负载均衡服务时负载均衡服务需要代理网关节点的80、443、6060、6443、7070、8443 端口。

公网开放

所有节点要求可以访问公网。

泛解析域名

平台会为HTTP类型的应用提供泛解析的域名,默认使用 *.grapps.cn的域名,安装时可自定义该域名,如果使用自定义域名,需要配置自定义泛域名的解析。

集群资源准备完毕后请参考 高可用安装Rainbond集群 文档进行集群部署。