flume 注册 windows 服务

本文介绍了如何在Windows环境中将Flume注册为系统服务,通过分析flume-ng.cmd和flume-ng.ps1文件,找到Java启动命令,并利用nssm工具进行服务注册。详细步骤包括修改启动脚本获取完整Java命令,以及使用nssm安装服务的过程。
摘要由CSDN通过智能技术生成

虽然生产环境下 flume 一般都在linux中运行,但是总会有些特殊情况要在 windows server 中使用 flume。但是楼主在 google、bing、baidu找了一通也没有比较好的方案,于是只能自已造轮子了。

思路:

既然 flume 是 java 项目,那么最终还是通过 java.exe 运行,那么只要找到这条命令,就有办法注册成服务。

 

分析:

先看 bin\flume-ng.cmd 文件,就一条命令:

powershell.exe -NoProfile -InputFormat none -ExecutionPolicy unrestricted -File %~dp0flume-ng.ps1 %*

可以看到 flume 是使用 window 的 powershell.exe 命令行运行的,但是经过测试,注册成服务后不能启动 powershell.exe 进程,个人感觉是权限问题,从事件查询器中可以看到 403、600 等错误代码,没有深究,回到使用 java.exe 运行的思路。

先写好配置文件与运行脚本,保证可以在命令行中正常启动flume进程。

flume 的启动脚本主要是在 bin\flume-ng.ps1 文件中,可以在文件中找到下面的函数:

function runFlume($javaClassPath, $javaLibraryPath, $javaOptions, $class, $javaProcessArgumentList)  {
  [string]$javaPath = GetJavaPath
  [string]$fullJavaCommand = "-classpath 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值