Linux下多个flume-agent自动启动脚本

文章目录

脚本

#!/bin/bash

# to start flume for minute 15min and hour!


flume_home="/opt/flume-1.8.0"
flume_log_dir="/var/log/flume"
if [ ! -d "$flume_log_dir" ];then
  mkdir $flume_log_dir
fi

ps_minute=`ps -ef | grep flume | grep '\-n a1'`
if [ ! -n "$ps_minute" ];then
  echo "ready to start flume-agent a1 for minute..."
  nohup ${flume_home}/bin/flume-ng agent -c ${flume_home}/conf -f ${flume_home}/conf/mysqlsinkminute.singleagent.linux.conf -n a1 -Dflume.root.logger=INFO,console >> ${flume_log_dir}/minute.log &
else
  echo "flume-agent a1 for minute is running..."
fi


ps_15min=`ps -ef | grep flume | grep '\-n a2'`
if [ ! -n "$ps_15min" ];then
  echo "ready to start flume-agent a2 for 15min..."
  nohup ${flume_home}/bin/flume-ng agent -c ${flume_home}/conf -f ${flume_home}/conf/mysqlsink15min.singleagent.linux.conf -n a2 -Dflume.root.logger=INFO,console >> ${flume_log_dir}/15min.log &
else
  echo "flume-agent a2 for 15min is running..."
fi


ps_hour=`ps -ef | grep flume | grep '\-n a3'`
if [ ! -n "$ps_hour" ];then
  echo "ready to start flume-agent a3 for hour..."
  nohup ${flume_home}/bin/flume-ng agent -c ${flume_home}/conf -f ${flume_home}/conf/mysqlsinkhour.singleagent.linux.conf -n a3 -Dflume.root.logger=INFO,console >> ${flume_log_dir}/hour.log &
else
  echo "flume-agent a3 for hour is running..."
fi

自动启动

给创建的脚本设置可执行权限

[root@manager flume-1.8.0]# chmod +x start.sh

编辑/etc/rc.d/rc.local文件
在最后增加一行

/bin/sh /opt/flume-1.8.0/start.sh

开机重启后,发现并没有flume的进程
查看系统日志/var/log/message发现如下,但是系统环境变量里肯定是填了JAVA_HOME的,如果没填,直接启动flume程序也是失败的

Aug  9 01:47:01 manager rc.local: ready to start flume-agent a1 for minute...
Aug  9 01:47:01 manager rc.local: Warning: JAVA_HOME is not set!
Aug  9 01:47:01 manager rc.local: Error: Unable to find java executable. Is it in your PATH?
Aug  9 01:47:02 manager rc.local: ready to start flume-agent a2 for 15min...
Aug  9 01:47:02 manager rc.local: Warning: JAVA_HOME is not set!
Aug  9 01:47:02 manager rc.local: Error: Unable to find java executable. Is it in your PATH?
Aug  9 01:47:03 manager rc.local: ready to start flume-agent a3 for hour...

解决办法是进入flume安装目录下conf文件夹
复制一个flume-env.sh文件

[root@manager conf]# cp flume-env.sh.template flume-env.sh

修改内容,填上JAVA_HOME(根据自己的填写)

export JAVA_HOME=/opt/java-1.8.0_121

保存退后,再重启可以验证flume-agent自启动成功。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值