在虚拟机上使用Centos7搭建Apache-Superset 可视化平台

前言

Superset是一款可视化的BI工具,主要依赖于python环境。所以在安装的时候我们首先需要的就是python环境,Centos7及以上版本默认带有python环境,不过python环境默认版本为2.7.4。而superset官网推荐使用python3版本来搭建平台。接下来我们就开始安装我们的python环境

安装python3

通过python官网下载Python源文件

在虚拟机上使用Centos7搭建Apache-Superset 可视化平台_第1张图片

然后上传至我们centos服务器,解压文件,进入python解压文件目录下。tarball方式安装软件默认执行configure文件。所以我们执行命令 ./configure -prefix=/usr/local/python3

prefix参数是说明把Python安装的具体位置,这里可以自行定义.这里执行完成之后,我们通过make && make install命令就成功安装我们的python环境了。还有最后一步,需要给我们的python3环境创建一个软链接,这样以便于我们全局模式下使用python3。

首先给我们/usr/bin目录下的python文件备份一下

mv /usr/bin/python /usr/bin/python.bak

然后开始创建软链接

ln -s /usr/local/python3/bin/python3.7 /usr/bin/python 

python许多依赖安装需要pip工具,安装python3的时候pip默认也安装成功了,同样的也在 /usr/local/python3/bin/python3.7目录下,我们也给他创建一个软链接。

ln -s /usr/local/python3/bin/pip3 /usr/bin/pip 

最后执行命令

python -V 

pip -V

即可显示我们安装的python环境

安装Superset

首先在我们的服务器上安装superset需要的一些系统依赖,

yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel cyrus-sasl-devel openldap-devel

superset官网推荐使用虚拟机的方式安装superset,原因是为了隔离系统中的python环境。我们可以通过pip工具来安装virtualenv

pip install virtualenv

这里有必要重点说明一下,本人通过pip命令安装的时候一直无法安装成功。错误说明是pip版本太高,没有对应的virtualenv版本。解决方案是我们可以下载virtualenv.pyz文件。然后通过执行python virtualenv.pyz venv命令创建虚拟环境。解决方案二是可以通过yum的方式安装virtualenv 本人用的是第一种解决方案。虚拟机创建成功之后,你会看到如下的界面


需要退出虚拟环境,只需执行deactivate 命令

接下来我们就可以在虚拟环境中安装superset了。

第一步,我们通过执行 pip install apache-superset命令安装,这里没有指定版本默认安装superset最新版本,也可以通过pip install apache-superset==XXXX指定安装版本。这里第一步安装可能会有安装错误。比如no moudle name '_cy'之类的,如果是这个错误,请确认是否执行第一步的yum 安装命令

第二步,初始化数据库,执行 superset db upgrade,这一步是安装成功与否的关键。如果这一步成功了,后面的安装就都没有什么大问题了。如果这个地方报错no moudle name '_sqlite'类型的错误,这是因为我们系统没有安装 sqlite-devel依赖。可以通过yum install -y sqlite-devel安装依赖。注意,依赖安装完之后,需要重新编译安装python环境。进入python目录,执行./configure --prefix=/usr/local/python3 然后make && make install。

然后重新执行superset db upgrade 这样应该就不会出现问题了。

第三步,创建superset管理员账号

$ export FLASK_APP=superset导入superset运行环境变量

flask fab create-admin 创建系统账号

账号创建完成功之后,当然你可以加载一些官网案例,通过

superset load_examples 不过这里速度非常慢,而且也没什么作用,我们可以跳过

第四步,进入superset 初始化 执行

superset init命令

最后,执行superset run命令

superset run -p 8088 --with-threads --reload --debugger,执行到这里,superset就可以通过你的服务器地址加端口号访问了。请注意服务器防火墙是否关闭。

如果执行成功之后,无法访问首页,可能通过执行

superset run -h 0.0.0.0 -p 8088 命令再访问

到这里,整个安装就全部完毕了。记录了本人的踩坑过程.

你可能感兴趣的:(在虚拟机上使用Centos7搭建Apache-Superset 可视化平台)