运行Flink作业 本章节主要介绍如何通过后台提交并运行Flink作业。 通过后台提交作业 目前Flink客户端默认安装路径为“/usr/local/flink”。具体以实际为准。 1. 通过SSH方式登录集群。 2. 配置环境变量。 在/etc/profile添加如下配置: export HADOOPHOME/usr/local/hadoop3 export FLINKHOME/usr/local/flink export PATHPATH:PATH:FLINKHOME/bin:HADOOPHOME/bin export HADOOPCONFDIRHADOOPHOME/bin exportHADOOPCONFDIRHADOOPHOME/etc/hadoop export PATHPATH:PATH:HADOOPCONFDIR export HADOOPCLASSPATHhadoop classpath 执行如下命令初始化环境变量 source /etc/profile 3. 集群默认开启Kerberos认证,需要执行以下命令以完成认证。 示例: klist kt /etc/security/keytabs/flink.keytab 获取flink.keytab的principalname kinit kt /etc/security/keytabs/flink.keytab flink.keytab的principalname 同时,应配置安全认证。在“/usr/local/flink/conf/flinkconf.yaml”配置文件中的对应配置添加keytab路径以及用户名。 security.kerberos.login.useticketcache: true security.kerberos.login.keytab: security.kerberos.login.principal: user security.kerberos.login.contexts: Client,KafkaClient 例如: security.kerberos.login.keytab: /etc/security/keytabs/hdfs.keytab security.kerberos.login.principal: hdfs 4. 运行wordcount作业。 首先执行上述第3步骤中的认证操作,然后启动Flink集群。 /usr/local/flink/bin/startcluster.sh Session模式 执行如下命令在session中提交作业。 yarnsession.sh nm "sessionname" detached flink run /usr/local/flink/examples/streaming/WordCount.jar 提交成功后,会返回已提交的Flink作业的YARN Application ID以及Web地址,访问Web地址以通过Web UI的方式查看作业状态。 Application模式 执行如下命令以Application方式提交作业。 flink runapplication t yarnapplication/usr/local/flink/examples/streaming/WordCount.jar 提交成功后,会返回已提交的Flink作业的YARN Application ID以及Web地址,访问Web地址以通过Web UI的方式查看作业状态。