首页 > 其他分享 >Flink提交任务命令整理

Flink提交任务命令整理

时间:2023-06-16 17:33:07浏览次数:57  
标签:Flink -- flink jar yarn application session 提交 整理

 环境: Flink 1.13.6和Flink 1.14.4

yarn-session模式:


--启动yarn seeion
bin/yarn-session.sh \
-s 8 \
-jm 4g \
-tm 16g \
-nm yarn-session-flink \
-d 


yarn-session.sh  -jm 1g -tm 8g -s 4 -d
参数解释:
 -jm 1024 表示jobmanager 1024M内存
 -tm 1024表示taskmanager 1024M内存
 -s  每一个TaskManager上的slots数量。
 -d 任务后台运行
 -nm,--name YARN上为一个自定义的应用设置一个名字
 -D<property=value> 动态属性  类似于这种-Dparallelism.default=3
 -q,--query显示可用的YARN资源(内存,内核)
 -qu,--queue 指定YARN队列。
 -t,--ship 传输指定目录下的文件(t用于传输)
 -nl,--nodeLabel 为YARN应用程序指定YARN节点标签
 -z,--Zookeeper Namespace 命名空间,用于创建高可用模式下的Zookeeper子路径
 -j,--jar <arg>        Flink jar文件的路径

 
--提交到创建的这个yarn-session上执行
flink run    -c org.apache.flink.examples.java.wordcount.WordCount examples/batch/WordCount.jar
flink run  -t yarn-session -Dyarn.application.id=application_1650018331890_0018   -c org.apache.flink.examples.java.wordcount.WordCount examples/batch/WordCount.jar
flink run   -c org.apache.flink.examples.java.wordcount.WordCount examples/batch/WordCount.jar


yarn-per-job模式:

提交任务的时候如果需要自己指定tm和jm的内存大小,可以注释掉配置文件里面相关的内存配置。

--旧版本的flink提交per-job任务是通过 -m yarn-cluster来提交的
flink run -m yarn-cluster  -c org.apache.flink.examples.java.wordcount.WordCount examples/batch/WordCount.jar

参数列表

./flink run \
-m yarn-cluster \
-yjm 1024  \
-ytm 1024  \
-ynm ?????? \
-c org.apache.flink.examples.java.wordcount.WordCount \
-yj /u01/isi/application/component/flink-1.13.6/examples/batch/WordCount.jar

-m	    执行模式为yarn-cluster
        也可以指定要连接的JobManager的地址。使用这个标志可以连接到配置中指定的不同的JobManager。注意:只有高可用性配置为NONE时才会考虑此选项。
 
-yjm	指定JobManager所在的Container内存。单位:MB
-ytm	每一个TaskManager Container的内存,单位MB。
-ys	    每一个TaskManager中slots的数量。
-ynm	YARN中application的名称。
-c	    指定Job对应的jar包中主函数所在类名。
-yj,--yarnjar <arg>              jar包位置
-yt,--yarnship 传输指定目录下的文件(t用于传输)
-yqu,--yarnqueue <arg>      指定yarn队列
-yD <property=value>        自定义参数 
-yid,--yarnapplicationId <arg>    指定yarnid执行
-yq,--yarnquery       显示可用的YARN资源(内存,核心)                  
-d,--detached         后台执行
     




--新版本的Flink可以通过-t参数提交统一格式的任务
flink run -t yarn-per-job -Dyarn.application.name=nmmd -c org.apache.flink.examples.java.wordcount.WordCount examples/batch/WordCount.jar



参数列表

./bin/flink run \
# 指定yarn的Per-job模式,-t等价于-Dexecution.target
-t yarn-per-job \
# yarn应用的自定义name
-Dyarn.application.name=consumerDemo \
# 未指定并行度时的默认并行度值, 该值默认为1
-Dparallelism.default=3 \
# JobManager进程的内存
-Djobmanager.memory.process.size=2048mb \
# TaskManager进程的内存
-Dtaskmanager.memory.process.size=2048mb \
# 每个TaskManager的slot数目, 最佳配比是和vCores保持一致
-Dtaskmanager.numberOfTaskSlots=2 \
# 防止日志中文乱码
-Denv.java.opts="-Dfile.encoding=UTF-8" \
# 支持火焰图, Flink1.13新特性, 默认为false, 开发和测试环境可以开启, 生产环境建议关闭
-Drest.flamegraph.enabled=true \
# 入口类
-c xxxx.MainClass \
# 提交Job的jar包
xxxx.jar

-t
给定应用程序的部署目标,相当于“run”。-Dexecution.target。
对于“run”操作,当前可用的目标是:“remote”,“local”,“kubernetes-session”,“yarn-per-job”,“yarn-session”。
对于“run-application”操作,当前可用的目标是:“kubernetes-application”,“yarn-application”。



--list 下面需要的FlinkJobID可以通过这个命令查看
参数:
-a,--all显示所有程序及其jobid
-r,--running只显示正在运行的程序及其jobid
-s,--scheduled只显示已调度的程序及其jobid

flink list \
-a \
-t yarn-session \
-Dyarn.application.id=application_1650018331890_0010

--cancel 此时无法指定savepoint

flink cancel \
-t yarn-session \
# Yarn的ApplicationID值, 可以通过Yarn的webUI直接查看
-Dyarn.application.id=${YarnApplicationID} \
# Flink的JobID, 可以通过Yarn找到Flink的WebUI进行查看
${FlinkJobID}

