crontab脚本因JAVA_HOME未设置导致执行失败分析过程

15 篇文章 0 订阅
3 篇文章 0 订阅

问题背景

最近在尝试将hadoop中文件信息导入ELK,并分析冷数据;部分效果图如下
在这里插入图片描述
但是近期发现crontab脚本同步最新的fsimage时正常,但是无法正常转换成csv格式
初期以为是生成的文件已存在导致,后续将生成文件按时间戳明明后依然无法生成
今天刚好有时间准备分析一下

问题分析过程

整个cronta脚本如下:

FsImage=`ssh 172.20.xx.xx "ls -art /disk1/hadoop/dfs/hadoop-nn1/current/fsimage* |grep -v md5|tail -1"`
mkdir /root/fsimage-analysis/fsimages
scp 172.20.xx.xx:$FsImage /root/fsimage-analysis/fsimages/fsimage_`date +%F`
hdfs -oiv -i ../fsimages/fsimage_2021_03_02 -o /root/fsimage-analysis/csv/fsimage_`date +%F`.csv -p Delimited -delimiter ","

1、首先将前面几行注释;调整crontab时间,观察新的文件是否生成,发现文件并未实际生成
2、修改脚本内容,将日志打印出来,再次调整crontab时间
发现文件没有生成,日志里提示缺少JAVA_HOME
在这里插入图片描述
初步怀疑hdfs 命令需要依赖java,需要在crontab中设置
我的java路径在/usr/bin/中,所以这里的JAVA_HOME设置成/usr
在这里插入图片描述

设置完成后调整crontab时间,再次查看
发现可以正常执行,问题解决
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值