本地部署开源流处理框架 Apache Flink 并实现外部访问

Apache Flink 是一个开源的流处理框架,用于实时数据流的处理和分析。

本文将详细的介绍如何利用 Docker 在本地部署 Apache Flink 并结合路由侠实现外网访问本地部署的 Apache Flink 。‌

1,打开 Linux 终端,确保 Docker 已经安装好了。拉取 Flink 镜像。

复制代码
docker pull flink

2,创建 Flink 项目文件夹并进入。

复制代码
mkdir -p docker/flink && cd docker/flink

3,用 vim docker-compose.yml 打开文件,把下面代码复制进去并保存,端口和其他信息可根据自己需要自行更改。

复制代码
version: "2.1"
services:
jobmanager:
image: flink
expose:
- "6123"
ports:
- "8081:8081"
command: jobmanager
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager
taskmanager:
image: flink
expose:
- "6121"
- "6122"
depends_on:
- jobmanager
command: taskmanager
links:
- "jobmanager:jobmanager"
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager

4,启动执行。

复制代码
docker-compose up -d

5,在浏览器输入 http://本地IP:8081 ,就可以看到 Flink 主界面了。

安装路由侠内网穿透。

1,当前未提供网页管理,需要先在任意一台 Windows 机器安装路由侠 Windows 版本,用作跨机器管理。

2,在路由侠客户端主界面,进入"设备管理",点击右下角的"添加设备",此时可查看到对应的安装码,此安装码用于将设备添加到对应账号下,可选中后复制。

3,直接下载后导入:

复制代码
wget https://dl.luyouxia.com:8443/v2/lyx-docker-x86_64.tar
docker load -i lyx-docker-x86_64.tar

4,然后使用该镜像启动容器

复制代码
docker run --name lyx -it --restart=always --net=host -e code=这里填写安装码 luyouxia/lyx

5,此时,需要等待下载和安装的过程,如果一切正常,最终可以看到一些输出,并且可以看到如下提示:

复制代码
[Device] Logged in. Token: ....

这就表示安装成功了。

当前 Linux 终端这边,如果是使用的上面的命令,Docker 是运行在前台,此时可以按住 Ctrl+C ,退出路由侠,容器也将退出。现在可以使用以下命令将其放入后台持续运行:

复制代码
docker start lyx

注意如果容器删除,重新 docker run, 将创建为新的设备。

需要注意的是,因为容器参数已经添加了 --restart=always,这样开机就会自动启动,不需要再手动启动路由侠了。

6,现在回到 Windows 这边设备列表,点击右上角的×返回主界面,再次进入,就可以找到这个设备,可以修改名称。

7,回到主界面,点击【内网映射】。

8,注意右上角的设备名称下拉框,这里选中刚刚添加的设备名称,此时在这个界面上添加的映射,就属于刚刚这个设备。添加或修改一般需要等待30秒,容器中的路由侠进程就会更新并加载。切换好设备后,点击【添加映射】。

9,选择【原生端口】。

10,在内网端口里填写端口 8081 后点击【创建】按钮,如下图。

11,创建好后,就可以看到一条映射的公网地址,鼠标右键点击【复制地址】。

12,在外网电脑上,打开浏览器,在地址栏输入从路由侠生成的外网地址,就可以看到内网部署的 Flink 界面了。

相关推荐
大树886 小时前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
大志哥1237 小时前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
果丁智能8 小时前
物联网智能锁赋能集中式住宿:身份核验与远程权限管控的全链路技术实践
大数据·人工智能·物联网·智能家居
treesforest8 小时前
AI安全系统如何识别异常访问?IP风险识别正在成为关键能力
网络·人工智能·tcp/ip·安全·web安全
ApacheSeaTunnel8 小时前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步
程序员mine9 小时前
HTTPS-TLS加密与证书完全指南(中)
网络协议·https·ssl
weixin_397574099 小时前
PDF复杂表格的1:1还原引擎:跨页表格自动拼接技术实战
大数据·人工智能·pdf
极光代码工作室9 小时前
基于数据仓库的电商数据分析平台
大数据·hadoop·python·spark·数据可视化
之歆9 小时前
现代 HTTP 客户端深度解析:Fetch 与 Axios
chrome·网络协议·http
秋名山码民10 小时前
Graph RAG 深度解析:从向量检索到知识推理的技术演进
大数据·人工智能·rag