避免交互式flume shell控制台

kuhbmx9i  于 2021-06-04  发布在  Flume
关注(0)|答案(2)|浏览(349)

配置flume的正常方式是通过flume master web控制台,这里很容易讨论。
或者
通过交互式flume shell控制台,执行以下步骤:

1. $ flume shell   //this brings you to the interactive flume shell console
2. in the interactive console,connect flume-master-node   // this connects you to flume-master
3. in the interactive console, run "exec unconfig your_node"  // this unconfig all flume configuration 
4. in the interactive console, run "exec config your_node new_config"    // apply new flume configuration
5. quit  // exit the the interactive console

到现在为止,一直都还不错。
然后我尝试为我的flume配置编写bash脚本。所以我想把1,2,3,4,5压缩到一个bash中,它每次都自动运行,不需要干预,类似这样:

/usr/bin/flume shell << EOF         #line1
connect $FLUME_MASTER               #line2

exec unconfig your_node             #line3
exec config your_node new_config    #line4

quit                                #line5

EOF                                 #line6

但每次我运行这个bash脚本时,它总是停在第1行,并将我带到交互式flume shell控制台,而不是在非实际模式下运行它。
有没有人知道如何忽略交互模式而只是安静地运行它?

w6mmgewl

w6mmgewl1#

以某种方式遵循flume用户指南flume/userguide\u使用\u flume\u命令\u shell:

echo "connect localhost:35873\ngetconfigs\nquit" | flume shell -q

如果把它放在bash脚本中,这就不起作用了。但我还是这样做了:

/usr/bin/flume shell -q << EOF 

connect localhost:35873

getconfigs

quit

EOF
js4nwp54

js4nwp542#

试试这个 -q 选择 flume 看看这是否有用。

相关问题