概述
本文将介绍单机和集群工程部署的基本流程,方便大家直观感受部署具体包含哪些操作。
本文面向正式工程,因此提供了配置外接数据库、安全加固等后续操作。此类后续操作均为正式工程的建议操作,不强制要求。
本文仅介绍Linux系统&Tomcat中间件下的部署方案,其他不赘述。
注:推荐用户使用Linux系统服务器部署正式工程,原因请参见:Linux和Windows对比分析
第一步:确定部署工程节点数
帆软应用支持单机和集群部署,集群则为多个工程节点。
一个服务器只能部署集群的一个工程节点,因此需要几个工程节点就要准备几个服务器。
本文以三种场景进行配置推荐。若您的FineBI工程涉及多个场景,选择其中的最高配置作为推荐配置即可。
用户需要先参考 直连数据&抽数数据简介 判断自己使用的是「实时数据」还是「抽取数据」。
请按照工程预计并发数,确定部署单机还是集群,确定部署多少个工程节点。
用户维度说明:
用户类型 | 说明 |
---|---|
日活用户数 | 一日之内,FineBI工程登录的用户数 |
在线用户数 | 同一时刻,FineBI工程上登录了的用户数 |
并发用户数 | 同一时刻,在FineBI工程上做操作的用户数 即多少用户同时对服务器发送请求,即服务器同时处理多少用户发送来的请求 |
lic注册时的并发限制 | 根据 IP 地址而非用户数量进行统计,服务器从请求中获取 IP 地址,作为一个并发值 Lic 的该参数和下文用户数无关联 |
直连数据
场景说明:只使用直连数据,不使用抽取数据
集群节点间、节点与其他组件间带宽 1000Mb/s。
根据工程的并发及数据源 DB 的计算能力,落在多个配置区间时选较高的配置。
编辑并发对应缓存不命中。
并发用户数/秒的上限对应缓存命中,下限对应缓存不命中。
日活用户数 | 在线用户数 每小时 | 并发用户数 每秒 | 编辑 并发数 | 数据源计算能力 每秒处理的计算数 | 推荐配置 | 最低配置 |
---|---|---|---|---|---|---|
500 | <100 | <20 | <20 | <10 | 单机,节点满足: CPU:8 核 16 线程 2.5GHZ JVM 内存:16GB 物理内存:24G | 单机,节点满足: CPU:4 核 8 线程 2.5GHZ JVM 内存:8GB 物理内存:12G |
2K | 100~1K | 40~90 | 10~40 | 10~20 | 2节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:16GB 物理内存:32G | 单机,节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:16GB 物理内存:24G |
3K | 600~1.5K | 60~130 | 30~60 | ≥30 | 3节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:16GB 物理内存:24G | 2节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:24GB 物理内存:48G |
4K | 600~2K | 60~170 | 60~80 | ≥30 | 4节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:16GB 物理内存:24G | 3节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:24GB 物理内存:48G |
抽取数据:高日活自助分析
场景说明:日活用户较高的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~1K | 20~70 | 10~40 | <100张/<1T | 2节点集群,每个节点满足: CPU:8 核 16 线程 2.5GHZ JVM 内存:16GB 物理内存:32G | 单机,节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G |
600~2K | 40~120 | 30~60 | >2k张/>1T | 2节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G | 2节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:24GB 物理内存:48G |
900~3K | 50~160 | 50~80 | >4k张/>2T | 3节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G | 2节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:24GB 物理内存:48G |
1.2K~3.5K | 60~190 | 70~100 | >5k张/>3T | 4节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G | 3节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G |
1.5K~4K | 80~220 | 80~200 | >5k张/>3T | 5节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G | 4节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G |
抽取数据:并发查看仪表板
场景:对应用户并发查看报告等场景。即通常5-10分钟内累计访问用户数Y(对应FineBI查询缓存全命中,即多个相同计算请求,引擎可以直接命中返回结果)。
节点数概要估算并发:5分钟并发用户数 Y = 380*节点数X
每秒请求用户数达到160时,对负载均衡服务器的下载速度要求较高,需要达到100MB/s。
JVM 内存≠整机内存,推荐 JVM 内存占整机内存的 2/3 ~ 3/4 。
用户数 每5分钟 | 用户数 每秒 | 推荐配置 | 最低配置 |
---|---|---|---|
~400 | 40 | 2节点集群,每个节点满足: CPU:8 核 16 线程 2.5GHZ JVM 内存:16GB 物理内存:32G | 单机,节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G |
400~800 | 80 | 2节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G | 2节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:24GB 物理内存:48G |
800~1.1K | 110 | 3节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G | 3节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:24GB 物理内存:48G |
1.1K~1.6K | 160 | 4节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G | 3节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G |
1.6K~2K | 190 | 5节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G | 4节点集群,每个节点满足: CPU:16 核 32 线程 2.5GHZ JVM 内存:32GB 物理内存:64G |
第二步:选择工程部署方式
请根据各种部署方式的优缺点,选择适合自己的部署方式。
单机部署提供三种部署方式:容器化部署、部署包部署、独立部署
集群部署提供四种部署方式:容器化部署标准抽取集群、手动部署标准抽取集群、手动部署高可用抽取集群、手动部署标准直连集群
工程类型 | 部署方式 | 说明 | |
---|---|---|---|
单机 | 容器化部署 | ★★★★★ 优点: 部署成本低:一键部署,自带JDK、Tomcat、FineBI工程和外接数据库 启动成本低:部署成功后默认添加好启动参数,无需手动配置 异常影响小:工程环境容器化,每个工程的环境相互隔离,出现异常时影响范围小 运维成本低:运维平台自动接入工程,对工程进行自动监控预警,运维成本低 | |
部署包部署 | 优点: 部署成本低:一键部署,自带JDK、Tomcat、FineBI工程 限制项: 只支持Tomcat部署,只支持x86和arm架构 部署完需要手动配置参数,以保证系统稳定运行 无法及时对系统运行情况进行监控告警 | ||
独立部署 | 优点: 不限制中间件,不限制服务器架构 限制项: 需提前部署准备JDK环境和Tomcat中间件 需提前准备好FineBI工程包 部署完需要手动配置参数,以保证系统稳定运行 无法及时对系统运行情况进行监控告警 | ||
集群 | 标准抽取集群 | 容器化部署 | ★★★★★ 优点: 部署成本低:一键部署抽取集群,包括FineBI工程节点+负载均衡+状态服务器+文件服务器+外接数据库 启动成本低:部署成功后默认添加好启动参数,无需手动配置 异常影响小:工程环境容器化,每个工程的环境相互隔离,出现异常时影响范围小 运维成本低:运维平台自动接入工程,支持对服务器、FineBI应用、组件服务等进行监控告警 业务高可用:提供更新任务异常恢复机制,节点同步,保证数据查询高可用 查询高并发:多节点同时提供查询服务,实现负载均衡,并发性能随节点线型增加 更新性能高:通过节点数增加,可提高更新性能 |
手动部署 | 优点: 相比于直连集群: 业务高可用:提供更新任务异常恢复机制,节点同步,保证数据查询高可用 查询高并发:多节点同时提供查询服务,实现负载均衡,并发性能随节点线型增加 更新性能高:通过节点数增加,可提高更新性能 限制项: 工程节点+负载均衡+状态服务器+文件服务器+配置库都需手动部署、修改配置和串并起来 部署完需要手动配置参数,以保证系统稳定运行 无法及时对系统运行情况、服务器、组件服务器进行监控告警 | ||
高可用抽取集群 | 手动部署 | 优点: 相比于标准抽取集群:集群更加高可用,确保工程运维稳定 限制项: 需要进行复杂的配置,需要一定的技术水平和经验,需要更多的硬件或虚拟资源 工程节点+负载均衡+状态服务器+文件服务器+配置库都需手动部署、修改配置和串并起来 部署完需要手动配置参数,以保证系统稳定运行 无法及时对系统运行情况、服务器、组件服务器进行监控告警 | |
标准直连集群 | 手动部署 | 优点: 相比于单机工程,集群中多个工程相互通信共享数据和任务,可以提供更好的可扩展性和更高的性能,可以提高系统的负载能力和可用性,并确保系统的稳定性和一致性 限制项: 此种部署方式,主要面向只有直连数据的工程,如有抽取数据,推荐部署抽取集群 工程节点+负载均衡+状态服务器+文件服务器+配置库都需手动部署、修改配置和串并起来 部署完需要手动配置参数,以保证系统稳定运行 无法及时对系统运行情况、服务器、组件服务器进行监控告警 |
第三步:查看具体部署方案
单机方案一:容器化部署
操作步骤 | 说明 | |
---|---|---|
1 | 准备服务器环境 | 准备FineBI工程、外接数据库的服务器环境 推荐环境:工程部署推荐环境 支持环境:单机工程部署支持环境 |
2 | 容器化部署 | 1)安装运维平台 2)使用运维平台界面化部署FineBI工程 3)部署成功后工程自动启动,管理员即可访问工程 参考文档:容器化部署单机工程 |
3 | 后续操作 | 1)容器化部署时,会自动安装FineBI工程和外接数据库,工程会自动接入外接数据库,因此无需配置外接数据库 2)建议参考文档提高产品安全性:产品安全加固指导手册 3)建议参考文档提高运维稳定性:运维监控指导手册 |
单机方案二:部署包部署
操作步骤 | 说明 | |
---|---|---|
1 | 准备服务器环境 | 准备FineBI工程的服务器环境 准备并部署好外接数据库 推荐环境:工程部署推荐环境 支持环境:单机工程部署支持环境 |
2 | 部署包部署 | 1)下载、上传、解压服务器部署包 2)语句启动FineBI工程 3)启动成功后,管理员即可访问工程 |
3 | 后续操作 | 1)建议为正式工程配置外接数据库:配置外接数据库 2)建议参考文档提高产品安全性:产品安全加固指导手册 3)建议参考文档提高运维稳定性:运维监控指导手册 |
单机方案三:独立部署
操作步骤 | 说明 | |
---|---|---|
1 | 准备服务器环境 | 准备FineBI工程的服务器环境 准备并部署好Tomcat、JDK 准备并部署好外接数据库 推荐环境:工程部署推荐环境 支持环境:单机工程部署支持环境 |
2 | 独立部署 | 1)上传webroot工程文件 2)上传tools.jar文件 3)语句启动FineBI工程 4)启动成功后,管理员即可访问工程 |
3 | 后续操作 | 1)建议为正式工程配置外接数据库:配置外接数据库 2)建议参考文档提高产品安全性:产品安全加固指导手册 3)建议参考文档提高运维稳定性:运维监控指导手册 |
集群方案一:容器化部署标准抽取集群
操作步骤 | 说明 | |
---|---|---|
1 | 准备服务器环境 | 准备工程节点+负载均衡+状态服务器+文件服务器+配置库部署环境 推荐环境:工程部署推荐环境 支持环境:集群工程部署支持环境 |
2 | 容器化部署 | 1)安装运维平台 2)使用运维平台界面化部署FineBI工程,会自动部署:
3)部署成功后,集群工程自动启动,管理员即可访问工程 参考文档:容器化部署集群工程 |
3 | 后续操作 | 1)容器化部署时,会自动部署工程节点和集群组件 工程会自动接入外接数据库,因此无需配置外接数据库 工程会自动接入负载均衡+状态服务器+文件服务器,因此无需开启配置集群 2)建议参考文档提高产品安全性:产品安全加固指导手册 3)建议参考文档提高运维稳定性:运维监控指导手册 4)建议为集群配置运维平台工具:运维平台 |
集群方案二:手动部署标准抽取集群
操作步骤 | 说明 | |
---|---|---|
1 | 准备服务器环境 | 准备工程节点+负载均衡+状态服务器+文件服务器+配置库部署环境 推荐环境:工程部署推荐环境 支持环境:集群工程部署支持环境 |
2 | 部署外接数据库 | 部署数据库,作为工程的外接数据库备用,推荐部署MySQL5数据库 用户只需要部署并启动该数据库。 支持的数据库类型请参考:配置外接数据库 |
3 | 部署负载均衡 | 部署负载均衡,推荐Nginx部署方案 只需要安装Nginx,无需启动,无需修改nginx.conf配置文件 参考文档:Linux 系统安装配置 Nginx |
4 | 部署状态服务器 | 部署状态服务器,推荐部署Redis单机 请确保Redis单机启动 |
5 | 部署文件服务器 | 部署文件服务器,优先推荐SFTP 推荐级别:SFTP≈MinIO>NFS>FTP≈HDFS |
6 | 部署工程节点 | 部署一个工程节点 部署方法请参考单机部署的「部署包部署」或「独立部署」 |
7 | 配置开启集群 | 1)准备操作: 配置Linux系统参数防止宕机 配置Redis日志方便日后排查 新建spider.cluster.properties文件配置节点信息 2)单节点集群配置: 为该配置外接数据库:配置外接数据库 将主节点与状态服务器+文件服务器相连接 设置通信协议 启动集群,重启工程 3)多节点集群配置: 部署其他工程节点 将第一个节点的webroot工程文件拷贝到其他工程节点 修改spider.cluster.properties文件配置节点信息 启动其他工程节点 详情请参见:Linux系统手动配置标准抽取集群 |
8 | 配置负载均衡 | 1)参考文档修改nginx.conf文件:Linux系统安装配置Nginx 2)重启Nginx组件。 |
9 | 后续操作 | 1)参考文档提高产品安全性:产品安全加固指导手册 2)参考文档提高运维稳定性:运维监控指导手册 3)建议为集群配置运维平台工具:运维平台 |
集群方案三:手动部署高可用抽取集群
操作步骤 | 说明 | |
---|---|---|
1 | 准备服务器环境 | 准备工程节点+负载均衡+状态服务器+文件服务器+配置库部署环境 推荐环境:工程部署推荐环境 支持环境:集群工程部署支持环境 |
2 | 部署外接数据库 | 部署数据库,作为工程的外接数据库备用,优先推荐高可用主备模式数据库 支持的数据库类型请参考:配置外接数据库 |
3 | 部署负载均衡 | 部署负载均衡,推荐Keepalived+Nginx 详情请参见:Keepalived+Nginx部署方案 |
4 | 部署状态服务器 | 部署状态服务器,推荐使用Redis集群 |
5 | 部署文件服务器 | 部署文件服务器,优先推荐NAS |
6 | 部署工程节点 | 部署一个工程节点 部署方法请参考单机部署的「部署包部署」或「独立部署」 部署后先不启动这些工程节点 |
7 | 配置开启集群 | 1)准备操作: 配置Linux系统参数防止宕机 配置Redis日志方便日后排查 新建spider.cluster.properties文件配置节点信息 2)单节点集群配置: 为该配置外接数据库:配置外接数据库 将主节点与状态服务器+文件服务器相连接 设置通信协议 启动集群,重启工程 3)多节点集群配置: 部署其他工程节点 将第一个节点的webroot工程文件拷贝到其他工程节点 修改spider.cluster.properties文件配置节点信息 启动其他工程节点 详情请参见:Linux系统手动配置高可用抽取集群 |
8 | 配置负载均衡 | 1)参考文档修改nginx.conf文件:Linux系统安装配置Nginx 2)重启Nginx组件。 |
9 | 后续操作 | 1)参考文档提高产品安全性:产品安全加固指导手册 2)参考文档提高运维稳定性:运维监控指导手册 3)建议为集群配置运维平台工具:运维平台 |
集群方案四:手动部署标准直连集群
操作步骤 | 说明 | |
---|---|---|
1 | 准备服务器环境 | 准备工程节点+负载均衡+状态服务器+文件服务器+配置库部署环境 推荐环境:工程部署推荐环境 支持环境:集群工程部署支持环境 |
2 | 部署外接数据库 | 部署数据库,作为工程的外接数据库备用,推荐部署MySQL5数据库 用户只需要部署并启动该数据库。 支持的数据库类型请参考:配置外接数据库 |
3 | 部署负载均衡 | 部署负载均衡,推荐Nginx部署方案 只需要安装Nginx,无需启动,无需修改nginx.conf配置文件 参考文档:Linux 系统安装配置 Nginx |
4 | 部署状态服务器 | 部署状态服务器,推荐部署Redis单机 请确保Redis单机启动 |
5 | 部署文件服务器 | 部署文件服务器,优先推荐SFTP 推荐级别:SFTP≈MinIO>NFS>FTP≈HDFS |
6 | 部署工程节点 | 部署一个工程节点 部署方法请参考单机部署的「部署包部署」或「独立部署」 |
7 | 配置开启集群 | 1)单节点集群配置: 为该配置外接数据库:配置外接数据库 将主节点与状态服务器+文件服务器相连接 设置通信协议 启动集群,重启工程 2)多节点集群配置: 部署其他工程节点 将第一个节点的webroot工程文件拷贝到其他工程节点 启动其他工程节点 详情请参见:Linux系统手动配置标准直连集群 |
8 | 配置负载均衡 | 1)参考文档修改nginx.conf文件:Linux系统安装配置Nginx 2)重启Nginx组件。 |
9 | 后续操作 | 1)参考文档提高产品安全性:产品安全加固指导手册 2)参考文档提高运维稳定性:运维监控指导手册 3)建议为集群配置运维平台工具:运维平台 |
其他部署方式扩展阅读
中间件类型 | 部署参考文档 |
---|---|
Windows下Tomcat | Windows下Tomcat服务器部署包 |
Windows下Tomcat独立部署 | |
WebLogic | Weblogic服务器部署 |
WebSphere | Linux系统Websphere服务器部署 |
JBoss | Wildfly(JBoss)9~18服务器部署 |
Wildfly(JBoss)8服务器部署 | |
Resin | Resin服务器部署 |
常见问题
非常抱歉你在使用时出现问题。你可以在第一时间通过「技术支持」或「社区问答」进行求助,详情请参见:联系我们。
你也可先参考相关文档进行问题定位和解决。以下是用户是在部署tomcat服务器时出现的常见问题,建议先参考文档进行问题定位和解决。
推荐文档 | 问题描述 |
---|---|
Tomcat部署相关问题 | Tomcat 问题汇总 |
Linux和Windows系统对比分析 | 简单介绍 Linux 和 Windows 系统的对比分析,用户可根据实际情况选择部署时的系统 |
Linux防火墙使用及配置 | 开放防火墙端口 |
Linux文件权限配置 | Linux 文件权限配置 |
JAVA环境变量配置 | 介绍因 JAVA 环境变量配置有问题导致的一些报错及解决方案 |