flink可以做为批处理,也可以流处理的工具。功能根spark差不多,不过据说比spark强大。据说天猫双11,就用的这玩意。
一,创建flink parcel
1,下载flink parcel
# git clone https://github.com/pkeropen/flink-parcel.git
2,配置flink-parcel.properties
# vim flink-parcel/flink-parcel.properties #FLINK 下载地址 FLINK_URL=https://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.9.1/flink-1.9.1-bin-scala_2.12.tgz #flink版本号 FLINK_VERSION=1.9.1 #扩展版本号 EXTENS_VERSION=BIN-SCALA_2.12 #操作系统版本,以centos为例 OS_VERSION=7 #CDH 小版本 CDH_MIN_FULL=5.2 CDH_MAX_FULL=6.3.2 #CDH大版本 CDH_MIN=5 CDH_MAX=6
3,生成parcel,csd文件
# ./flink-parcel//build.sh parcel # ./flink-parcel//build.sh csd_on_yarn [root@bigserver1 flink-parcel]# ll 总用量 240636 -rwxr-xr-x 1 root root 5863 1月 21 09:59 build.sh drwxr-xr-x 6 root root 142 1月 21 10:09 cm_ext drwxr-xr-x 4 root root 29 1月 21 10:16 FLINK-1.9.1-BIN-SCALA_2.12 drwxr-xr-x 2 root root 121 1月 21 14:55 FLINK-1.9.1-BIN-SCALA_2.12_build //parcel文件目录,新生成的 -rw-r--r-- 1 root root 246364329 9月 30 15:20 flink-1.9.1-bin-scala_2.12.tgz drwxr-xr-x 5 root root 53 1月 21 10:44 flink_csd_build drwxr-xr-x 5 root root 53 1月 21 09:59 flink-csd-on-yarn-src drwxr-xr-x 5 root root 53 1月 21 09:59 flink-csd-standalone-src -rw-r--r-- 1 root root 8259 1月 21 10:44 FLINK_ON_YARN-1.9.1.jar //csd文件,新生成的 -rw-r--r-- 1 root root 347 1月 21 10:34 flink-parcel.properties drwxr-xr-x 3 root root 85 1月 21 09:59 flink-parcel-src -rw-r--r-- 1 root root 11357 1月 21 09:59 LICENSE -rw-r--r-- 1 root root 4334 1月 21 09:59 README.md
在这里,我并没有使用Cloudera Data Flow,因为是收费,60天的试用期。在网上看了一下,很多文章讲的是Cloudera Data Flow。但是没有下载地址。现在提供出来。
https://archive.cloudera.com/csa/1.0.0.0/csd/FLINK-1.9.0-csa1.0.0.0-cdh6.3.0.jar
https://archive.cloudera.com/csa/1.0.0.0/parcels/FLINK-1.9.0-csa1.0.0.0-cdh6.3.0-el7.parcel
https://archive.cloudera.com/csa/1.0.0.0/parcels/FLINK-1.9.0-csa1.0.0.0-cdh6.3.0-el7.parcel.sha
https://archive.cloudera.com/csa/1.0.0.0/parcels/manifest.json
二,cdh6整合flink
1,配置nginx
# yum install nginx # vim /etc/nginx/conf.d/cloudera.conf //nginx配置 server { listen 80; server_name bigserver1; root /var/www/html; autoindex on; autoindex_exact_size off; autoindex_localtime on; charset utf-8; } # systemctl restart nginx //重启nginx # cp -r FLINK-1.9.1-BIN-SCALA_2.12_build /var/www/html/flink1.9
2,cloudera manager 配置flink parcel
3,csd文件到相应目录
# cp FLINK_ON_YARN-1.9.1.jar /var/www/html/flink1.9/ # cp FLINK_ON_YARN-1.9.1.jar /opt/cloudera/csd/ # systemctl restart cloudera-scm-server //一定要重启
FLINK_ON_YARN-1.9.1.jar copy到二个地方,一个cloudera-scm-server所在机器的/opt/cloudera/csd/,这个是必须的。还有一个nginx所在机器的,根parcel文件所在的目录相同。
4,激活flink
一定要重启,重启完了后,检查新parcel,flink才会出现,然后下载,分配,激活。
5,添加flink服务
6,自定义角色
7,审核更改
在这里要注意:
security.kerberos.login.keytab
security.kerberos.login.principal
这二个值,要置为空,上图中没有截出来。
8,下载flink-shaded-hadoop
# /opt/cloudera/parcels/FLINK/lib/flink/lib # wget https://repo.maven.apache.org/maven2/org/apache/flink/flink-shaded-hadoop-2-uber/2.6.5-7.0/flink-shaded-hadoop-2-uber-2.6.5-7.0.jar # scp flink-shaded-hadoop-2-uber-2.6.5-7.0.jar bigserver2:/opt/cloudera/parcels/FLINK/lib/flink/lib # scp flink-shaded-hadoop-2-uber-2.6.5-7.0.jar bigserver3:/opt/cloudera/parcels/FLINK/lib/flink/lib # scp flink-shaded-hadoop-2-uber-2.6.5-7.0.jar bigserver4:/opt/cloudera/parcels/FLINK/lib/flink/lib # scp flink-shaded-hadoop-2-uber-2.6.5-7.0.jar bigserver5:/opt/cloudera/parcels/FLINK/lib/flink/lib # export HADOOP_CLASSPATH=/opt/cloudera/parcels/FLINK/lib/flink/lib
如果不做这步操作,flink启动不起来,strerr.log会报以下错。
[21/Jan/2020 16:40:09 +0000] 27087 MainThread redactor ERROR Redaction rules file doesn't exist, not redacting logs. file: redaction-rules.json, directory: /run/cloudera-scm-agent/process/2657-flink_on_yarn-FLINK_YARN
9,启动成功
# ./flink run -m yarn-cluster -yn 1 -yjm 1024 -ytm 1024 /opt/cloudera/parcels/FLINK/lib/flink/examples/streaming/WordCount.jar --input hdfs://bigdata1/test/word --output hdfs://bigdata1/test/word_res
任务列表已有,到些整合完成
转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/hadoop/2362.html
选用你提供的CSA的官方试用parcel包,我安装到cdh6.3.0后发现功能“阉割”了:1.其web ui中没有提交jar包的按钮;2.仅能standalone模式运行安装包examples目录下所提供的WordCount.jar且同目录下的SocketWindowWordCount.jar也无法单机或yarn的任何模式下运行。另外,安装后默认启用了kerberos安全认证功能,我在cdh的flink“配置”处手动清除了默认的两个选项共三个默认值:Client和KafkaClient、flink.keytab,重启后运行flink list命令仍报错:WARN zookeeper.ClientCnxn: SASL configuration failed。详情见:https://developer.aliyun.com/ask/133744?spm=a2c6h.13159736,文中“游客guzk5azdrhbmu”的三个评论
请问您这个安装后,是否可以运行flink run /opt/cloudera/parcels/FLINK-1.9.0-csa1.0.0.0-cdh6.3.0/lib/flink/examples/streaming/SocketWindowWordCount.jar --port 9009,或yarn-cluster模式下运行。另外你所提供的下载网址:https://mirrors.tuna.tsinghua.edu.cn/apache/flink/,现在已经是1.9.2了,其他的版本号还可去哪下载?
按照你的此篇教程,现在卡在了“下载”--->分配--->激活,激活时报错:FLINK (1.9.2-BIN-SCALA_2.11) 所需的 CDH (低于 6.3) Parcel 不可用。自制parcel时,所生成的manifest.json内容为
{
"parcels": [
{
"hash": "2b357bec2f298932d6eca71126dae04066761b62",
"depends": "CDH (>= 5.16.1), CDH (<< 6.3.2)",
"replaces": "FLINK",
"parcelName": "FLINK-1.9.2-BIN-SCALA_2.11-el7.parcel",
"components": [
{
"pkg_version": "1.9.2+flink%VERSION%",
"version": "1.9.2-flink%VERSION%",
"name": "flink",
"pkg_release": "BIN-SCALA_2.11"
}
]
}
],
"lastUpdated": 1580872493327
}
关于报错的“低于6.3”,请问是因为清华源的flink1.9.2的源码中无法适配cdh6.3?还是什么?
我的就是cdh6.3.1,不过是自己编译的flink
https://user-images.githubusercontent.com/12899262/74597634-7fa79c80-509d-11ea-97a8-9533e52e1a80.png
https://user-images.githubusercontent.com/12899262/74597913-2130ed00-50a2-11ea-84b8-74a330afe2a0.png
编译了一个通宵,结果告诉我不兼容
cdh6.2 和 flink 1.9 不兼容
cdh6.2 和 flink 1.8 不兼容
已经搞定了,cdh6.2.1+flink1.9 提交 yarn
关于这个报错:[21/Jan/2020 16:40:09 +0000] 27087 MainThread redactor ERROR Redaction rules file doesn't exist, not redacting logs. file: redaction-rules.json, directory: /run/cloudera-scm-agent/process/2657-flink_on_yarn-FLINK_YARN
有什么办法能不手动添加吗,这样每次重启服务都要添加。能将link-shaded-hadoop-2-uber-2.6.5-7.0.jar先打包之前放入吗
- 在 'select integral(events_informational_rate) where entityName="flink_on_yarn"' 中未找到与筛选器 'entityName = "flink_on_yarn"' 匹配的实体
- 显示更少...
- 在 'select integral(alerts_rate), integral(events_critical_rate), integral(events_important_rate) where entityName="flink_on_yarn"' 中未找到与筛选器 'entityName = "flink_on_yarn"' 匹配的实体
博主,你好
- 在 'select integral(events_informational_rate) where entityName="flink_on_yarn"' 中未找到与筛选器 'entityName = "flink_on_yarn"' 匹配的实体
- 显示更少...
- 在 'select integral(alerts_rate), integral(events_critical_rate), integral(events_important_rate) where entityName="flink_on_yarn"' 中未找到与筛选器 'entityName = "flink_on_yarn"' 匹配的实体
博主,你好,添加Flink-yarn服务提示报错、cdh6.3.1 flink1.11.2 ,又遇到过吗?谢谢~