历史版本13 :工程部署推荐环境及配置 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

为了满足企业高可用和高并发的业务需求,帆软支持单机和集群部署方式。

并可以根据具体的业务负载情况,推荐对应的部署架构,以保证业务的正常稳定运行。

本文根据用户并发数和服务器资源,推荐不同的最佳部署方案。

部署方案说明:

1)本文所列出的部署方案,均为工程和组件独占服务器时的配置要求(即该服务器中不再安装其他内容)。

  • 帆软单机架构为「工程节点+配置库(外接finedb)」

  • 帆软直连/抽取集群架构为「工程节点+负载均衡+状态服务器+文件服务器+配置库(外接finedb)」,架构中各个应用组件,需要针对不同场景进行选择和搭配。

  • 在实际部署时,可任意选择技术路线支持范围内的软硬件环境。

2)考虑到部分用户的服务器资源紧张。

  • 对于工程节点部署方案,本文分别提供推荐配置和最低配置要求。如资源充足,使用推荐配置;如资源紧张,必须至少满足最低配置。

  • 对于集群部署方案,本文分别提供高可用和非高可用部署方案。如资源充足,推荐使用高可用部署方案;如资源紧张,可考虑非高可用部署方案。

3)单机工程,无法避免会出现小概率故障时的不可用情况,如需保障高可用建议优先选择集群架构部署。

系统性能说明:

1)工程节点数:

  • 集群场景下,随着节点数增加,系统能处理的并发数也增加,模板的平均响应时间相近。

  • 双节点集群的并发数为单机的两倍、三节点集群的并发数为单机的三倍。

2)模板性能:

  • 单机场景下,JVM 内存增加,模板的响应时间减少。

  • 集群场景下,各个节点的并发数相近时,模板的平均响应时间相近。

  • 平台鉴权预览的方式比不走平台鉴权预览的方式性能差,因为不同用户之间不能共享同一结果缓存。

2. 工程服务器环境编辑

2.1 服务器通用要求

可使用 集群环境检测工具 检查下系统环境是否符合部署的要求

配置项
推荐配置
服务器类型Linux 服务器
系统版本CentOS 7.3 / Ubuntu 18.04.4 及以上
系统内核3.10 及以上
系统架构X86_64
可用磁盘空间

根据数据量设置每个节点所在服务器可用磁盘空间

其中根目录可用磁盘不可小于40G

数据量为0~500万行,可用磁盘控件

数据量(行)可用磁盘空间
0~500w100~300G
500w~1000w300~600G
1000w~1亿600G~1.5T
中间件

Tomcat8.5.57 及以上版本,推荐使用最新版本

JDK 1.8,8u221 以上,推荐使用最新版本

磁盘类型

SSD固态硬盘

FineBI 是 IO 密集型应用,对磁盘 IO 依赖较大,因此推荐使用本地磁盘或固态硬盘

磁盘读写速度100M/S以上
IOPS吞吐量10K以上

2.2 不同节点数配置要求

一个服务器只能部署集群的一个工程节点,因此需要几个工程节点就要准备几个服务器。

用户维度说明:

用户类型
说明
日活用户数一日之内,FineBI工程登录的用户数
在线用户数同一时刻,FineBI工程上登录了的用户数
并发用户数

同一时刻,在FineBI工程上做操作的用户数

即多少用户同时对服务器发送请求,即服务器同时处理多少用户发送来的请求

lic注册时的并发限制

根据 IP 地址进行统计,服务器从请求中获取 IP 地址,作为一个并发key

主要限制访问系统的累计 IP 数。Lic 的该参数和下文用户数无关联

本文以三种场景进行配置推荐。若您的FineBI工程涉及多个场景,选择其中的最高配置作为推荐配置即可。

用户需要先参考 直连数据&抽数数据简介 判断自己使用的是「实时数据」还是「抽取数据」。

2.2.1 直连数据

场景说明:只使用直连数据,不使用抽取数据

集群节点间、节点与其他组件间带宽 1000Mb/s。

根据工程的并发及数据源 DB 的计算能力,落在多个配置区间时选较高的配置;

编辑并发对应缓存不命中;

并发用户数/秒的上限对应缓存命中,下限对应缓存不命中。

日活用户数

在线用户数

每小时

并发用户数

每秒

编辑

并发数

数据源计算能力

每秒处理的计算数

推荐配置
最低配置
500<100<20<20<10单机,节点满足:

CPU:8 核 16 线程 2.5GHZ

JVM 内存:16GB

物理内存:24G

单机,节点满足:

CPU:4 核 8 线程 2.5GHZ

JVM 内存:8GB

物理内存:12G

2K100~1K40~9010~4010~20

2节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:16GB

物理内存:32G

单机,节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:16GB

物理内存:24G

3K600~1.5K60~13030~60≥30

3节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:16GB

物理内存:24G

2节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:24GB

物理内存:48G

4K600~2K60~17060~80≥30

4节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:16GB

物理内存:24G

3节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:24GB

