You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS 7下Apache Superset企业内网生产环境部署配置问题咨询

CentOS 7 企业内网 Apache Superset 生产环境部署全流程

1 预安装环境准备

  • 先升级系统基础依赖:
yum update -y
  • 安装编译及运行必备依赖包:
yum install -y gcc python3-devel python3-pip openssl-devel libffi-devel cyrus-sasl-devel openldap-devel
  • 创建专用的superset系统用户,家目录指定为/opt/superset,禁止交互式登录,符合生产安全要求:
useradd -r -m -d /opt/superset -s /sbin/nologin superset

2 虚拟环境及核心组件安装

所有安装操作都在superset用户权限下执行,避免权限溢出:

  • 创建Python虚拟环境:
sudo -u superset bash -c "cd ~ && python3 -m venv venv"
  • 激活虚拟环境并升级pip,安装Superset、Gunicorn及常用数据库驱动:
sudo -u superset bash -c "cd ~ && source venv/bin/activate && \
pip install --upgrade pip setuptools wheel && \
pip install apache-superset gunicorn psycopg2-binary mysqlclient"
  • 初始化Superset基础配置:
# 初始化数据库
sudo -u superset bash -c "cd ~ && source venv/bin/activate && superset db upgrade"
# 创建管理员账号,按提示输入用户名、邮箱、密码即可
sudo -u superset bash -c "cd ~ && source venv/bin/activate && superset fab create-admin"
# 初始化基础角色权限
sudo -u superset bash -c "cd ~ && source venv/bin/activate && superset init"
# 可选:加载示例数据用于功能测试
sudo -u superset bash -c "cd ~ && source venv/bin/activate && superset load_examples"

3 生产配置调整

在superset用户家目录下创建配置文件superset_config.py,写入自定义配置:

sudo -u superset bash -c "cd ~ && vim superset_config.py"

配置文件核心内容参考:

# 生成专属密钥,执行 `openssl rand -hex 32` 可生成随机字符串填入
SECRET_KEY = '替换为你生成的32位以上随机字符串'
# 允许访问的域名/IP列表,填入企业内网访问地址
CSRF_TRUSTED_ORIGINS = ['https://内网IP', 'https://内网域名']
# 服务监听地址
SUPERSET_WEBSERVER_ADDRESS = '127.0.0.1'
# 服务端口
SUPERSET_WEBSERVER_PORT = 8088

注:可根据企业需求额外添加LDAP认证、数据连接白名单等安全配置

4 配置systemd系统服务

创建服务文件/etc/systemd/system/superset.service,内容如下:

[Unit]
Description=Apache Superset BI Service
After=network.target

[Service]
User=superset
Group=superset
WorkingDirectory=/opt/superset
Environment="PATH=/opt/superset/venv/bin"
ExecStart=/opt/superset/venv/bin/gunicorn --workers 4 --timeout 120 --bind 127.0.0.1:8088 "superset.app:create_app()"
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target
  • 加载服务配置并设置开机自启:
systemctl daemon-reload
systemctl enable --now superset
  • 验证服务运行状态:
systemctl status superset

返回active (running)即为运行正常。

5 自签名证书及反向代理配置

使用Nginx作为反向代理,配置自签名证书实现HTTPS访问:

  • 安装Nginx:
yum install -y nginx
  • 创建证书存储目录并生成10年有效期自签名证书,按提示填写企业信息即可:
mkdir -p /etc/nginx/ssl
openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/nginx/ssl/superset.key -out /etc/nginx/ssl/superset.crt
  • 创建Nginx配置文件/etc/nginx/conf.d/superset.conf,内容如下:
server {
    listen 443 ssl;
    server_name 内网IP 内网域名;

    ssl_certificate /etc/nginx/ssl/superset.crt;
    ssl_certificate_key /etc/nginx/ssl/superset.key;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    location / {
        proxy_pass http://127.0.0.1:8088;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}
  • 验证Nginx配置无误后启动服务并设置开机自启:
nginx -t
systemctl enable --now nginx
  • 开放防火墙HTTPS端口:
firewall-cmd --add-service=https --permanent
firewall-cmd --reload

6 访问验证

  • 将生成的/etc/nginx/ssl/superset.crt证书文件分发到授权用户终端,导入Chrome浏览器的「受信任的根证书颁发机构」存储区
  • 打开Chrome访问https://内网IP或https://内网域名,使用之前创建的管理员账号即可正常登录使用

内容的提问来源于stack exchange,提问作者kayhan yüksel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 21:15:03