页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。


目录

SmartbiExport导出引擎服务集群部署方案,是通过Smartbi Proxy进行http转发到集群中的各个SmartbiExport导出引擎服务节点实现的。

一、环境信息

IP地址组件名称备注
10.10.35.64Proxy
10.10.35.65导出引擎节点1
10.10.35.66导出引擎节点2


二、部署Proxy

Smartbi Proxy负载均衡服务,为产品提供负载均衡和代理服务。

1. 环境准备

在apache官网下载apache-tomcat-8.5.57.tar.gz安装包http在apache官网下载tomcat8安装包

https://archivetomcat.apache.org/dist/tomcat/tomcat-8/v8.5.57/bin/apache-tomcat-8.5.57.tar.gzdownload-80.cgi

② 在oracle官网下载64位的jdk安装包

注意
title温馨提示

此版本的smartbi proxy只能在tomcat8、JDK1.8以上环境安装部署。

1.1 防火墙配置

为了便于安装,建议在安装前关闭防火墙。使用过程中,为了系统安全可以选择启用防火墙,但必须启用Smartbi使用到的相关端口。

① 关闭防火墙

临时关闭防火墙

代码块
linenumberstrue
systemctl stop firewalld

永久关闭防火墙

代码块
linenumberstrue
systemctl disable firewalld

查看防火墙状态

代码块
linenumberstrue
systemctl status firewalld

② 开启防火墙

相关服务及端口对照表

服务名

开放端口

Smartbi Proxy

8080

如果确实需要打开防火墙安装,需要给防火墙放开以下需要使用到的端口
开启端口:8080

代码块
linenumberstrue
firewall-cmd --permanent --add-port=8080/tcp

配置完以后重新加载firewalld,使配置生效

代码块
linenumberstrue
firewall-cmd --reload

查看防火墙的配置信息

代码块
linenumberstrue
firewall-cmd --list-alle

③ 关闭selinux

临时关闭selinux,立即生效,不需要重启服务器。

代码块
linenumberstrue
setenforce 0

永久关闭selinux,修改完配置后需要重启服务器才能生效

代码块
linenumberstrue
sed -i 's/=enforcing/=disabled/g'  /etc/selinux/config

1.2 安装Java环境

 安装包解压到/opt目录

代码块
linenumberstrue
tar -zxvf jdk1.8.0_181-linux_x64.tar.gz -C /data

配置java环境变量
① 执行 vi ~/.bash_profile 文件末尾添加,并保存

代码块
linenumberstrue
export  JAVA_HOME=/data/jdk1.8.0_181
export  JRE_HOME=$JAVA_HOME/jre
export  CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/jre/lib:$CLASSPATH
export  PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

② 使配置生效

代码块
linenumberstrue
source ~/.bash_profile

③ 查看java版本信息

代码块
linenumberstrue
java -version

2. 部署Smartbi Proxy

2.1 安装Tocmat

①Tomcat安装包解压到/data目录

代码块
linenumberstrue
tar -zxvf apache-tomcat-8.5.57.tar.gz -C /data

②修改Tomcat启动参数

进入Tomcat下的bin目录

代码块
linenumberstrue
cd /data/apache-tomcat-8.5.57/bin/

创建Tomcat启动参数文件:setenv.sh

代码块
linenumberstrue
vi setenv.sh

具体参数如下(根据实际部署替换配置中的路径):

代码块
linenumberstrue
export JAVA_HOME="/data/jdk1.8.0_181"
export JRE_HOME="/data/jdk1.8.0_181/jre"
export CATALINA_HOME="/data/apache-tomcat-8.5.57"
export JAVA_OPTS="-Dfile.encoding=UTF-8 -Duser.region=CN -Duser.language=zh -Djava.awt.headless=true -Xms2048m -Xmx4096m -XX:MaxMetaspaceSize=512m -Dmail.mime.splitlongparameters=false -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow"

赋予setenv.sh相关权限

代码块
linenumberstrue
chmod 755 setenv.sh

2.2 部署Smartbi Proxy

服务软件包备注
smartbi proxysmartbi.warsmartbi proxy程序安装包

① 上传Smartbi Proxy war包

将smartbi.war上传到/data/apache-tomcat-8.5.57/webapps目录下

② 启动Tocmat 服务器

进入/data/apache-tomcat-8.5.57/bin目录下,执行startup.sh脚本启动tomcat程序

代码块
linenumberstrue
cd /data/apache-tomcat-8.5.57/bin
./startup.sh

2.3 登陆Smartbi Proxy控制台

登陆smartbi-proxy的管理控制台,进行配置。

浏览器访问 http://IP:8080/smartbi/proxy#/login 

初始默认账号:admin 密码:admin

登陆后首页如下图:

由于没有导出引还未部署,所以首页显示暂无数据。