物理内存:48G

2.2.2 抽取数据:高日活自助分析

场景说明:日活用户较高的FineBI工程,用户自助分析数据(对应 FineBI 查询不命中缓存)。

节点数概要估算并发:在线用户数 Y = 300 * (节点数 X-1) + 400 。

磁盘吞吐率和带宽要求大于 100MB/s(普通本地硬盘 HDD 性能),推荐 SSD固态硬盘。

JVM 内存≠整机内存,推荐 JVM 内存占整机内存的 2/3 ~ 3/4 。

在线用户数

每小时

并发用户数

每秒

编辑

并发数

表数量/表大小

推荐配置
最低配置
<100<20<20<100张/<1T单机,节点满足:

CPU:8 核 16 线程 2.5GHZ

JVM 内存:16GB

物理内存:32G

单机,节点满足:

CPU:8 核 16 线程 2.5GHZ

JVM 内存:16GB

物理内存:32G

300~1K20~7010~40<100张/<1T

2节点集群,每个节点满足:

CPU:8 核 16 线程 2.5GHZ

JVM 内存:16GB

物理内存:32G

单机,节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

600~2K40~12030~60>2k张/>1T

2节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

2节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:24GB

物理内存:48G

900~3K50~16050~80>4k张/>2T

3节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

2节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:24GB

物理内存:48G

1.2K~3.5K60~19070~100>5k张/>3T

4节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

3节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

1.5K~4K80~22080~200>5k张/>3T

5节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

4节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

2.2.3 抽取数据:并发查看仪表板

场景:对应用户并发查看报告等场景。即通常5-10分钟内累计访问用户数Y(对应FineBI查询缓存全命中,即多个相同计算请求引擎可以直接命中返回结果)。

节点数概要估算并发:  5分钟并发用户数 Y = 380*节点数X

每秒请求用户数达到160时,对负载均衡服务器的下载速度要求较高,需要达到100MB/s。

JVM 内存≠整机内存,推荐 JVM 内存占整机内存的 2/3 ~ 3/4 。

用户数

每5分钟

用户数

每秒

推荐配置
最低配置
~400402节点集群,每个节点满足:

CPU:8 核 16 线程 2.5GHZ

JVM 内存:16GB

物理内存:32G

单机,节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

400~80080

2节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

2节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:24GB

物理内存:48G

800~1.1K110

3节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

3节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:24GB

物理内存:48G

1.1K~1.6K160

4节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

3节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

1.6K~2K190

5节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

4节点集群,每个节点满足:

CPU:16 核 32 线程 2.5GHZ

JVM 内存:32GB

物理内存:64G

3. 其他组件服务器环境编辑

3.1 单机

适用对象:

单机工程

  • 应用服务器:1节点

  • finedb配置数据库:MySQL5

配置参数:

帆软单机架构为「工程节点+配置库(外接finedb)」

本节仅介绍单机其他组件的推荐配置,FineBI工程节点服务器相关配置要求请参考第二章。

配置项
推荐配置
配置数据库服务器(finedb)
服务器数量

1

如有条件,建议外接配置库组件部署在独立服务器上

如条件不足,可将外接配置库组件与FineBI工程部署在同一服务器上

但至少确保该服务器为FineBI工程和数据库独占,不再部署其他应用

操作系统Linux 服务器

系统版本:CentOS 7.3 / Ubuntu 18.04.4 及以上

系统内核:3.10 及以上

系统架构:X86_64

网络要求1)配置库和应用工程建议在同一网段,避免网络波动等问题

2)配置库和应用工程如处于公网环境,带宽需在10M以上

3)配置库和应用工程之间需要网络畅通,互相端口可访问

数据库数量

1

数据库类型MySQL5 数据库

数据库版本:5.5.31、5.5.46、5.5.56、5.6.22、5.6.31、5.7.16 版本

数据库驱动:5.1.37 版本

数据库字符集:utf8

数据库排序规则:utf8_bin

数据库名称:只允许包含数字、字母、下划线和「.」

数据库权限:create、delete、alter、update、select、insert、index

CPU2.5GHz以上

8核16线程

物理内存8g
可用磁盘空间

200G以上

网速100Mbps
磁盘读写速度100MB/s

3.2 标准直连/标准抽取集群

适用对象:

标准直连集群/标准抽取集群

  • 应用服务器:不少于2节点

  • 状态服务器:Redis单机

  • 文件服务器:SFTP

  • 负载均衡:Nginx

  • 配置数据库:MySQL

配置参数:

帆软集群架构为「工程节点+负载均衡+状态服务器+文件服务器+配置库(外接finedb)」

本节仅介绍集群其他组件的推荐配置,FineBI工程节点服务器相关配置要求请参考第二章。

配置项
推荐配置
共用要求

本节列出的要求,是每一种集群组件都必须满足的要求。

服务器数量

如有条件,建议负载均衡、状态服务器、文件服务器、外接配置库组件分别部署在不同的独立服务器上

