我目前正在以下--daemon
模式下启动kafka连接器:
bin/connect-standalone.sh -daemon
/kafka/config/connect-standalone.properties
/kafka/config/custom-connector.properties
如何优雅地停止此连接器进程?
我现在使用top
命令来定位java进程,并使用kill -15 pid
来停止它。我发现这很不实用,因为我无法通过某些属性指定连接器来停止它
有没有什么方法可以像执行下面的命令一样停止kafka connector
?或者有更好的选择吗?
kafka/bin/kafka-connect-stop.sh
/kafka/config/connect-standalone.properties
若要停止连接器而不是工作进程,请使用PUT /connectors/{connector}/pause
REST API端点。
https://kafka.apache.org/documentation/#connect_rest
否则,是的,要停止工作进程,可以使用kill
,也可以将其封装在SystemD脚本中,并使用systemctl stop
来执行同样的操作。
感谢@OneCricketer的回答。
我使用下面的systemd脚本包装我的命令。
在/etc/systemd/system
中创建一个kafka-connector.servce
文件,如下所示
[Unit]
Description=Kafka Connector
[Service]
User=root
Type=simple
ExecStart=/bin/sh -c "/kafka/bin/connect-standalone.sh /kafka/config/connect-standalone.properties /kafka/config/my-connector.properties"
使用启动kafka连接器
sudo systemctl start kafka-connector
使用停止kafka连接器
sudo systemctl stop kafka-connector
使用检查kafka连接器的状态
sudo systemctl status kafka-connector