一、环境信息

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://archive.apache.org/dist/tomcat/tomcat-8/v8.5.57/bin/apache-tomcat-8.5.57.tar.gz

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

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

1.1防火墙配置

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

1.关闭防火墙

临时关闭防火墙

systemctl stop firewalld

永久关闭防火墙

systemctl disable firewalld

查看防火墙状态

systemctl status firewalld

2.开启防火墙

相关服务及端口对照表

服务名

开放端口

Smartbi Proxy

8080


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

firewall-cmd --permanent --add-port=8080/tcp

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

firewall-cmd --reload

查看防火墙的配置信息

firewall-cmd --list-all

3.关闭selinux

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

setenforce 0

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

sed -i 's/=enforcing/=disabled/g'  /etc/selinux/config

1.2 安装Java环境

 安装包解压到/opt目录

tar -zxvf jdk1.8.0_181-linux_x64.tar.gz -C /data

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

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

②使配置生效

source ~/.bash_profile

③查看java版本信息

java -version


2、 部署Smartbi Proxy

2.1 安装Tocmat

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

tar -zxvf apache-tomcat-8.5.57.tar.gz -C /data

②修改Tomcat启动参数

进入Tomcat下的bin目录

cd /data/apache-tomcat-8.5.57/bin/

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

vi setenv.sh

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

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相关权限

chmod 755 setenv.sh

2.2 部署Smartbi Proxy

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

1.上传Smartbi Proxy war包

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

2.启动Tocmat 服务器

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

cd /data/apache-tomcat-8.5.57/bin
./startup.sh

2.3登陆Smartbi Proxy控制台

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

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

登陆后首页如下图:

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

修改smartbi proxy登陆密码

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

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


三、部署导出引擎集群

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

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

tar -zxvf Smartbi_Export.tar.gz -C /data

2、安装Docker程序

cd /data/Smartbi_Export
./install_docker.sh

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

cd /data/Smartbi_Export/smartbi_data/smartbi-export
vi conf.js

配置参考下图:

4、启动导出引擎

cd /data/Smartbi_Export/
./start_SmartbiExport.sh


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

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


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

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

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

四、连接导出引擎集群

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

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

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

五、运维操作

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

1.重启导出引擎

docker restart smartbi-export

2.更新导出引擎

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

停止导出引擎

docker stop smartbi-export

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

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

mv conf.js conf-bk.js
mv server.js server-bk.js

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

docker start smartbi-export

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

停止导出引擎

docker stop smartbi-export

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

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

mv conf.js conf-bk.js
mv server.js server-bk.js
mv node_modules node_modules-bk

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

docker start smartbi-export

3. 停止导出引擎服务

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

4. 卸载导出引擎

cd 导出引擎部署目录
./unstall_SmartbiExport.sh

5.查看日志

docker logs smartbi-export

6.导出注意

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

1、不支持将分页控件、tab页控件、滚动条中所展示的全部内容都进行导出。因为当自助仪表盘导出为png或excel等,其导出的结果为静态,无法对自助仪表盘进行操作。

分页控件:采用了分页之后分为多页,只能导出第一页的内容,除此之外别的页的内容不会进行导出:

tab控件:tab页控件的导出也只会导出第一个,即使页面切换到其他tab页去查看导出也只是导出第一个tab页:

滚动条:有报表滚动条的时候也不会把滚动条下面部分的内容一起导出。

2、导出excel的时候会将全部数据导出在另一个sheet页。