flink on yarn任务启停脚本(实现一键读取ck启动,保存ck停止)

本文介绍了一个脚本,用于自动管理和控制ApacheFlink的任务,包括停止任务并保存savepoint,以及根据最新checkpoint或savepoint启动任务。脚本还支持批量操作,简化了对多个任务的管理过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

img

1.问题描述

flink同步任务,长期任务过多,某个任务停止保存checkpoint或者savepoint后,修改代码,使用命令行读取检查点重新启动需要人工去hdfs上找寻检查点保存位置。任务过多管理起来很不方便。
鉴于此,使用脚本编写了一套启停代码,可以自动的停止flink任务并保存savepoint,读取检查点启动,也可以实现批量的启停
废话不多说,脚本如下

2.问题解决

vim flink_task_start_and_stop.sh
#!/bin/bash
# HDFS配置
HDFS_URI=hdfs://mycluster
# 读取最新的checkpoint文件夹名
function get_latest_checkpoint_dir {
   
   
  # 获取所有的checkpoint文件夹名
  dirs=($(hdfs dfs -ls $CHECKPOINT_DIR | sort -r -k6,7  | awk '{print $NF}'))

  # 遍历文件夹名
  for dir in "${dirs[@]}"; do
    # 获取最新的以chk开头的savepoint文件夹名
    chk_dir=$(hdfs dfs -ls $dir | awk '{print $NF}' | grep -w '.*/savepoint-.*' | sort -r | head -n 1)
    if [ ! -z "$chk_dir" ]; then
      echo "$chk_dir"
      return
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值