superset官方文档的安装和配置

原文:

https://superset.incubator.apache.org/installation.html

下载

git clone https://github.com/apache/incubator-superset/
cd incubator-superset/contrib/docker
# prefix with SUPERSET_LOAD_EXAMPLES=yes to load examples:
docker-compose run --rm superset ./docker-init.sh
# you can run this command everytime you need to start superset now:
docker-compose up

superset官方文档指南
CONTRIBUTING.md#building
https://github.com/apache/incubator-superset/blob/master/CONTRIBUTING.md#building

非开发模式设置
incubator-superset-master\contrib\文件夹下
dockerdocker-compose.yml中变量SUPERSET_ENV:production


OS 依赖
Superset将数据库连接信息存储在其元数据数据库中。 为此,我们使用加密Python库来加密连接密码。 不幸的是,这个库具有操作系统级依赖性。

Debian and Ubuntu 
sudo apt-get install build-essential libssl-dev libffi-dev python-dev python-pip libsasl2-dev libldap2-dev
如果安装了python3.6和python2.7,Ubuntu 18.04 LTS
sudo apt-get install build-essential libssl-dev libffi-dev python3.6-dev python-pip libsasl2-dev libldap2-dev


Fedora and RHEL
sudo yum upgrade python-setuptools
sudo yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel libsasl2-devel openldap-devel


OSX
系统python不推荐,会报错:
system python is not recommended. brew’s python also ships with pip
解决:
brew install pkg-config libffi openssl python
env LDFLAGS="-L$(brew --prefix openssl)/lib" CFLAGS="-I$(brew --prefix openssl)/include" pip install cryptography==2.4.2

Windows
未得到官方支持,若想在windows下安装,可下载get-pip.py
https://bootstrap.pypa.io/get-pip.py
然后运行 python get-pip.py (可能需要admin访问)
C:\> pip install cryptography
# You may also have to create C:\Temp
C:\> md C:\Temp



Python virtualenv
建议在virtualenv中安装Superset。可通过系统包安装,或者通过pip安装
pip install virtualenv

创建和激活virtualenv
# virtualenv is shipped in Python 3.6+ as venv instead of pyvenv.
# See https://docs.python.org/3.6/library/venv.html
python3 -m venv venv
. venv/bin/activate

在windows激活语法不同:
venv\Scripts\activate

一旦激活了virtualenv,所做的一切都被限制在virtualenv中。 要退出virtualenv,只需键入deactivate即可。


Python安装 tools and pip
获取最新的pip and setuptools
pip install --upgrade setuptools pip


Superset 安装和初始化
 # Install superset
pip install superset

# Create an admin user (you will be prompted to set a username, first and last name before setting a password)
fabmanager create-admin --app superset

# Initialize the database
superset db upgrade

# Load some data to play with
superset load_examples

# Create default roles and permissions
superset init

# To start a development web server on port 8088, use -p to bind to another port
superset runserver -d
安装以后,可在浏览器里访问:http://localhost:8088
使用在创建管理员账户时输入的账户和密码,然后
 Menu -> Admin -> Refresh Metadata //引入Superset的所有数据源
Menu -> Datasources //显示Superset的所有数据源


A proper WSGI HTTP Server
虽然可以设置Superset在Nginx或Apache上运行,但许多人使用Gunicorn,最好是在异步模式下,这样可以实现令人印象深刻的并发性,并且相当容易安装和配置。
设置Flask WSGI应用程序,这是一个良好的异步设置:
gunicorn \
      -w 10 \
      -k gevent \
      --timeout 120 \
      -b  0.0.0.0:6666 \
      --limit-request-line 0 \
      --limit-request-field_size 0 \
      --statsd-host localhost:8125 \
      superset:app

请注意,gunicorn在Windows上不起作用,因此superset runserver命令不会起作用。 
另请注意,开发Web服务器(superset runserver -d)不适合生产使用。
如果不使用gunicorn,可以通过在superset_config.py中设置ENABLE_FLASK_COMPRESS = False来禁用flask-compress的使用

Flask-AppBuilder 权限
默认情况下,每次初始化Flask-AppBuilder(FAB)应用程序时,权限和视图都会自动添加到后端并与“管理员”角色关联。 但问题是,当运行多个并发工作程序时,这会在定义权限和视图时产生大量争用和竞争条件。
要缓解此问题,可以通过将环境变量SUPERSET_UPDATE_PERMS环境变量设置为0来禁用权限的自动更新。值1启用它,0禁用它。 请注意,如果未定义,则启用该功能以保持向后兼容性。
在生产环境中,初始化可以采用以下形式:
export SUPERSET_UPDATE_PERMS = 1 superset init
export SUPERSET_UPDATE_PERMS = 0 gunicorn -w 10 ... superset:app

负载均衡配置
如果在负载均衡器或反向代理(例如AWS上的NGINX或ELB)上运行superset,则可能需要使用运行a healthcheck endpoint,以便负载均衡器知道superset实例是否正在运行。 这在/ health中提供,如果Web服务器正在运行,它将返回包含“OK”的200响应。
如果负载均衡器正在 inserting X-Forwarded-For/X-Forwarded-Proto headers,则应在superset配置文件中设置ENABLE_PROXY_FIX = True以提取和使用headers。
在反向代理用于提供ssl加密的情况下,可能需要X-Forwarded-Proto的明确定义。 对于Apache Web服务器,可以设置如下:
RequestHeader set X-Forwarded-Proto "https"


配置
要配置应用程序ÿ

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值