Apache Falcon无法提交群集定义

时间:2014-05-26 08:37:29

标签: apache hadoop

我正在尝试向正在运行的Apache falcon服务器提交群集定义。服务器在分布式节点中运行,前面有一个Prism实例。 两者都在我的机器上运行http和本地。我正在执行以下命令

falcon entity -type cluster -submit -file /projects/falcon/examples/primary-cluster.xml

结果是:

 
Client Response POST http://localhost:16000/api/entities/submit/cluster returned a response status of 400 Bad Request
Error: Bad Request;local/Current colo (default) is not local

所以我想我的问题是本地/当前colo(默认)不是本地的意味着我认为这是一个xml错误,但我不能100%。我运行了一个单元测试解析我提交的文件对照相应的xsd并且它解析得很好。

这是我发送的xml(primary-cluster.xml)

<cluster colo="default" description="Primary Cluster"
     name="local-cluster"
     xmlns="uri:falcon:cluster:0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<tags>class=dev,site=local</tags>
<interfaces>    
    <interface type="readonly" endpoint="hftp://localhost:50010" version="1.1.2"/>
    <interface type="write" endpoint="hdfs://localhost:9000" version="2.4.0"/>
    <interface type="execute" endpoint="localhost:9001" version="2.4.0"/>
    <interface type="workflow" endpoint="http://localhost:11000/oozie/" version="4.0.1"/>
    <interface type="messaging" endpoint="tcp://localhost:61616?daemon=true" version="5.4.3"/>
</interfaces>
<locations>
    <location name="staging" path="/staging"/>
    <location name="temp" path="/tmp"/>
    <location name="working" path="/working"/>
</locations>


可以找到xml xsd here

1 个答案:

答案 0 :(得分:1)

解决方案相当容易。我的棱镜实例配置错误。我看到的错误不是xml解析之一,而是说某个colo没有我试图上传到的集群。

所以转到$ PRISM_HOME / config / runtime.properties(或者每当你放入运行时属性时)并添加以下行

 prism.falcon.default.endpoint=http://localhost:15000

其中 默认 实际上是我给loco的名称(而不是默认名称,还没有想出如何更改它)。 Localhost是我部署我的falcon实例的地方,15000是它正在运行的端口。

希望有所帮助, 干杯彼得