本文安装Superset大致分为以下部分:
- 在操作系统中安装相关依赖,我所用的操作系统为Centos6.5
- 安装Python3.6.6
- 安装Superset
详细步骤如下:
- 相关依赖的安装
yum install sqlite* //我第一次安装的时候没有安装此依赖,最后在Superset初始化过程中有报错信息,提示缺少_sqlite3 这个包
yum upgrade python-setuptools //这是对该依赖的升级,如果原来操作系统中无此依赖,需要先install
yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel libsasl2-devel openldap-devel - Python3.6.6的安装
首先根据自己的操作系统,在官网下(https://www.python.org/)载相关安装包或源代码,我用的是源代码安装
tar zxvf Python-3.6.6.tgz //解压安装包
cd Python-3.6.6 //进入解压后的目录
./configure --prefix=/usr/local/python3/ --enable-optimizations //其中"/user/local/python3/"是我的Python要安装的位置,之后是一个优化参数(起到优化python的作用,能提高Python的执行速度,也可以不要)
make && and make install //编译和安装Python
python安装完之后,现在操作系统里面有两个版本的Python(Python2.x和Python3.6.6),此时默认还是使用系统自带的版本,我们可以通过修改软连接来实现默认使用Python3.6.6
rm -rf /usr/bin/python //删除原来的软连接文件
ln -s /usr/local/python3/bin/python3 /usr/bin/python //修改软连接
python -V //核对python版本
同理创建Python下Pip的软连接
需要注意的是,系统本身有的软只支持python2,我们需要对其相关文件进行更改,比如yum
ll /usr/bin/python*
lrwxrwxrwx 1 root root 30 Sep 17 17:39 /usr/bin/python -> /usr/local/python3/bin/python3
lrwxrwxrwx 1 root root 18 Sep 17 12:54 /usr/bin/python2 -> /usr/bin/python2.6 //此处表示python2 命令进入的是python2.6环境
-rwxr-xr-x 1 root root 9032 Aug 18 2016 /usr/bin/python2.6
-rwxr-xr-x 1 root root 1418 Aug 18 2016 /usr/bin/python2.6-config
lrwxrwxrwx 1 root root 6 Sep 17 11:56 /usr/bin/python3 -> python
lrwxrwxrwx 1 root root 16 Sep 17 11:56 /usr/bin/python-config -> python2.6-config
Vi /usr/bin/yum //把第一行内容改为 "/usr/bin/python2" - 安装Virtualenv(此步也可以省略)但是建议使用virtualenv 安装Superset
pipinstallvirtualenv //安装Virtualenv
virtualenv venv_name //创建一个对象,默认创建在当前目录
. ./venv_name/bin/activate // 激活对象,一旦激活,所作的一切都被限制在virtualenv中
deactivate //退出virtualenv - Superset的安装(我是在Virtualenv中安装的)
virtualenv superset // 创建一个名为superset的Virtualenv
. ./superset/bin/activate //激活
pip install superset // 安装Superset,也可以使用-i参数使用国内的pip 源,速度会快一些 - 初始化Superset
fabmanager create-admin --app superset //创建一个superset对象并设置其管理员账户密码
superset load_examples //为名为superset的Superset对象创建一些数据例子
superset runserver // 使用默认参数启动superset
gunicorn -w 2 --timeout 120 -b 0.0.0.0:8088 --limit-request-line 0 --limit-request-field_size 0 superset:app //我在使用superset时系统建议使用这种方法启动superset,gunicorn 具体使用方法见官方文档:http://docs.gunicorn.org/en/stable/settings.html
现在你就可以使用浏览器打开supersetIP:8088,然后使用刚才的用户名密码登陆。 - 支持的数据库
Mysql,Oracle,hive,Spark SQL,Sqlite等。
但是Superset不会捆绑连接到数据库,需要安装相应的软件包。 - Oracle数据库的连接
Superset 连接Oracle数据库需要在服务端安装Oracle客户端(安装过程省略)
需要注意的时要先安装libaio依赖(yum install libaio)
在/etc/ld.so.conf.d/ 目录下创建oracle.conf
echo "$ORACLE_HOME/client64/lib/" > /etc/ld.so.conf.d/oracle.conf
export LD_LIBRARY_PATH= /usr/lib/oracle/11.2/client64/lib$ LD_LIBRARY_PATH //配置动态库环境变量
pip install cx_Oracle //安装插件
然后就可以通过superset访问Oracle数据的数据了 - 如果大家发现有什么不到位的,欢迎提问交流,共同进步。