我刚刚开始使用Kafka和Kafka Streaming Applications。我写了一个Kafka Stream应用程序,它消耗一个主题,处理这些消息,并将它们发送到另一个主题。
据我所知,我发现运行此Kafka Stream App编码的唯一方法是:
*.jar
文件并从提示符运行。我想知道是否有任何方法可以在Kafka服务器启动时自动运行Kafka Streaming Applications。例如:将*.jar
文件复制到我的Kafka安装的某个文件夹中,并在启动Kafka服务器时自动运行此流应用程序。
答案 0 :(得分:6)
您的Kafka代理(服务器)和您的Kafka Streams应用程序彼此独立。您可以启动它们,但是您可以管理服务器上的进程,无论是initd还是systemd,还是基于容器的解决方案,如Docker或Kubernetes。
根据我的经验,如果您的流应用程序在您的经纪人或ZooKeeper之前启动,那么它可能会超时等待它们上线。因此,您可能需要将流进程配置为在这种情况下重新启动。