嗨,这是我的剧本
---
- hosts: pupservers
sudo: yes
tasks:
- name: start kafka
command: /home/ec2-user/kafka_2.11-0.9.0.0/bin/kafka-server-start.sh /home/ec2-user/kafka_2.11-0.9.0.0/config/server.properties
我实际上尝试启动kafka broker - 实际命令是
bin/kafka-server-start.sh config/server.properties
当我在kafka代理服务器上点击此命令时,命令执行,我将永远无法控制该控制台 - 如果我点击ctrl + c然后kafka经纪人停止
现在当我使用ansible playbook并从ansible服务器执行这个playboon在其代理服务器中启动kafka然后kafka开始运行,但是我失去了对我的控制台的控制,如果我点击ctrl + c然后我就停止了kafka经纪人
这是我在ansible控制台输出上的输出,任务永远不会完成,如果我中止然后经纪人停止
答案 0 :(得分:3)
看起来你的kafka起始脚本是阻塞的,你希望它在后台运行。要绕过它,你必须用一些脚本来包装它,它将在后台启动它,比如supervisor。
答案 1 :(得分:2)
kafka脚本在节点的前台运行,所以我无法取回控制权来解决这个问题我在后台使用-daemon运行脚本 然后我的脚本在后台运行,我得到了控件