CentOS7安装superset2.0

news2024/11/26 1:47:51

 备注:自己在CentOS7.5下安装superset2.0成功。数据库以本地sqlite为准。Superset是由Python语言编写的Web应用,Superset2.0版本要求Python3.9的环境。

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
(1)执行以下命令进行安装,并按照提示操作,直到安装完成。
[root@*************** software]# bash Miniconda3-latest-Linux-x86_64.sh
(2)在安装过程中,出现以下提示时,可以指定安装路径
 [/root/miniconda3] >>> /opt/module/miniconda3
(3)出现以下字样,即为安装完成
 
3)加载环境变量配置文件,使之生效
[root@*************** software]# source ~/.bashrc
4)取消激活base环境
Miniconda安装完成后,每次打开终端都会激活其默认的base环境,我们可通过以下命令,禁止激活默认base环境。
[root@*************** software]# conda config --set auto_activate_base false
2、 创建Python3.9环境
1)配置conda国内镜像

[root@*************** software]# conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
[root@*************** software]# conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
[root@*************** software]# conda config --set show_channel_urls yes
2)创建superset环境并指定Python3.9
 [root@*************** software]# conda create --name superset python=3.9
说明:conda环境管理常用命令
创建环境:conda create -n env_name
查看所有环境:conda info --envs
删除一个环境:conda remove -n env_name --all
3)激活superset环境
[root@*************** software]# conda activate superset
    激活后效果如下图所示
 
说明:退出当前环境
(superset) [root@*************** software]# conda deactivate
4)执行python命令查看python版本
(superset) [root@*************** software]# python -V
3、Superset部署
[root@*************** software]# conda activate superset
1)安装依赖(之后操作均在superset环境下)
安装Superset之前,需安装以下所需依赖
(superset) [root@*************** software]$ 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)安装(更新)setuptools和pip
(superset) [root@*************** software]$ pip install --upgrade setuptools pip -i https://pypi.douban.com/simple/
说明:pip是python的包管理工具,可以和centos中的yum类比,该命令会把setuptools由65.5.0升级为65.6.0,之后执行superset db upgrade时可能会报错“cannot import name 'Log' from 'distutils.log'”,将setuptools降为65.5.0版本即可。
3)安装Supetset
(superset) [root@*************** software]$ pip install apache-superset==2.0.0 -i https://pypi.douban.com/simple/
说明:-i的作用是指定镜像,这里选择国内镜像
备注:如果遇到网络问题,可以反复执行,直至成功;

4)初始化Supetset数据库
(superset) [root@*************** software]$ superset db upgrade

该步骤可能遇到的问题:

(1)“Could not locate a Flask application. Use the 'flask --app' option, 'FLASK_APP' environment variable, or a 'wsgi.py' or 'app.py' file in the current directory.”

执行一下:export FLASK_APP=superset即可;

(2)“ImportError: cannot import name 'soft_unicode' from 'markupsafe'”

这是markupfile版本不兼容的问题,执行一下:python -m pip install markupsafe==2.0.1即可;

(3)ModuleNotFoundError: No module named 'werkzeug.wrappers.etag'

# 这个是在 superset 2.0 版本出现的bug,通过降低Werkzeug的版本解决
python -m pip uninstall -y Werkzeug
python -m pip install Werkzeug==2.0.3
(4)“TypeError: __init__() got an unexpected keyword argument 'unbound_message'”

# 这个是在 superset 2.0 版本出现的bug,需要降低Flask的版本到2.0.3
python -m pip uninstall -y Flask
python -m pip install Flask==2.0.3
(5)“ModuleNotFoundError: No module named 'wtforms.ext'”
# 这个是因为WTForms 3.0的版本去掉了ext,需要降低WTForms的版本到2.3.3
python -m pip uninstall -y WTForms
python -m pip install WTForms==2.3.3

(6)cannot import name 'Log' from 'distutils.log'

这是由于setuptools为65.6.0版本的原因,将setuptools降为65.5.0版本即可。pip install setuptools=65.5.0即可(也可以在上面升级setuptools和pip时不升级setuptools)

5)创建管理员用户
(superset)[root@*************** software]$ export FLASK_APP=superset
(superset)[root@*************** software]$ superset fab create-admin
说明:flask是一个python web框架,Superset使用的就是flask

6)Superset初始化
(superset) [root@*************** software]$ superset init

4、superset启动

