BI工具Superset安装配置

公司招了个BI人员,需要使用Superset工具,于是查找资料进行安装并记录了下来。

简介

Superset 是一款由 Airbnb 开源的“现代化的企业级 BI(商业智能) Web 应用程序”,其通过创建和分享 dashboard,为数据分析提供了轻量级的数据查询和可视化方案。

Superset 的前端主要用到了 React 和 NVD3/D3,而后端则基于 Python 的 Flask 框架和 Pandas、SQLAlchemy 等依赖库。

安装

基础依赖

系统包:

yum install -y gcc gcc-c++ make automake libffi-devel cyrus-sasl-devel openldap-devel sqlite-devel xz-devel

编译安装zlib:

tar Jxf zlib-1.2.11.tar.xz -C /usr/local/src/
cd /usr/local/src/zlib-1.2.11/
CFLAGS="-fPIC -O3" ./configure --shared --64
make -j `cat /proc/cpuinfo | grep processor | wc -l` && make install
chcon -R -u system_u -t lib_t /usr/local/lib/libz.so*
semanage fcontext -a -t bin_t '/usr/local/bin(/.*)?'
semanage fcontext -a -t lib_t '/usr/local/lib(/.*)?'
semanage fcontext -a -t etc_t '/usr/local/etc(/.*)?'
semanage fcontext -a -t man_t '/usr/local/man(/.*)?'
restorecon -Rv /usr/local/
echo '# User Defined.' > /etc/ld.so.conf.d/complie.conf
echo '/usr/local/lib' >> /etc/ld.so.conf.d/complie.conf
cd -

编译安装Openssl:

tar zxf openssl-1.1.1l.tar.gz -C /usr/local/src/
cd /usr/local/src/openssl-1.1.1l/
yum install -y perl-Pod-Html
CFLAGS="-fPIC -O3" ./config --prefix=/usr/local/openssl shared threads zlib enable-md2 --release -Wl,--enable-new-dtags,-rpath,'$(LIBRPATH)'
make -j `cat /proc/cpuinfo | grep processor | wc -l` && make install
echo 'export PATH=/usr/local/openssl/bin:$PATH' > /etc/profile.d/openssl.sh
ldconfig
source /etc/profile.d/openssl.sh
openssl version
cd -

安装bzip2:

tar zxf bzip2-1.0.8.tar.gz -C /usr/local/src/
cd /usr/local/src/bzip2-1.0.8/
sed -i 's/CC=gcc/CC=gcc\ -fPIC\ -O3/g' Makefile
make -j `cat /proc/cpuinfo | grep processor | wc -l` && make install
cd -

Tips: 也可以使用yum安装:

yum install -y openssl-devel bzip2-devel

 

编译安装Python

Tcl (TK需要libX11-devel,可不装):

tar zxf tcl8.6.11-src.tar.gz -C /usr/local/src/
cd /usr/local/src/tcl8.6.11/unix
CFLAGS="-fPIC -O3" ./configure --enable-64bit
make -j `cat /proc/cpuinfo | grep processor | wc -l` && make install
cd –

Python3:

tar Jxf Python-3.9.7.tar.xz -C /usr/local/src/
cd /usr/local/src/Python-3.9.7/
CFLAGS="-fPIC -O3" LDFLAGS="-Wl,--enable-new-dtags,-rpath=/usr/local/lib:/usr/local/openssl/lib:/usr/local/python3/lib" ./configure --prefix=/usr/local/python3 --enable-shared --enable-optimizations --enable-ipv6 --with-openssl=/usr/local/openssl --with-tcltk-includes='-I /usr/local/include' --with-tcltk-libs='-I /usr/local/lib'
vim Modules/Setup
SSL=/usr/local/openssl
_ssl _ssl.c \
        -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
        -L$(SSL)/lib -lssl -lcrypto
make -j `cat /proc/cpuinfo | grep processor | wc -l` && make install
echo 'export PATH=$PATH:/usr/local/python3/bin/' > /etc/profile.d/python.sh
source /etc/profile.d/python.sh
pip3 install --upgrade pip setuptools
cd -

Tips:也可以使用yum安装:

yum install -y python3-devel python3-pip python3-wheel

 

安装Superset

安装Python虚拟环境:

pip install virtualenv

创建并进入Python虚拟环境:

mkdir -p /data && cd /data/
python3 -m venv superset
. superset/bin/activate
pip install --upgrade pip

在虚拟环境中安装Superset:

pip install apache-superset

初始化

初始化数据库:

pip install pillow
superset db upgrade

Tips:数据库初始化后会生成在用户家目录~/.superset下:

创建管理员用户:

export FLASK_APP=superset
flask fab create-admin

创建默认角色和权限:

superset init

使用Debug模式启动,监听8088端口:

superset run -h Superset -p 8088 --with-threads --reload --debugger

Tips: 使用-h指定端口监听地址;不指定默认监听 127.0.0.1。

浏览器中即可访问页面:

发表评论

error: Content is protected !!