Superset安装部署

1. superset安装部署

Apache Superset 是一个现代数据探索和可视化平台,Superset 快速、轻量、直观,并加载了选项,使所有技能集的用户都可以轻松探索和可视化他们的数据,从简单的折线图到高度详细的地理空间图表。

1.1. 安装Python3、PIP和VirtualENV

http://superset.apache.org/installation.html#configuration

https://www.jianshu.com/p/e1553b2185ae

2.1 为安装python3环境准备所需的包

1
2
yum groupinstall -y "Development tools"
yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

2.2 安装python3环境

1
2
3
4
5
6
cd /usr/local/src #进入源码文件夹
wget www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz #下载python文件
tar xf Python-3.6.6.tgz #解压缩
cd Python-3.6.6 #进入python 文件夹
./configure #配置
make && make install #安装

2.3 安装EPEL源并安装superset必备的包

1
2
3
yum install -y epel-release #安装epel源
yum install -y mysql-devel #安装MySQL开发包,属于pymysqlclient依赖
yum install -y gcc gcc-c++ libffi-devel python-devel python-wheel openssl-devel libsasl2-devel openldap-devel #安装依赖包

2.4 安装Screen

1
2
3
4
5
#安装Screen
yum install screen

#指定会话
screen -S superset
  1. 5安装python3的virtualenv并建立superset的env
1
2
3
4
5
6
pip3 install virtualenv #安装virtualenv
#建立并进入虚拟环境
mkdir /usr/local/virenv
cd /usr/local/virenv
python3 -m virtualenv superset #建立superset的venv
source ./superset/bin/activate #激活superset的venv

1.2. 3. 安装Superset

3.1 在env中安装supersetcd

1
2
3
pip3 install --upgrade pip #升级pip
pip3 install --upgrade setuptools pip #升级setuptools
pip3 install apache-superset #安装superset

3.2 安装superset数据库包

1
2
pip3 install mysqlclient #安装mysql连接包
pip3 install pymssql #安装mssql连接包

3.3 配置superset

vim superset/lib/python3.6/site-packages/superset/config.py

修改superset配置文件,将默认的sqlite3数据库改为MySQL找到:

1
SQLALCHEMY_DATABASE_URI = 'sqlite:////path/to/superset.db'

将其改为:

1
2
SQLALCHEMY_DATABASE_URI = ‘mysql://用户名:密码@IP地址/数据库名?charset=utf8’
SQLALCHEMY_DATABASE_URI = 'mysql://root:Mysql!234@192.168.1.221:3306/superset?charset=utf8'

3.4 在MySQL中创建superset数据库

1
2
mysql -uroot -p #登录MySQL
create database 数据库名; #建立superset数据库

3.5 初始化superset

1
2
3
4
5
superset db upgrade
export FLASK_APP=superset
superset fab create-admin
superset init #初始化superset数据库
bin/superset run -h 0.0.0.0 -p 8088 --with-threads --reload --debugger #运行superset

访问

1
2
3
http://superset.kubelet.cn
账号:admin
密码:Mysql!234

进入虚拟环境

1
source activate

退出

1
deactivate

进入screen

1
2
3
screen -s superset
source /usr/local/virenv/superset/bin/activate
superset run -h 0.0.0.0 -p 8088 --with-threads --reload --debugger

1.3. 开机自启动

http://gitlab.aimm.cn/imm/wiki/wikis/superset-start

启动脚本

vim /aimm/script/start.sh

1
2
3
4
5
6
#!/bin/bash
screen_name="superset"
screen -dmS $screen_name
cmd="source /usr/local/virenv/superset/bin/activate;superset run -h 0.0.0.0 -p 8088 --with-threads --reload --debugger";
screen -x -S $screen_name -p 0 -X stuff "$cmd"
screen -x -S $screen_name -p 0 -X stuff '\n'

授权

1
chmod +x /aimm/script/start.sh

加入开机启动

vim /etc/rc.local

1
2
# screen
sh /aimm/script/start.sh

授权

1
chmod +x /etc/rc.d/rc.local

1.4. 安装中的其它文档

http://mirrors.aliyun.com/pypi/simple/ –trusted-host mirrors.aliyun.com

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

报错解决

https://www.jianshu.com/p/d784d147e442

注:如安装慢可使用阿里云安装源

1
2
3
pip install requests -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com/

pip install flask-appbuilder -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com/

如缺依赖,可用如下命令安装

1
pip install wtforms_json flask_compress celery flask_migrate flask_talisman flask_caching sqlparse bleach markdown numpy pandas parsedatetime pathlib2 simplejson humanize geohash polyline geopy cryptography backoff msgpack pyarrow contextlib2 croniter retry selenium isodate

参考:

https://zhuanlan.zhihu.com/p/111295100

https://www.cnblogs.com/wbl001/p/11147679.html

-------------本文结束感谢您的阅读-------------