1)安装gunicorn
(superset) [atguigu@hadoop102 ~]$ pip install gunicorn -i https://pypi.douban.com/simple/
说明:gunicorn是一个Python Web Server,可以和java中的TomCat类比

2)启动Superset
(1)确保当前conda环境为superset,及下图所示

(superset) [root@*************** software]$

(2)对外开放端口8080

/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

(3)启动
(superset) [root@*************** software]$ gunicorn --workers 5 --timeout 120 --bind 127.0.0.1:8080  "superset.app:create_app()" --daemon 
说明:
--workers:指定进程个数
--timeout:worker进程超时时间,超时会自动重启
--bind:绑定本机地址,即为Superset访问地址
--daemon:后台运行

(4)登录Superset
访问http://IP地址:8080,并使用之前创建的管理员账号进行登录。
 
3)停止superset
停掉gunicorn进程
(superset) [atguigu@hadoop102 ~]$ ps -ef | awk '/superset/ && !/awk/{print $2}' | xargs kill -9
退出superset环境
(superset) [atguigu@hadoop102 ~]$ conda deactivate

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/48118.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux/Windows中创建共享文件夹

Linux/Windows中创建共享文件夹一、虚拟机访问主机的文件夹1、设置虚拟机共享主机的路径2、设置主机目录为共享文件夹【Windows之间共享目录】2.1 设置共享文件夹2.2 访问共享文件夹3、nfs_共享文件夹【linux之间共享目录】一、虚拟机访问主机的文件夹 1、设置虚拟机共享主机的…

计算机内存与外存的区别及使用配合(内存外存区别与搭配;快速缓存;计算机总线结构)

计算机系统结构1. 为什么计算机存储会分为内存和外存呢?2. 关于快速缓存3. 计算机总线结构1. 为什么计算机存储会分为内存和外存呢? 外部储存器断电可以存储数据,但是读写速度相对于cpu来说很慢,而内存虽然读取速度很快但是断电之…

【php环境搭建】php全栈体系(二)

PHP环境搭建 第七章 安装与配置MySQL 一、安装MySQL软件 1. 获取MySQL安装软件 2. 双击安装即可:没有特殊情况的直接下一步就可以完成 3. 选择custom,自定义安装:选择安装路径 3.1 软件安装目录:server/mysql 3.2 数据安装目录…

OVS DPDK VXLAN隧道处理

在学习OVS VXLAN实现之前,我们先回顾一下传统VTEP设备是如何处理VXLAN报文的。如下图所示: vxlan报文进入交换机端口后,根据报文头部信息进行vxlan隧道终结。隧道终结后,根据underlay信息进行overlay映射,得到overlay的…

Spark系列之SparkSubmit提交任务到YARN

title: Spark系列 第十三章 SparkSubmit提交任务到YARN 13.1 SparkSubmit提交的一些参数解释 local 本地单线程 local[K] 本地多线程(指定K个内核) local[*] 本地多线程(指定所有可用内核) spark://HOST:PORT 连接到指定的 Spar…

欢聚季报图解:营收5.87亿美元同比降10% 净利提升

雷递网 雷建平 11月29日欢聚集团(NASDAQ: YY)今日发布2022年第三季度财报。财报显示,欢聚集团2022年第三季度营收为5.867亿美元,较上年同期下降10%。欢聚集团2022年第三季度Bigo Live的平均移动MAU为3540万,较上年同期的3100万增长14.2%&…

固态硬盘SSD

固态硬盘或固态驱动器(英语:Solid-state drive或Solid-state disk,简称SSD)是一种以集成电路制作的电脑存储设备,由于价格及最大存储容量与机械硬盘有巨大差距,固态硬盘无法与机械式硬盘竞争。可以用非易失…

视频转格式用什么工具?mp4格式转换器,好用的视频格式转换器

视频转格式用什么工具?一条视频在不同的手机、软件上,所支持的格式是不同的,可能手机不支持部分不常见的视频格式,需要使用视频格式转换器将它的格式进行修改,就能使它匹配你所需的格式。接下来,小编就带大…

集成电路光刻机精密运动台控制方法

集成电路的持续发展推动了信息技术的进步。步进扫描式光刻机是集成电路装备中 技术难度最高、价格最昂贵的关键设备。其中,精密运动台是光刻机最为核心的子系统之一, 高速、高加速和高精度的要求对控制方法的研究和应用提出了挑战。文中对集成电路光刻机…

C++ Reference: Standard C++ Library reference: Containers: list: list: empty

