CentOS部署Apache Superset大数据可视化BI分析工具并实现无公网IP远程访问

简介: CentOS部署Apache Superset大数据可视化BI分析工具并实现无公网IP远程访问

前言

Superset是一款由中国知名科技公司开源的“现代化的企业级BI(商业智能)Web应用程序”,其通过创建和分享dashboard,为数据分析提供了轻量级的数据查询和可视化方案。Superset在数据处理和可视化方面具有强大的功能,能够满足企业级的数据分析需求,并为用户提供直观、灵活的数据探索和展示方式。通过Superset,用户可以轻松地从海量数据中提取有价值的信息,帮助企业做出更加明智的决策。另外,团队协作进行数据分析,可以结合国内流行的内网穿透工具实现公网的实时远程访问数据。

1. 使用Docker部署Apache Superset

使用Docker compose在docker中部署Apache Superset

说明:部署步骤按照superset官网说明

1.1 第一步安装docker 、docker compose

这里选择手动下载rpm包,然后yum install *.rpm方式来安装。

下载地址:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/


说明:请选择自己对应的系统-可参考这个网页https://docs.docker.com/engine/install/


下载rpm包如下:

containerd.io-1.6.18-3.1.el7.x86_64.rpm


docker-ce-cli-23.0.1-1.el7.x86_64.rpm


docker-scan-plugin-0.23.0-1.el7.x86_64.rpm


docker-buildx-plugin-0.10.2-1.el7.x86_64.rpm


docker -ce-rootless-extras-23.0.1-1.el7.x86_64.rpm


docker-ce-23.0.1-1.el7.x86_64.rpm


docker-compose-plugin-2.16.0-1.el7.x86_64.rpm


将这些包手动上传至centos系统,例如:

我将这些包上传至/opt/dockerpackage目录

