Estou com o CentOS 7 e quero iniciar o produtor independente do Kafka (File Connector) como um serviço. O comando é:
/opt/kafka/bin/connect-standalone.sh /opt/kafka/config/connect-standalone.properties /opt/kafka/config/connect-file-source.properties
E, obviamente, não tem comando de parada. Normalmente, eu apenas Ctrl + C para pará-lo como um processo em primeiro plano.
Mas quando eu testo, achei muito entediante abrir várias sessões do terminal para rodar vários processos (zookeeper, servidor Kafka, produtor de Kafka, Storm jar, etc.) então mudo o Zookeeper e o servidor Kafka como serviço, que tem seus stop
script. Mas neste caso, não.
Eu tentei systemctl start kafka-producer
e systemctl stop kafka-producer
, mas o serviço entrou em failed
status e não está parado. Eu tive que excluir o serviço, recarregar o daemon e mudar para manual novamente.
kafka-producer.service
:
[Unit]
Description=Kafka Producer
After=network.target
[Service]
Type=simple
ExecStart=/opt/kafka/bin/connect-standalone.sh /opt/kafka/config/connect-standalone.properties /opt/kafka/config/connect-file-source.properties
Restart=on-abort
[Install]
WantedBy=default.target
De qualquer forma, para manipular um serviço sem o comando ExecStop
?