C官网参考链接&#xff1a;https://cplusplus.com/reference/list/list/empty/ 公有成员函数 <list> std::list::empty C98 bool empty() const; C11 bool empty() const noexcept; 测试容器是否为空 返回列表&#xff08;list&#xff09;容器是否为空&#xff08;即其…

Protobuf用法和实际操作总结

Protobuf介绍 Protobuf(下文称为 PB)是一种常见的数据序列化方式&#xff0c;常常用于后台微服务之间传递数据 protobuf 的类图如下&#xff1a; 类 Descriptor 介绍 类 Descriptor 主要是对 Message 进行描述&#xff0c;包括 message 的名字、所有字段的描述、原始 proto…

SpringCloud_第1章_入门到精通()

SpringCloud_第1章_入门到精通 文章目录SpringCloud_第1章_入门到精通1.认识微服务1.0.学习目标1.1.单体架构1.2.分布式架构1.3.微服务1.4.SpringCloud1.5.总结2.服务拆分和远程调用2.1.服务拆分原则2.2.服务拆分示例2.2.1.导入Sql语句2.2.2.导入demo工程2.3.实现远程调用案例2…

几种常用XML文档解析方案的使用操作

几种常用XML文档解析方案的使用操作XML概述组成部分XML示例约束DTDSchema解析XML解析方式常见解析器JAXP的使用准备student.xml文件解析XML文档写入XML文档dom4j的使用Document对象获取方式引入依赖解析XML文档文档写入XMLJsoup的使用引入依赖核心对象解析XML文档JsoupXPath的使…

护眼灯真能保护眼睛吗?2022双十二买什么样的护眼灯对眼睛好

护眼灯对于保护眼睛的效果&#xff0c;比起传统的普通台灯更科学、更直观。我们都知道&#xff0c;传统的普通台灯大多都是白炽灯&#xff0c;采用加热钨丝发热发光的原理来提供照明&#xff0c;这种发光方式不但效率低下、浪费能源、污染环境&#xff0c;而且光线也是特别单一…

(二)DepthAI-python相关接口:OAK Pipeline

消息快播&#xff1a;OpenCV众筹了一款ROS2机器人rae&#xff0c;开源、功能强、上手简单。来瞅瞅~ 编辑&#xff1a;OAK中国 首发&#xff1a;oakchina.cn 喜欢的话&#xff0c;请多多&#x1f44d;⭐️✍ 内容可能会不定期更新&#xff0c;官网内容都是最新的&#xff0c;请查…

Word文档格式设置——小课堂

文章目录前言1、调整显示选项2、格式设置2.1、新建空白文档&#xff0c;使用默认格式添加一至六级目录&#xff1b;2.2、设置标题的样式2.3、添加标题序号2.4、设置正文格式2.5 设置表格边框2.6 设置表格段落样式2.7 插入表格题注2.9 设置图片格式&#xff0c;并插入题注3、小技…

xxljob

分为调度中心 执行器 调度中心&#xff1a;提供可视化界面&#xff0c;配置定时任务&#xff0c;定时去调用执行器 调度中心执行器管理&#xff1a;每个springboot作为执行器&#xff0c; 也就是执行器的标识 任务管理&#xff1a;选中执行器&#xff0c;创建改该执行器下的任…

深度学习与总结JVM专辑(六):JVM字节码执行引擎

JVM字节码执行引擎前言运行时栈帧结构方法调用解析虚方法和非虚方法分派静态分派静态类型和实际类型动态分派字段没有多态性单分派和多分派JVM动态分派的实现前言 执行引擎是JVM核心的组成部分之一。 “虚拟机”是一个相对于“物理机”的概念&#xff0c;这两种机器都有代码执…

vue中含有iframe的页面如何避免路由切换时keep-alive不起作用

路由组件中使用keep-alive 其他组件会正常缓存 但是含有iframe的页面无法正常缓存&#xff0c;这个问题困扰了我很久&#xff0c;也成为了项目目前的一个瓶颈。突然有一天&#xff0c;我们的技术总监推荐给我一篇博文&#xff0c;真的是让我醍醐灌顶&#xff0c;虽然这个keep-a…

详解设计模式:外观模式

外观模式&#xff08;Facade Pattern&#xff09;&#xff0c;又称为门面模式&#xff0c;是 GoF 的 23 种设计模式中的一种结构型设计模式。 外观模式 是指提供一个统一的接口去访问多个子系统的多个不同的接口&#xff0c;它为子系统中的一组接口提供一个统一的高层接口。使得…