当前位置: 首页 > article >正文

Flink从ck拉起任务脚本

#!/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文件一定有效,所以需要人工介入支持。


http://www.kler.cn/news/330204.html

相关文章:

  • Netty系列-7 Netty编解码器
  • CSP-J模拟赛一补题报告
  • SQL:函数以及约束
  • 【分布式微服务云原生】详解Redis的主从模式,主服务器挂了如何从多个从服务器选出新的主服务器
  • Charles(青花瓷)抓取https请求
  • 基于Hive和Hadoop的共享单车分析系统
  • 【AI知识点】余弦相似度(Cosine Similarity)
  • HCIP-HarmonyOS Application Developer 习题(四)
  • 5G-A和F5G-A,对于AI意味着什么?
  • 【MySQL】MVCC及其实现原理
  • (28)oracle数据迁移(容器)-部署包资源
  • Linux驱动开发(速记版)--设备树
  • 滚雪球学Oracle[2.3讲]:Oracle Listener配置与管理
  • 路由交换实验指南
  • MongoDB的安装与增删改查基本操作
  • Mars的xlog与Logan
  • JMeter中线程组、HTTP请求的常见参数解释
  • 欧科云链OKLink相约TOKEN2049:更全面、多元与安全
  • scrapy爬虫基础
  • n!尾随零的数量