Flink开发流程参考如下步骤:
图10-3 Flink 应用程序开发流程
应用开发指南 10 Flink 开发指南(安全模式)
表10-2 Flink 应用开发的流程说明
操作系统 ● 开发环境:Windows系统,支持Windows 7以上版本。
● 运行环境:Linux系统
如需在本地调测程序,运行环境需要和集群业务平面网络互 通。
应用开发指南 10 Flink 开发指南(安全模式)
准备项 说明
安装JDK 开发和运行环境的基本配置。版本要求如下:
服务端和客户端仅支持自带的OpenJDK,版本为1.8.0_272,不 允许替换。
对于客户应用需引用SDK类的Jar包运行在客户应用进程中的。
● X86客户端:Oracle JDK:支持1.8版本;IBM JDK:支持 1.8.5.11版本。
7-zip 用于解压“*.zip”和“*.rar”文件,支持7-Zip 16.04版本。
准备运行环境
b. 登录FusionInsight Manager页面,下载集群客户端软件包至主管理节点并
解压,然后以root用户登录主管理节点,进入集群客户端解压路径下,拷贝
cd /tmp/FusionInsight-Client
tar -xvf FusionInsight_Cluster_1_Services_Client.tar tar -xvf FusionInsight_Cluster_1_Services_ClientConfig.tar cd FusionInsight_Cluster_1_Services_ClientConfig
scp Flink/config/* root@客户端节点IP地址:/opt/client/conf
准备开发用户时获取的keytab文件也放置于该目录下,主要配置文件说明如 表10-4所示。
表10-4 配置文件
文件名称 作用
core-site.xml 配置Flink详细参数。
hdfs-site.xml 配置HDFS详细参数。
yarn-site.xml 配置Yarn详细参数。
flink-conf.yaml Flink客户端配置文件。
user.keytab 对于Kerberos安全认证提供用户信息。
krb5.conf Kerberos Server配置信息。
c. 检查客户端节点网络连接。
在安装客户端过程中,系统会自动配置客户端节点“hosts”文件,建议检查
“/etc/hosts”文件内是否包含集群内节点的主机名信息,如未包含,需要手 动拷贝解压目录下的“hosts”文件中的内容到客户端所在节点的hosts文件 中,确保本地机器能与集群各主机在网络上互通。
10.2.2 配置并导入样例工程
操作场景
Flink针对多个场景提供样例工程,包含Java样例工程和Scala样例工程等,帮助客户快 速学习Flink工程。
针对Java和Scala不同语言的工程,其导入方式相同。
以下操作步骤以导入Java样例代码为例。操作流程如图10-4所示。
应用开发指南 10 Flink 开发指南(安全模式)
图10-4 导入样例工程流程
操作步骤
步骤1 参考通过开源镜像站获取样例工程,获取样例代码解压目录中“src\flink-examples”
目录下的样例工程文件夹“flink-examples-security”。
说明
● 在安全模式下,获取“src\flink-examples”下的样例工程flink-examples-security。
● 在普通模式下,获取“src\flink-examples”下的样例工程flink-examples-normal。
步骤2 在导入样例工程之前,IntelliJ IDEA需要进行配置JDK。
1. 打开IntelliJ IDEA,单击“Configure”下拉按钮。
应用开发指南 10 Flink 开发指南(安全模式)
图10-5 Choosing Configure
2. 在“Configure”下拉菜单中单击“Project Defaults”。
图10-6 Choosing Project Defaults
3. 在“Project Defaults”菜单中选择“Project Structure”。
应用开发指南 10 Flink 开发指南(安全模式)
图10-7 Project Defaults
4. 在打开的“Project Structure”页面中,选择“SDKs”,单击绿色加号添加JDK。
图10-8 添加 JDK
5. 在弹出的“Select Home Directory for JDK”窗口,选择对应的JDK目录,然后单 击“OK”。
应用开发指南 10 Flink 开发指南(安全模式)
图10-9 选择 JDK 目录
6. 完成JDK选择后,单击“OK”完成配置。
应用开发指南 10 Flink 开发指南(安全模式)
图10-10 完成 JDK 配置
步骤3 (可选)如果导入Scala语言开发样例工程,还需要在IntelliJ IDEA中安装Scala插件。
1. 在“Configure”下拉菜单中,单击“Plugins”。
图10-11 Plugins
应用开发指南 10 Flink 开发指南(安全模式)
2. 在“Plugins”页面,选择“Install plugin from disk”。
图10-12 Install plugin from disk
3. 在“Choose Plugin File”页面,选择对应版本的Scala插件包,单击“OK”。
图10-13 choose plugin File
4. 在“Plugins”页面,单击“Apply”安装Scala插件。
5. 在弹出的“Platform and Plugin Updates”页面,单击“Restart”,使配置生 效。
应用开发指南 10 Flink 开发指南(安全模式)
图10-14 Platform and Plugin Updates
步骤4 将Java样例工程导入到IDEA中。
1. 打开IntelliJ IDEA。在“Quick Start”页面选择“Import Project”。
或者,针对已使用过的IDEA工具,您可以从IDEA主界面直接添加。选择“File >
Import project...”导入工程。
图10-15 Import Project(Quick Start 页面)
2. 选择需导入的样例工程路径,然后单击“OK”。
应用开发指南 10 Flink 开发指南(安全模式)
图10-16 Select File or Directory to Import
3. 选择从已存在的源码创建工程,然后单击“Next”。
应用开发指南 10 Flink 开发指南(安全模式)
图10-17 Create project from existing sources
4. 确认导入路径和工程名称,单击“Next”。
应用开发指南 10 Flink 开发指南(安全模式)
图10-18 Import Project
5. 确认导入工程的root目录,默认即可,单击“Next”。
应用开发指南 10 Flink 开发指南(安全模式)
图10-19 Import Project
6. 确认IDEA自动识别的依赖库以及建议的模块结构,默认即可,单击“Next”。
7. 确认工程所用JDK,然后单击“Next”。
8. 导入结束,单击“Finish”,IDEA主页显示导入的样例工程。
应用开发指南 10 Flink 开发指南(安全模式)
图10-20 导入结束
应用开发指南 10 Flink 开发指南(安全模式)
图10-21 已导入工程
步骤5 导入样例工程依赖的Jar包。
如果通过开源镜像站方式获取的样例工程代码,在配置好Maven后, 相关依赖jar包将 自动下载,不需手动添加。
说明
当样例代码使用其他FusionInsight组件时,例如Kafka等,请去对应FusionInsight组件的服务端 安装目录查找并添加依赖包。样例工程对应的依赖包详情,请参见参考信息。
步骤6 (可选)如果导入Scala语言开发的样例程序,还需要为工程设置语言。
1. 在IDEA主页,选择“File>Project Structures...”进入“Project Structure”页面。
2. 选择“Modules”,选中工程名称,然后右键选择“Add > Scala”。
应用开发指南 10 Flink 开发指南(安全模式)
图10-22 选择 Scala 语言
3. 当IDEA可以识别出Scala SDK时,在设置界面,选择编译的依赖jar包,然后单击
“OK”应用设置
图10-23 Add Scala Support
4. 当系统无法识别出Scala SDK时,需要自行创建。
a. 单击“Create...”。
应用开发指南 10 Flink 开发指南(安全模式)
图10-24 Create...
b. 在“Select JAR's for the new Scala SDK”页面单击“Browse...”。
图10-25 Select JAR's for the new Scala SDK
c. 在“Scala SDK files”页面选择scala sdk目录,单击“OK”。
应用开发指南 10 Flink 开发指南(安全模式)
图10-26 Scala SDK files
5. 设置成功,单击“OK”保存设置。
图10-27 设置成功
步骤7 设置IDEA的文本文件编码格式,解决乱码显示问题。
1. 在IDEA首页,选择“File > Settings...”。
应用开发指南 10 Flink 开发指南(安全模式)
图10-28 选择 Settings
2. 编码配置。
a. 在“Settings”页面,展开“Editor”,选择“File Encodings”。
b. 分别在右侧的“IDE Encoding”和“Project Encoding”的下拉框中,选择
“UTF-8”。
c. 单击“Apply”应用配置。
d. 单击“OK”完成编码配置。
应用开发指南 10 Flink 开发指南(安全模式)
图10-29 Settings
说明
● 请从Flink服务端安装目录获取相关的依赖包。
● 请从Kafka环境中获取Kafka依赖包。
● 具体依赖包请查看参考信息。
----结束