我正在尝试与cloudera一起启动kafka connect组件,并希望将kafka connect启动脚本 Package 为 systemd
服务文件,以便在cloudera服务启动后启动。
出于某种奇怪的原因如果我在 systemd
它工作得很好,但是当我开始的时候 systemctl start kafka-connect
它只是挂在下面的日志条目行上。
[Unit]
Description=Kafka Connect - Distributed
After=network.target cloudera-scm-agent
[Service]
Type=forking
ExecStart=/bin/bash -c "/app/cloudera/parcels/KAFKA/lib/kafka/bin/connect-distributed.sh -daemon /app/cloudera/kafka-connect/connect-distributed.properties"
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
2019-07-18 13:40:27,962 INFO (main) [ConnectDistributed(main:69)] Scanning for plugin classes. This might take a moment ...
2019-07-18 13:40:27,992 INFO (main) [DelegatingClassLoader(registerPlugin:184)] Loading plugin from: /app/cloudera/kafka-connect/plugins/splunk-kafka-connect.jar
2019-07-18 13:40:27,993 DEBUG (main) [DelegatingClassLoader(registerPlugin:191)] Loading plugin urls: [file:/app/cloudera/kafka-connect/plugins/splunk-kafka-connect.jar]
2019-07-18 13:40:29,206 DEBUG (main) [VersionUtils(getVersionFromProperties:63)] found git version string=v1.1.0 in version.properties file
2019-07-18 13:40:29,219 INFO (main) [DelegatingClassLoader(scanUrlsAndAddPlugins:207)] Registered loader: PluginClassLoader{pluginLocation=file:/app/cloudera/kafka-connect/plugins/splunk-kafka-connect.jar}
2019-07-18 13:40:29,220 INFO (main) [DelegatingClassLoader(addPlugins:136)] Added plugin 'com.splunk.kafka.connect.SplunkSinkConnector'
2019-07-18 13:40:29,220 INFO (main) [DelegatingClassLoader(addPlugins:136)] Added plugin 'org.apache.kafka.connect.storage.StringConverter'
我的下一个想法是尝试一些简单一点的东西,然后创建一个 init.d
脚本位于 /etc/init.d/kafka-connect
它工作得很好,因为它只不过是一个shell脚本 Package 器,直到我在 /etc/init.d/functions
文件,通过 systemd
再一次。
两个主要问题-
是什么 systemctl
与常规shell脚本不同的做法是,每次都会导致这个shell脚本(它反过来启动一个java进程)挂起在同一个步骤上。
如果我的 /etc/init.d/kafka-connect
脚本工作,可以在rhel7上使用吗?如果是的话,有没有办法加载 init.d
服务器启动时的脚本?
提前谢谢!
暂无答案!
目前还没有任何答案,快来回答吧!