superset安装与配置(超超超详细)

1.Superset入门
1.1 Superset概述


     问题描述: Apache Superset是一个开源的、现代的、轻量级BI分析工具,能够对接多种数据源、拥有丰富的图表展示形式、支持自定义仪表盘,且拥有友好的用户界面,十分易用。

1.2 Superset应用场景


     由于Superset能够对接常用的大数据分析工具,如Hive、Kylin、Druid等,且支持自定义仪表盘,故可作为数仓的可视化工具,并且superset支持非常多的数据库。

2. Superset安装及使用

2.1 安装Python环境

2.1.1 安装Miniconda


        conda是一个开源的包、环境管理器,可以用于在同一个机器上安装不同Python版本的软件包及其依赖,并能够在不同的Python环境之间切换,Anaconda包括Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等,Miniconda包括Conda、Python。

此处,我们不需要如此多的工具包,故选择MiniConda。

1)下载Miniconda(Python3版本)

下载地址:https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

2)下载Miniconda

将MiniConda通过rz命令上传到  /opt/soft  目录下

rz -E

 


3)安装Miniconda

执行以下命令进行安装,并按照提示操作,直到安装完成。

bash Miniconda3-latest-Linux-x86_64.sh

 

一直按回车键,直到出现Please answer 'yes' or 'no':' 输入yes

 

指定安装路径,回车默认

 是否初始化 Miniconda3,输入yes

 

出现以下字段,安装成功


配置系统环境变量

#配置系统环境环境量
vim /etc/profile
export CONDA_HOME=/opt/module/miniconda3
export PATH=$PATH:$CONDA_HOME/bin

#刷新
source /etc/profile

4)加载环境变量配置文件,使之生效

source ~/.bashrc

查看Python版本:

5)  取消激活base环境

conda config --set auto_activate_base 
6)  查看conda 版本
conda --version
2.1.2 创建Python3.7环境

1)配置conda国内镜像

#包含了一些基本的 Python 包、库和工具。

conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/main


 
#这是 Anaconda 主要的通道,包含了大量的 Python 包和工具。如果你主要使用 Python 包,这是一个必要的通道。

conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/r



conda config --set show_channel_urls yes


查看镜像

2)创建Python3.9环境

conda create --name superset python=3.9


conda环境管理常用命令

创建环境:conda create -n env_name

查看所有环境:conda info --envs

删除一个环境:conda remove -n env_name --all

3)激活superset环境

conda activate superset


激活成功后如下图所示

source activate superset
退出当前环境

conda deactivate
4)执行python命令查看python版本

python


2.2 Superset部署

2.2.1 安装依赖


安装Superset之前,需安装以下所需依赖

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

 

安装Superset之前,需安装以下所需依赖

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


2.2.2 安装Superset

1)安装(更新)setuptools和pip

pip install --upgrade setuptools pip -i https://pypi.douban.com/simple/


2)安装Supetset

pip install apache-superset -i https://pypi.douban.com/simple/
说明:-i 的作用是指定镜像,这里选择国内镜像

如果遇到网络错误导致不能下载,可尝试更换镜像

pip install apache-superset --trusted-host https://repo.huaweicloud.com -i https://repo.huaweicloud.com/repository/pypi/simple

3)  初始化Supetset数据库

superset db upgrade

出现以下错误:

这个错误表明系统中可能缺少相关的依赖项或安装有问题。

用以下代码来查看python和cryptography
 

#python
python --version
python -V
#cryptography
pip show cryptography
pip list | grep cryptography


检查Cryptography库的文档或发布说明,确保你的库版本与Python版本兼容。

我这里是cryptography版本问题,更新成老版本3.2即可

pip install --upgrade cryptography==3.2


继续执行,出现错误:

因为没有配置管理员用户

export FLASK_APP=superset


再次执行

通过降低Werkzeug的版本解决

python -m pip uninstall -y Werkzeug
python -m pip install Werkzeug==2.0.3 


再次执行命令,出现错误:

需要降低Flask的版本到2.0.3

flask 是一个 python web 框架,Superset 使用的就是 flask

python -m pip uninstall -y Flask
python -m pip install Flask==2.0.3


再次执行命令,出现错误:

这个是因为WTForms 3.0.1的版本去掉了ext,需要降低WTForms的版本到2.3.3

python -m pip uninstall -y WTForms
python -m pip install WTForms==2.3.3


再次执行命令,初始化数据库成功:

4)创建管理员用户

export FLASK_APP=superset
superset fab create-admin


5)Superset初始化

superset init

2.2.3 启动Supterset

1)安装gunicorn

gunicorn 是一个 Python Web Server,可以和 java 中的 TomCat 类比

pip install gunicorn -i https://pypi.douban.com/simple/


2)启动Superset

确保当前conda环境为superset

gunicorn --workers 5 --timeout 120 --bind centos1:8787 "superset.app:create_app()" --daemon

说明:

workers:指定进程个数
timeout:worker 进程超时时间,超时会自动重启
bind:绑定本机地址,即为 Superset 访问地址,若使用主机名,需要在本地主机中建立虚拟机主机名和虚拟机ip的映射关系
daemon:后台运行


3)登录 Superset

访问 http://centos1:8787,并使用前面创建的管理员账号进行登录。

4)停止 Superset

ps -ef | awk '/superset/ && !/awk/{print $2}' | xargs kill -9

2.2.4 superset启停脚本

1)创建存放脚本的文件夹,新建编辑脚本文件

mkdir scrip  #创建文件夹
 
vim superset.sh   #创建 superset.sh 文件


2)添加脚本内容
#!/bin/bash
superset_status(){
    result=`ps -ef | awk '/gunicorn/ && !/awk/{print $2}' | wc -l`
    if [[ $result -eq 0 ]]; then
         return 0
     else
         return 1
     fi
}
superset_start(){
         source ~/.bashrc
         superset_status >/dev/null 2>&1
         if [[ $? -eq 0 ]]; then
             conda activate superset ; gunicorn --workers 5 --timeout 120 --bind centos1:8787 --daemon 'superset.app:create_app()'
         else
             echo "superset 正在运行"
         fi
}
superset_stop(){
         superset_status >/dev/null 2>&1
         if [[ $? -eq 0 ]]; then
             echo "superset 未在运行"
         else
             ps -ef | awk '/gunicorn/ && !/awk/{print $2}' | xargs kill -9
         fi
}
case $1 in
     start )
        echo "启动 Superset"
         superset_start
     ;;
     stop )
         echo "停止 Superset"
        superset_stop
     ;;
     restart )
         echo "重启 Superset"
         superset_stop
         superset_start
     ;;
     status )
         superset_status >/dev/null 2>&1
         if [[ $? -eq 0 ]]; then
             echo "superset 未在运行"
         else
             echo "superset 正在运行"
         fi
esac
3) 添加执行权限

chmod +x superset.sh


4) 测试

启动 Superset

superset.sh start


查看 Superset状态

superset.sh status


停止 Superset

superset.sh stop


 
 

  • 17
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值