Vora 无法连接到领事代理
Vora Could not connect to Consul Agent
我已经在基于 HDP2.3 的 SLES 11 SP3 上安装了 Vora 1.2。
当我尝试根据新安装和管理手册的第 2.7 节(第 34 页)对 Vora 进行基于命令行的验证时,我现在收到一个新错误:
scala> vc.sql(testsql)
com.sap.spark.vora.discovery.DiscoveryException: Could not connect to Consul Agent on localhost:8500 : null at
com.sap.spark.vora.discovery.ConsulDiscoveryClient$ConsulDiscoveryClient.(ConsulDiscoveryClient.scala:38) at
com.sap.spark.vora.discovery.ConsulDiscoveryClient$.getClient(ConsulDiscoveryClient.scala:21) at
com.sap.spark.vora.discovery.DiscoveryClientFactory$.getClient(DiscoveryClientFactory.scala:9) at
com.sap.spark.vora.config.VoraConfiguration$.apply(VoraConfiguration.scala:24) at
com.sap.spark.vora.DefaultSource.buildConfiguration(DefaultSource.scala:403) at
com.sap.spark.vora.DefaultSource.createRelation(DefaultSource.scala:149) at org.apache.spark.sql.execution.datasources.CreateTableUsingTemporaryAwareCommand.resolveDataSource(CreateTableUsingTemporaryAwareCommand.scala:73) at org.apache.spark.sql.execution.datasources.CreateTableUsingTemporaryAwareCommand.run(CreateTableUsingTemporaryAwareCommand.scala:31) at org.apache.spark.sql.execution.ExecutedCommand.sideEffectResult$lzycompute(commands.scala:57) at org.apache.spark.sql.execution.ExecutedCommand.sideEffectResult(commands.scala:57) at org.apache.spark.sql.execution.ExecutedCommand.doExecute(commands.scala:69) at org.apache.spark.sql.execution.SparkPlan$$anonfun$execute.apply(SparkPlan.scala:140) at org.apache.spark.sql.execution.SparkPlan$$anonfun$execute.apply(SparkPlan.scala:138) at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:147) at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:138) at org.apache.spark.sql.SQLContext$QueryExecution.toRdd$lzycompute(SQLContext.scala:933) at org.apache.spark.sql.SQLContext$QueryExecution.toRdd(SQLContext.scala:933) at org.apache.spark.sql.DataFrame.(DataFrame.scala:144) at org.apache.spark.sql.DataFrame.(DataFrame.scala:129) at org.apache.spark.sql.DataFrame$.apply(DataFrame.scala:51) at org.apache.spark.sql.SQLContext.sql(SQLContext.scala:725)
我在 Zeppelin 中遇到同样的错误。我的服务器上缺少那个 Consul 东西吗?
正如 Vora Troubleshooting Wiki 的评论部分所指出的:
Vora 发现服务使用 Consul(来自 HashiCorp)来注册服务。每个服务器都需要有一个 Consul 服务器或 Consul 代理(互斥,因为服务器和代理都在端口 8500 上侦听;至少需要 3 个 Consul 服务器——非服务器主机应该有一个客户端)。您的错误消息表明主机没有 Consul 服务器或代理 运行.
Vora1.2 与 Vora1.1 相比具有不同的体系结构,具有许多新服务。请参阅What's New in Vora 1.2 and the Vora Installation and Administration Guide。 Vora Discovery Service (=Consul) 是需要安装的新组件之一。
至少需要 3 台机器,因为我们需要至少 3 台 Vora 发现服务器。每个服务器也充当客户端,因此带有代理的附加主机是可选的(但如果存在附加主机,则它们需要具有发现代理 运行)。
我已经在基于 HDP2.3 的 SLES 11 SP3 上安装了 Vora 1.2。
当我尝试根据新安装和管理手册的第 2.7 节(第 34 页)对 Vora 进行基于命令行的验证时,我现在收到一个新错误:
scala> vc.sql(testsql)
com.sap.spark.vora.discovery.DiscoveryException: Could not connect to Consul Agent on localhost:8500 : null at
com.sap.spark.vora.discovery.ConsulDiscoveryClient$ConsulDiscoveryClient.(ConsulDiscoveryClient.scala:38) at
com.sap.spark.vora.discovery.ConsulDiscoveryClient$.getClient(ConsulDiscoveryClient.scala:21) at
com.sap.spark.vora.discovery.DiscoveryClientFactory$.getClient(DiscoveryClientFactory.scala:9) at
com.sap.spark.vora.config.VoraConfiguration$.apply(VoraConfiguration.scala:24) at
com.sap.spark.vora.DefaultSource.buildConfiguration(DefaultSource.scala:403) at
com.sap.spark.vora.DefaultSource.createRelation(DefaultSource.scala:149) at org.apache.spark.sql.execution.datasources.CreateTableUsingTemporaryAwareCommand.resolveDataSource(CreateTableUsingTemporaryAwareCommand.scala:73) at org.apache.spark.sql.execution.datasources.CreateTableUsingTemporaryAwareCommand.run(CreateTableUsingTemporaryAwareCommand.scala:31) at org.apache.spark.sql.execution.ExecutedCommand.sideEffectResult$lzycompute(commands.scala:57) at org.apache.spark.sql.execution.ExecutedCommand.sideEffectResult(commands.scala:57) at org.apache.spark.sql.execution.ExecutedCommand.doExecute(commands.scala:69) at org.apache.spark.sql.execution.SparkPlan$$anonfun$execute.apply(SparkPlan.scala:140) at org.apache.spark.sql.execution.SparkPlan$$anonfun$execute.apply(SparkPlan.scala:138) at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:147) at org.apache.spark.sql.execution.SparkPlan.execute(SparkPlan.scala:138) at org.apache.spark.sql.SQLContext$QueryExecution.toRdd$lzycompute(SQLContext.scala:933) at org.apache.spark.sql.SQLContext$QueryExecution.toRdd(SQLContext.scala:933) at org.apache.spark.sql.DataFrame.(DataFrame.scala:144) at org.apache.spark.sql.DataFrame.(DataFrame.scala:129) at org.apache.spark.sql.DataFrame$.apply(DataFrame.scala:51) at org.apache.spark.sql.SQLContext.sql(SQLContext.scala:725)
我在 Zeppelin 中遇到同样的错误。我的服务器上缺少那个 Consul 东西吗?
正如 Vora Troubleshooting Wiki 的评论部分所指出的:
Vora 发现服务使用 Consul(来自 HashiCorp)来注册服务。每个服务器都需要有一个 Consul 服务器或 Consul 代理(互斥,因为服务器和代理都在端口 8500 上侦听;至少需要 3 个 Consul 服务器——非服务器主机应该有一个客户端)。您的错误消息表明主机没有 Consul 服务器或代理 运行.
Vora1.2 与 Vora1.1 相比具有不同的体系结构,具有许多新服务。请参阅What's New in Vora 1.2 and the Vora Installation and Administration Guide。 Vora Discovery Service (=Consul) 是需要安装的新组件之一。
至少需要 3 台机器,因为我们需要至少 3 台 Vora 发现服务器。每个服务器也充当客户端,因此带有代理的附加主机是可选的(但如果存在附加主机,则它们需要具有发现代理 运行)。