通过Azure Webapp(Java)连接到Kafka HDInsight群集

时间:2018-06-22 10:17:07

标签: java azure apache-kafka azure-web-app-service hdinsight

我正在探索Azure相关技术。

  1. 我已经使用Java创建了Azure webapp。
  2. 在Azure上创建了Kafka HDInsight群集。

如何通过Azure Java WebApp连接到Kafka群集(请参阅第2点)(请参见第1点)?

我做的一件事是从 Ambari-UI 中获取主机名,以在我的Web应用程序中配置Kafka,但似乎不起作用。

还如何在Kafka HDInsight群集中查看日志/数据?

用于连接的Webapp代码:“ 10.0.0.13:9092 ”地址来自Ambari UI

    Properties properties = new Properties();
    String servers = "10.0.0.13:9092";
    properties.put("bootstrap.servers", servers);
    properties.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
    properties.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");

    kafkaProducer = new KafkaProducer(properties);

1 个答案:

答案 0 :(得分:0)

HDInsight不允许通过公共互联网直接连接到Kafka> HDInsight architecture planning. 如果要使用Java Web App(在Tomcat中),则可能的解决方案之一是为WebApp配置VNET集成(VPN),然后重新配置Kafka以发布代理的IP(而不是名称),因为DNS名称解析不能通过VPN> Configure Kafka for IP advertising

P.S。对于App Service Linux计划(容器),当前不支持VNET集成