如条件不足,至少确保有单独的服务器部署这些组件,且组件独占该服务器,不可与FineBI工程部署在同一服务器上

操作系统Linux 服务器

系统版本:CentOS 7.3 / Ubuntu 18.04.4 及以上

系统内核:3.10 及以上

系统架构:X86_64

可使用 集群环境检测工具 检查下系统环境是否符合集群部署的要求

GCC编译器

Redis 和 Nginx 在 Linux 系统上的部署均依赖 GCC 编译器

请保证系统具备 GCC 编译环境

查询命令:gcc -v

安装命令:yum install gcc gcc-c++

网络要求

1)各个组件和应用工程建议在同一网段,避免网络波动等问题

2)各个组件和应用工程如处于公网环境,带宽需在10M以上

3)各个组件和应用工程之间需要网络畅通,互相端口可访问

状态服务器
服务器数量

1

部署方案

redis单机

JVM/物理内存4g/8g
CPU2.5GHz以上

8核16线程

可用磁盘空间

100G以上

其中根目录可用磁盘不可小于40G

文件服务器
服务器数量1
部署方案SFTP
物理内存8G
CPU2.5GHz以上

8核16线程

可用磁盘空间

500G~1T

其中根目录可用磁盘不可小于40G

后续请根据使用情况扩展

注意事项Linux系统安装FTP时需要使用最高用户(root),否则不能进行,若不安装FTP则可不考虑这一要求
负载均衡
服务器数量1
部署方案

Nginx

版本推荐1.15.6

物理内存8G
CPU2.5GHz以上

8核16线程

可用磁盘空间

100G以上

其中根目录可用磁盘不可小于40G

配置数据库服务器(finedb)
服务器数量

1

数据库类型MySQL5 数据库

数据库版本:5.5.31、5.5.46、5.5.56、5.6.22、5.6.31、5.7.16 版本

数据库驱动:5.1.37 版本

数据库字符集:utf8

数据库排序规则:utf8_bin

数据库名称:只允许包含数字、字母、下划线和「.」

数据库权限:create、delete、alter、update、select、insert、index

CPU2.5GHz以上

8核16线程

物理内存8g
可用磁盘空间

200G以上

网速100Mbps
磁盘读写速度100MB/s

3.3 高可用抽取集群

适用对象:

高可用抽取集群

  • 应用服务器:不少于2节点

  • 状态服务器:Redis集群,3主3从

  • 文件服务器:NAS

  • 负载均衡:Nginx+Keepalived

  • 配置数据库:PostgreSQL

配置参数:

帆软集群架构为「工程节点+负载均衡+状态服务器+文件服务器+配置库(外接finedb)」

本节仅介绍集群其他组件的推荐配置,FineBI工程节点服务器相关配置要求请参考第二章。

配置项
推荐配置

共用要求

本节列出的要求,是每一种集群组件都必须满足的要求。

服务器数量

如有条件,建议负载均衡、状态服务器、文件服务器、外接配置库组件分别部署在不同的独立服务器上

如条件不足,至少确保有单独的服务器部署这些组件,且组件独占该服务器,不可与FineBI工程部署在同一服务器上

操作系统

Linux 服务器

系统版本:CentOS 7.3 / Ubuntu 18.04.4 及以上

系统内核:3.10 及以上

系统架构:X86_64

可使用 集群环境检测工具 检查下系统环境是否符合集群部署的要求

GCC编译器

Redis 和 Nginx 在 Linux 系统上的部署均依赖 GCC 编译器

请保证系统具备 GCC 编译环境

查询命令:gcc -v

安装命令:yum install gcc gcc-c++

网络要求

1)各个组件和应用工程建议在同一网段,避免网络波动等问题

2)各个组件和应用工程如处于公网环境,带宽需在10M以上

3)各个组件和应用工程之间需要网络畅通,互相端口可访问

状态服务器
服务器数量

redis集群,三主三从

如有条件,准备6台服务器,每台服务器部署一个节点

如条件不足,准备3台服务器,每台服务器部署一主一从节点

JVM/物理内存4g/8g
CPU2.5GHz以上

8核16线程

可用磁盘空间

100G以上

其中根目录可用磁盘不可小于40G

文件服务器
服务器数量1
部署方案NAS
物理内存8G
CPU2.5GHz以上

8核16线程

可用磁盘空间

500G~1T

其中根目录可用磁盘不可小于40G

后续请根据使用情况扩展

负载均衡
服务器数量2
部署方案

Keepalived+Nginx

Nginx版本推荐1.15.6

物理内存8G
CPU2.5GHz以上

8核16线程

可用磁盘空间

100G以上

其中根目录可用磁盘不可小于40G

配置数据库服务器(finedb)
服务器数量

2

数据库类型高可用数据库,主备模式

数据库权限:create、delete、alter、update、select、insert、index

CPU2.5GHz以上

8核16线程

物理内存8g
可用磁盘空间

200G以上

网速100Mbps
磁盘读写速度100MB/s