Flink从ck拉起任务脚本

bash 复制代码
#!/bin/bash

APP_NAME="orderTest"

CHECKPOINT_BASE_PATH="hdfs:///jobs/flink/checkpoints/aaa-test/"


is_running=$(yarn application -list | grep -w "$APP_NAME" | grep -c "RUNNING")

if [ $is_running -gt 0 ]; then
    echo "应用程序 '$APP_NAME' 在运行中,退出脚本"
    exit 1
else
    echo "应用程序 '$APP_NAME' 不在运行中,准备拉起任务"
fi



get_latest_checkpoint() {
    latest_checkpoint=$(hdfs dfs -ls -t -R $CHECKPOINT_BASE_PATH  | grep '_metadata' | sort -k6,7r | head -n 1 | awk '{print $8}'  )
    if [ -z "$latest_checkpoint" ]; then
        echo "没有找到适合的ck,退出执行"
        exit 1
    fi

    checkpoint_dir=$(dirname "$latest_checkpoint")
    echo $checkpoint_dir
}

LATEST_CHECKPOINT=$(get_latest_checkpoint)
echo " '$APP_NAME' 任务将从 '$LATEST_CHECKPOINT' 启动"


flink run \
 -t yarn-per-job \
 -d \
 -p 1 \
 -Dyarn.application.queue=realtime \
 -Dyarn.application.name=$APP_NAME\
 -Djobmanager.memory.process.size=1024mb \
 -Dtaskmanager.memory.process.size=1000mb \
 -Dtaskmanager.memory.managed.size=0mb \
 -Dtaskmanager.memory.network.max=64mb \
 -Dtaskmanager.numberOfTaskSlots=1 \
 -c com.test.Main\
 -s $LATEST_CHECKPOINT \
 ./ds-test-1.0.jar

备注:由于Flink checkpoint 个别情况下,不一定能保证落地的checkpoint文件一定有效,所以需要人工介入支持。

相关推荐
龙亘川13 小时前
构建城市公共安全数字底座:亘川智城智慧安防系统全维度解读
java·大数据·开发语言·人工智能·信息可视化
BJ_Bonree14 小时前
博睿数据亮相第41届BFSI IT Summit Thailand
大数据·人工智能·物联网
好焊孙辉14 小时前
六成份额之后:鸿栢科技扩大产业规模的几点思考
大数据·人工智能·科技
跨境小彭14 小时前
Temu 全托管模式下,SKU 利润核算的实践复盘
大数据·运维·人工智能·自动化·temu
数智园区合作社14 小时前
问数平台怎么把同一个指标锁成一个数
大数据·数据库·人工智能·ai
2601_9707038316 小时前
工业除湿机租赁:把一份租金合同拆开看
大数据·数据结构·算法·数据库架构·推荐算法
心疼你的一切16 小时前
Python自动发邮件实战定时发报表
大数据·开发语言·python
王中阳Go17 小时前
5.27 分钟干完后端和全部测试:一场三小时笔试的五个失分点,四个不在代码上
大数据·数据库·人工智能·后端·大语言模型
演艺大赏17 小时前
Paimon 1.3.1 报 Proxy user is not supported:Kyuubi + Kerberos 集成排查与源码级定位
大数据