随后执行 yum install /opt/dockerpackage/*.rpm 即可。

此时,安装docker与docker compose完成。

注意:你这台电脑最好有网,应该会有些依赖项需要安装。

这里列出这些依赖项,如果你没网,那几麻烦了,要自己去找对应版本下载。
 audit-libs-python            x86_64    2.8.5-4.el7                   base                                               76 k
 checkpolicy                  x86_64    2.5-8.el7                     base                                              295 k
 container-selinux            noarch    2:2.119.2-1.911c772.el7_8     extras                                             40 k
 fuse-overlayfs               x86_64    0.7.2-6.el7_8                 extras                                             54 k
 fuse3-libs                   x86_64    3.6.1-4.el7                   extras                                             82 k
 libcgroup                    x86_64    0.41-21.el7                   base                                               66 k
 libsemanage-python           x86_64    2.5-14.el7                    base                                              113 k
 policycoreutils-python       x86_64    2.5-34.el7                    base                                              457 k
 python-IPy                   noarch    0.75-6.el7                    base                                               32 k
 setools-libs                 x86_64    3.3.8-4.el7                   base                                              620 k
 slirp4netns                  x86_64    0.4.3-4.el7_8                 extras                                             81 k

这里验证docker是否安装好

启动docker: sudo systemctl start docker

pull一个hello world 执行看看:sudo docker run hello-world

看到 Hello from Docker就表示可以了。


注意:这里hello-world镜像会从仓库pull,如果没网,需要自己去dockerhub下载这个镜像。


1.2 克隆superset代码到本地并使用docker compose启动

这里不用git clone命令,直接下载zip包再解压即可

浏览器打开https://github.com/apache/superset网页,Dowanload ZIP 即可。


将下载的ZIP包(superset-master.zip)上传至/opt/superset目录,需要自己创建。

使用unzip superset-master.zip 解压后得到superset-master文件夹


随后cd superset-master- 如果要修改默认的用户名密码,请先看第3步,而后再继续。

执行docker compose -f docker-compose-non-dev.yml pull

这个过程会需要几分钟


上一步完成后,执行docker compose -f docker-compose-non-dev.yml up

等到控制台输出变慢后 就完成了。


此时打开浏览器 输入:http://IP:8088/或localhost:8088登录即可。

默认用户名密码是admin


进入到Superset登录界面

2. 安装cpolar内网穿透,实现公网访问

这里我们用cpolar内网穿透工具,它支持http/https/tcp协议,不需要公网IP,不需要设置路由器,使用不限制流量。

登录cpolar官网:https://www.cpolar.com

在cpolar的下载页面中,找到对应版本的cpolar安装程序,笔者使用的是Windows操作系统,因此选择Windows版下载。

下载完成后,将下载的文件解压,并双击其中的.msi文件,就能自动执行cpolar的安装程序,我们只要一路Next,就能完成安装。

由于cpolar会为每个用户创建独立的数据隧道,并辅以用户密码和token码保证数据安全,因此我们在使用cpolar之前,需要进行用户注册。注册过程也非常简单,只要在cpolar主页右上角点击用户注册,在注册页面填入必要信息,就能完成注册。

注册完后,登录cpolar的客户端,(可以在浏览器中输入localhost:8088直接访问,也可以在开始菜单中点击cpolar客户端的快捷方式),点击客户端主界面左侧隧道管理——创建隧道按钮,进入本地隧道创建页面

  1. 隧道名称:可以看做cpolar本地的隧道信息注释,只要方便我们分辨即可
  2. 协议:选择http协议
  3. 本地地址:本地地址即为本地网站的输出端口号,内网默认端口为192.168.50.170:88,这里填入192.168.50.170:88

注意:如果正常输入8080端口,网页出现400情况,需要把前面IP完整填写到本地地址和点击 高级——Host头域

  1. 域名类型:如果打算创建临时数据隧道,则直接勾选“随机域名”,由cpolar客户端自行生成网络地址
  2. 地区:与cpolar云端预留的信息一样,我们依照实际使用地填写即可

完成这些设置后,就可以点击下方按钮。

数据隧道创建完成后,cpolar会自动跳转至隧道管理——隧道列表页面。在这个页面,我们可以对这条数据隧道进行管理,包括开启、关闭或删除这条隧道,也可以点击编辑按钮,对这条数据隧道的信息进行修改。

superset数据隧道入口(公共互联网访问地址),则可以在状态——在线隧道列表中找到。

复制两个隧道的任意一个公网地址,粘贴到公网浏览器中。

粘贴公网地址到浏览器后,显示公网访问公司的内网superset登录界面,登录后实现公网访问内网。

3. 设置固定连接公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】


注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称。

保留成功后复制保留成功的二级子域名的名称

返回登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名

点击更新(注意,点击一次更新即可,不需要重复提交)

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名

最后,我们使用固定的公网地址访问superset,(两个地址复制哪一个都可以)可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,在外面就可以通过外网地址访问superset大数据系统了,随时随地查看数据!

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
Linux 网络安全 Apache
CentOS 7.2配置Apache服务httpd(上)
CentOS 7.2配置Apache服务httpd(上)
917 1
|
10月前
|
域名解析 监控 网络协议
21.7K star!再见吧花生壳,没有公网ip,也能搞定所有网络访问!内网穿透神器NPS
“nps”是一款强大的内网穿透工具,支持多种协议与功能。它无需公网IP或复杂配置,可实现远程桌面、文件共享和私有云搭建等。项目采用Go语言开发,具有高性能与轻量级特点,适用于远程办公、物联网管理等场景。其核心亮点包括零配置穿透、多级代理网络、实时流量监控及企业级安全特性。对比同类工具,“nps”在安装复杂度、协议支持和管理界面方面表现优异。项目地址:https://github.com/ehang-io/nps。
2471 12
|
Linux 文件存储 开发工具
贝锐花生壳内网穿透:无需公网IP,远程访问自建WebDAV文件共享!
WebDAV共享协议支持几乎所有系统和设备,极大方便了文件共享。群晖NAS等设备可通过安装WebDAV套件实现文件共享,结合花生壳内网穿透服务,只需三步即可实现远程访问。具体步骤包括:1. 安装花生壳客户端;2. 登录并配置映射;3. 创建映射,生成远程访问地址。这样,用户可以随时随地访问和管理文件资源。
1191 3
|
定位技术 文件存储 网络架构
Docker部署PhotoPrism、Immich图片管理应用,无需公网IP远程访问教程
除了Synology、QNAP、TerraMaster等品牌的NAS设备内置图库功能,市面上还有多种备受欢迎的第三方应用,如PhotoPrism、Immich、LibrePhotos、Piwigo、Photoview等。这些应用不仅提供强大的图片管理能力,还可通过Docker轻松部署。借助贝锐花生壳服务,即使没有公网IP也能实现远程访问,突破地理限制,提升数据可访问性和安全性,让用户随时随地管理私人图库。
2162 1
|
Linux PHP Apache
CentOS 7.2配置Apache服务httpd(下)
CentOS 7.2配置Apache服务httpd(下)
272 1
|
缓存 数据可视化 BI
帆软BI 模仿一个可视化护理软件大屏 (三百六十行 行行fine BI)
帆软BI 模仿一个可视化护理软件大屏 (三百六十行 行行fine BI)
175 0
|
数据可视化 BI Windows
这两个BI可视化软件如何选择?亲测推荐
这两个BI可视化软件如何选择?亲测推荐
260 0
|
安全 Java 应用服务中间件
在CentOS 7上安装Apache Tomcat 8的方法
在CentOS 7上安装Apache Tomcat 8的方法
692 0
|
6月前
|
机器学习/深度学习 传感器 分布式计算
数据才是真救命的:聊聊如何用大数据提升灾难预警的精准度
数据才是真救命的:聊聊如何用大数据提升灾难预警的精准度
445 14