在 Amazon EC2 上托管 Apache Superset 是一个相对复杂的过程,但可以通过以下步骤来完成。Apache Superset 是一个现代的数据可视化和数据探索平台,通常需要 Python、Flask、SQLAlchemy 和其他一些依赖项。以下是一个基本的指南,帮助您在 EC2 实例上安装和配置 Apache Superset。
使用 SSH 连接到您的 EC2 实例:
ssh -i /path/to/your-key.pem ubuntu@your-ec2-public-dns
在实例上安装必要的依赖项:
sudo apt update
sudo apt install -y python3-pip python3-dev libpq-dev build-essential libssl-dev libffi-dev python3-setuptools
创建一个虚拟环境(可选,但推荐):
sudo apt install -y python3-venv python3 -m venv superset-venv source superset-venv/bin/activate
安装 Apache Superset:
pip install apache-superset
初始化数据库:
superset db upgrade
创建管理员用户:
export FLASK_APP=superset superset fab create-admin 按照提示输入用户名、电子邮件和密码。
加载示例数据(可选):
superset load_examples
初始化 Superset:
superset init
您可以使用以下命令启动 Superset:
superset run -p 8088 --with-threads --reload --debugger
确保您的 EC2 实例的安全组允许入站流量到 8088 端口。您可以在 AWS 管理控制台中找到安全组设置,并添加一个规则,允许来自您的 IP 地址或所有 IP 地址的 TCP 流量。
在浏览器中访问您的 Superset 实例:
http://your-ec2-public-dns:8088
使用您在创建管理员用户时设置的凭据登录。
如果您希望在生产环境中运行 Superset,建议使用更强大的 WSGI 服务器(如 Gunicorn)和反向代理(如 Nginx)来处理请求。以下是一个简单的 Nginx 配置示例:
sudo apt install -y nginx
sudo nano /etc/nginx/sites-available/superset
添加以下内容:
nginx
server { listen 80; server_name your-ec2-public-dns; 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; } }
sudo ln -s /etc/nginx/sites-available/superset /etc/nginx/sites-enabled
sudo nginx -t
sudo systemctl restart nginx
领取专属 10元无门槛券
手把手带您无忧上云