--stop 可以指定savepoint,执行完成可以看到savepoint的具体地址,用于Job启动时的savepoint地址
参数:
-d,--drain                           在获取保存点和停止连接之前发送MAX_WATERMARK
-p,--savepointPath <savepointPath>   savepoint保存地址,等价于-Dstate.savepoints.dir=xxx


flink stop \
-t yarn-session \
-Dyarn.application.id=${YarnApplicationID} \
# 指定savepoint存放位置
--savepointPath hdfs://xx:8020/test/checkpoint_test \
${FlinkJobID}


--从savepoint启动

./bin/flink run \
-t yarn-session \
-Djobmanager.memory.process.size=2048mb \
-Dtaskmanager.memory.process.size=2048mb \
-Dtaskmanager.numberOfTaskSlots=2 \
-Denv.java.opts="-Dfile.encoding=UTF-8" \
-Drest.flamegraph.enabled=true \
# 指定savepoint地址
--fromSavepoint hdfs://xx:8020/test/checkpoint_test/savepoint-e28bdd-ef7febad087e \
-c xxx \
xxx.jar



yarn-session.sh \
-s 8 \
-jm 4g \
-tm 16g \
-nm yarn-session-flink \
-d

 

标签:Flink,--,flink,jar,yarn,application,session,提交,整理
From: https://www.cnblogs.com/zzz01/p/17486118.html

相关文章

  • CKS 考试题整理 (14)-启用API Server认证
    Context由kubeadm创建的cluster的kubernetesAPI服务器,出于测试目的,临时配置允许未经身份验证和未经授权的访问,授予匿名用户cluster-admin的访问权限。 Task重新配置cluster的KubernetesAPl服务器,以确保只允许经过身份验证和授权的REST请求。使用授权模式Node,R......
  • CKS 考试题整理 (15)-镜像扫描ImagePolicyWebhook
    Contextcluster上设置了容器镜像扫描器,但尚未完全集成到cluster的配置中。完成后,容器镜像扫描器应扫描并拒绝易受攻击的镜像的使用。Task注意:你必须在cluster的master节点上完成整个考题,所有服务和文件都已被准备好并放置在该节点上。 给定一个目录/etc/kubernetes......
  • CKS 考试题整理 (13)-使用 sysdig 检查容器里里的异常进程
    Task使用运行时检测工具来检测Podtomcat单个容器中频发生成和执行的异常进程有两种工具可供使用:sysdigfalco注:这些工具只预装在cluster的工作节点,不在master节点。 使用工具至少分析30秒,使用过滤器检查生成和执行的进程,将事件写到/opt/KSR00101/incidents/summ......
  • CKS 考试题整理 (09)-日志审计 log audit
    Task在cluster中启用审计日志。为此,请启用日志后端,并确保:日志存储在/var/log/kubernetes/audit-logs.txt日志文件能保留10天最多保留2个旧审计日志文件 /etc/kubernetes/logpolicy/sample-policy.yaml提供了基本策略。它仅指定不记录的内容。注意:基本策略位于clu......
  • CKS 考试题整理 (10)-Dockerfile检测
    Task分析和编辑给定的Dockerfile/cks/docker/Dockerfile(基于ubuntu:16.04镜像),并修复在文件中拥有的突出的安全/最佳实践问题的两个指令。 分析和编辑给定的清单文件/cks/docker/deployment.yaml,并修复在文件中拥有突出的安全/最佳实践问题的两个字段。 注意:请勿添加......
  • CKS 考试题整理 (11)-沙箱运行容器gVisor
    Context该cluster使用containerd作为CRI运行时。containerd的默认运行时处理程序是runc。containerd已准备好支持额外的运行时处理程序runsc(gVisor)。 Task使用名为runsc的现有运行时处理程序,创建一个名为untrusted的RuntimeClass。更新namespaceserver中的所有Pod......
  • CKS 考试题整理 (06)-默认网络策略
    Context一个默认拒绝(default-deny)的NetworkPolicy可避免在未定义任何其他NetworkPolicy的namespace中意外公开Pod。Task为所有类型为Ingress+Egress的流量在namespacetesting中创建一个名为denypolicy的新默认拒绝NetworkPolicy。此新的NetworkPolicy必须拒绝namespacetest......
  • CKS 考试题整理 (07)-RBAC - RoleBinding
    Context绑定到Pod的ServiceAccount的Role授予过度宽松的权限,完成以下项目以减少权限集。Task一个名为web-pod的现有Pod已在namespacedb中运行。编辑绑定到Pod的ServiceAccountservice-account-web的现有Role,仅允许只对service类型的资源执行get操作。......
  • CKS 考试题整理 (05)-容器安全,删除特权pod
    context检查在namespaceproduction中运行的Pod,并删除任何非无状态或非不可变的Pod。task使用以下对无状态和不可变的严格解释:能够在容器内存储数据的Pod的容器必须被视为非无状态的。注意:你不必担心数据是否实际上已经存储在容器中。被配置为任何形式的特权Po......
  • springboot防重复提交
    springboot防重复提交1、场景网页卡顿的时候,用户点击会造成重复操作如果前端不做防重复操作。会导致重复提交,重复下单等意外操作。而且对于系统资源来说也是一种浪费常规的解决方法是让前端把点击后的按钮设置为不可点击,这样基本上能就能解决了。99.999999%能解决。前端这么弄......