在银河麒麟系统上安装flink需安装完整版openjdk 11(非-headless)、解压flink 1.18.1二进制包、配置flink_home、将rest.bind-address设为0.0.0.0、开放8081端口,否则jobmanager无法启动或web ui不可访问。

在银河麒麟操作系统上安装和配置Flink计算环境,需避开系统自带的headless JDK陷阱、适配国产平台架构、正确设置监听地址并开放端口,否则JobManager无法启动或Web UI无法远程访问。
确认并安装完整版JDK 11
银河麒麟V10/V11默认软件源中的openjdk-11-jdk-headless不包含javac和tools.jar,会导致StandaloneSessionClusterEntrypoint启动时直接抛NoClassDefFoundError。
执行sudo apt update && sudo apt upgrade -y同步软件包索引。
安装完整JDK:运行sudo apt install openjdk-11-jdk -y(必须带-jdk后缀,不能用-jre或-headless)。
验证是否为完整版:java -version输出应含11.0.字样,且ls $JAVA_HOME/bin/javac必须返回可执行文件路径;若报错,说明仍装的是精简包,需卸载重装。
【$JAVA_HOME必须指向jdk根目录,例如/usr/lib/jvm/java-11-openjdk-amd64,不能是jre子目录】
下载并解压Flink二进制包
优先选用经社区验证兼容ARM/x86双架构的稳定版本,如Flink 1.18.1(非Hadoop集成版)。
执行:wget https://archive.apache.org/dist/flink/flink-1.18.1/flink-1.18.1-bin-scala_2.12.tgz
解压到规范路径:sudo tar -zxvf flink-1.18.1-bin-scala_2.12.tgz -C /opt/
授权当前用户完全控制:sudo chown -R $USER:$USER /opt/flink-1.18.1
禁止使用含
配置环境变量与核心参数
编辑~/.bashrc,在末尾追加:
export FLINK_HOME=/opt/flink-1.18.1
export PATH=$FLINK_HOME/bin:$PATH
立即生效:source ~/.bashrc,再执行flink --version确认命令可用。
进入配置目录:cd $FLINK_HOME/conf
编辑flink-conf.yaml,关键修改两处:
① 设置REST服务监听地址为全网段:rest.bind-address: 0.0.0.0(默认localhost,远程访问必改)
② 显式声明RPC地址:jobmanager.rpc.address: localhost
保存退出。这一步漏改会导致浏览器打不开http://:8081。
启动集群并验证连通性
方法一:直接启动单机集群
执行:$FLINK_HOME/bin/start-cluster.sh(切勿加sudo,否则日志权限混乱)
检查进程:jps -l | grep -E "(Standalone|TaskManager)",必须同时看到StandaloneSessionClusterEntrypoint和TaskManagerRunner两个进程。
方法二:手动启动JobManager与TaskManager(便于调试)
先启动JobManager:$FLINK_HOME/bin/jobmanager.sh start
再启动TaskManager:$FLINK_HOME/bin/taskmanager.sh start
开放8081端口:sudo ufw allow 8081(Ubuntu系)或sudo firewall-cmd --add-port=8081/tcp --permanent && sudo firewall-cmd --reload(Kylin Server版)。
从本地或局域网其他机器访问http://:8081,页面加载成功即表示Flink计算环境已就绪。










