将 Spark 应用程序提交到 HDInsights 时出现 HTTP post 问题

Issues with HTTP post when submit spark application to HDInsights

我正在使用 Scala 编程语言。

当我在 Scala 工作表中 运行 下面的代码工作正常。

我有两个问题:

  1. 当我向 HDInsights 提交一个 Spark 应用程序(使用相同的代码)时,我得到了这个异常:

    User class threw exception: java.net.UnknownHostException: url-Dev: Name or service not known.

    为什么找不到 url-Dev?

  2. 如何将凭据传递给此 post 请求?

    import org.apache.http.client.methods.HttpPost
    import org.apache.http.impl.client.DefaultHttpClient
    import org.apache.http.entity.StringEntity
    import org.apache.http.util.EntityUtils
    
    val url = "http://url-Dev";
    val post = new HttpPost(url)
    post.setEntity(new StringEntity("json"))
    
    val client = new DefaultHttpClient   
    val response = client.execute(post)    
    val entity = response.getEntity()    
    val content = EntityUtils.toString(entity)
    println(content)
    

url-dev 是您网络中的本地地址。 HDInsight 群集在 Azure 的虚拟网络中运行。它不会从那里连接到您的本地网络。您需要以安全的方式将 url-dev 公开到 Internet,以便可以从 Azure 访问它,然后使用该 public 端点和身份验证机制。您还可以使用 Azure VNet 执行更高级的本地网络对等互连选项。