修改smartbi proxy登陆密码

选择修改密码,输入旧密码,设置新密码,保存即可。

Proxy日志默认保存在:<Tomcat安装路径>/log/目录下

三、部署导出引擎集群

注意
title温馨提示

集群所有导出引擎节点部署的方法相同。

1、导出引擎安装包上传到服务器并解压到指定路径

代码块
linenumberstrue
tar -zxvf Smartbi_Export.tar.gz -C /data

2、安装Docker程序

代码块
linenumberstrue
cd /data/Smartbi_Export
./install_docker.sh

3、导出引擎配置Proxy代理服务器地址

代码块
linenumberstrue
cd /data/Smartbi_Export/smartbi_data/smartbi-export
vi conf.js

配置参考下图:

4、启动导出引擎

代码块
linenumberstrue
cd /data/Smartbi_Export/
./start_SmartbiExport.sh


5、修改导出引擎默认端口

Smartbi导出引擎服务,默认端口是3003,如果需要修改端口,可以编辑start_SmartbiExport.sh,如下图所示,修改端口为需要设置的端口号。

注意:部署集群时,需要修改容器的IP地址,IP地址不能相同


6、所有节点的导出引擎部署完成后,可以登录proxy查看

浏览器访问 http://IP:8080/smartbi/proxy#/login 

能正常显示两个导出引擎节点

四、连接导出引擎集群

登陆Smartbi,选择 系统运维 > 系统选项 > 公共设置 > 服务器地址。

Smartbi服务器URL:http://smartbi访问地址:端口/smartbi

导出引擎URL地址:http://Proxy地址:端口/smartbi/smartbiexport

注意
title温馨提示

导出引擎的集群地址,需要在proxy的地址后面加上config.js里面配置应用名,可以自定义,默认是smartbiexport

五、运维操作

注意
title温馨提示

集群所有导出引擎节点运维操作相同

1.重启导出引擎

代码块
linenumberstrue
docker restart smartbi-export 

2.更新导出引擎

2.1. 仅更新导出引擎配置文件

停止导出引擎

代码块
linenumberstrue
docker stop smartbi-export 

进入<导出引擎部署目录>/Smartbi_Export/smartbi_data/smartbi-export

备份需要更新的配置文件,比如:conf.js 和 server.js 文件

代码块
linenumberstrue
mv conf.js conf-bk.js
mv server.js server-bk.js

上传新的配置文件,重新启动导出引擎

代码块
linenumberstrue
docker start smartbi-export

2.2. 更新导出引擎配置文件及主程序

注意

导出引擎更新2022年9月9号及以后版本的,需要更新一次node_modules文件,安装介质可以联系Smartbi官方支持获取。

停止导出引擎

代码块
linenumberstrue
docker stop smartbi-export

进入<导出引擎部署目录>/Smartbi_Export/smartbi_data/smartbi-export

备份导出引擎主程序以及配置文件

代码块
linenumberstrue
mv conf.js conf-bk.js
mv server.js server-bk.js
mv monitor.js monitor-bk.js
mv node_modules node_modules-bk

上传新的配置文件(server.js,conf.js,monitor.js)及node_modules文件,重新启动导出引擎

代码块
linenumberstrue
docker start smartbi-export


注意
title温馨提示

如果导出引擎是集群部署,需要对比新版本和备份的conf.js文件,把备份的conf.js文件的proxy参数更新到新的conf.js文件中

3. 停止导出引擎服务

代码块
linenumberstrue
cd 导出引擎部署目录
./stop_SmartbiExport.sh 
或者
docker stop smartbi-export

4. 卸载导出引擎

代码块
linenumberstrue
cd 导出引擎部署目录
./unstall_SmartbiExport.sh


5. 查看日志

代码块
linenumberstrue
docker logs smartbi-export

注意事项

自助仪表盘的导出,在实际操作中会有一些限制条件,例如:

1、不支持将分页控件、Tab页控件、滚动条中所展示的图表全部内容都进行导出。因为自助仪表盘的导出的结果为静态,相当于网页快照,无法对其进行交互操作。

① 分页控件对表格数据设置分页后,导出方式为“png”、“pdf”的情况下,只能导出第一页的内容,即导出仪表盘的快照。

② Tab控件Tab页控件的导出,默认导出按照“从左到右”页签顺序的第一个图表,即使页面切换到其他Tab页签下,也只能导出第一个Tab页签下的图表。

③ 滚动条:有报表滚动条存在的时候,无法将滚动条剩余部分的图表内容一起导出。

2、导出方式为“excel”时,会将各图表相应的全部数据导出在以“图表标题”命名的sheet页内。

如下图,仪表盘包含四个图表组件,导出的excel则包含仪表盘的快照和四个图表组件相应的全部数据。