在统信UOS上部署Flink,听起来是个技术活儿,但拆开来看其实就几步:先搞定Ja va环境,再下载Flink包,解压、配环境变量、改几个配置参数,最后启动集群。整个过程走下来,你会发现它比想象中要顺畅得多——前提是别踩到JDK版本的坑。

下面把这几个环节挨个说清楚,每个步骤的关键点都会点到位。
确认Ja va运行环境
打开终端,敲一句 ja va -version。如果看到返回信息里写着 JDK 11 或 JDK 17(比如 openjdk version "17.0.1"),那环境就到位了。如果系统提示 command not found,或者版本比11还老,那就先去应用商店搜一下“JDK”,把官方适配的OpenJDK装上。
这里有个硬性门槛:必须用JDK 11或17。Flink 1.15及之后的版本已经彻底抛弃JDK 8了,强行用老版本的话,JobManager启动时会直接挂掉,而且报错信息还不明显,容易绕弯路。
下载并解压Flink安装包
到Apache Flink官网下载页面,挑一个最新的稳定版(比如 flink-1.19.1-bin-scala_2.12.tgz),存到“下载”目录里。
然后打开终端,执行解压命令把它放到 /opt 下:
sudo tar -xzf ~/下载/flink-*.tgz -C /opt
解压完就进入目录:cd /opt/flink-*。注意目录名里带版本号,用Tab键补全最保险,省得打错。
配置Flink环境变量
编辑当前用户的环境文件:vim ~/.bashrc,在末尾加上两行:
export FLINK_HOME=/opt/flink-1.19.1
export PATH=$PATH:$FLINK_HOME/bin
保存退出后马上生效:source ~/.bashrc。验证一下——echo $FLINK_HOME 应该输出路径,flink --version 应该显示版本号。到这步,环境变量就配好了。
修改核心配置文件
进入配置目录:cd $FLINK_HOME/conf。编辑 flink-conf.yaml,两个关键参数必须动:
第一,把 jobmanager.rpc.address: localhost 改成 jobmanager.rpc.address: 0.0.0.0。不改的话,Web UI只能在本机访问,远程浏览器根本打不开8081端口,调试和监控就成了摆设。
第二,把 taskmanager.numberOfTaskSlots: 1 改成 taskmanager.numberOfTaskSlots: 4,这样本地并发能力就提上来了。不改也能启动,但效率会差一截。
改完保存,这一步不能省略。
启动Flink单机集群
执行启动脚本:$FLINK_HOME/bin/start-cluster.sh。
然后检查进程是否跑起来:jps | grep -E "(StandaloneSession|TaskManager)"。正常情况下应该看到两个进程:StandaloneSessionClusterEntrypoint 和 TaskManagerRunner。
最后打开浏览器,访问 https://localhost:8081。页面能正常加载出来,就说明部署成功了。到这一步,整个Flink单机集群就算跑起来了,接下来就可以往上面提交流式任务了。
