繁体   English   中英

远程连接到fiware-cosmos返回身份验证错误

[英]Remote connection to fiware-cosmos returning authentication error

我们在cosmos.lab.fi-ware.org上有一个COSMOS帐户,可以将文件本地加载到集群上。

但是,我们无法远程加载,我们在指南网站上遵循的说明显示如下:

但是,使用WebHDFS / HttpFS RESTful API将允许您上传FI-LAB中全局Cosmos实例之外的文件。 以下示例使用HttpFS而不是WebHDFS(使用TCP / 14000端口而不是TCP / 50070),curl用作HTTP客户端(但您的应用程序应该实现您自己的HTTP客户端):

 [remote-vm]$ curl -i -X PUT "http://cosmos.lab.fi-ware.org:14000/webhdfs/v1/user/$COSMOS_USER/input_data?op=MKDIRS&user.name=$COSMOS_USER" [remote-vm]$ curl -i -X PUT ..etc [remote-vm]$ curl -i -X PUT -T etc.. 

如您所见,数据上传是一个两步操作,如WebHDFS规范中所述:API的第一次调用直接与Head节点对话,指定新文件创建及其名称; 然后,头节点发送临时重定向响应,在集群中必须存储数据的所有现有节点中指定数据节点,这是第二步的端点。 然而,HttpFS网关实现了相同的API,但其内部行为发生了变化,使重定向指向头节点本身。

但是,当我们运行这些命令时,我们会收到服务器错误,例如:

~ kari$ -bash: user.name=kdempsey: command not found
HTTP/1.1 100 Continue

HTTP/1.1 401 Unauthorized
Server: Apache-Coyote/1.1
Set-Cookie: hadoop.auth=""; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/
Content-Type: text/html;charset=utf-8
Content-Length: 1275
Date: Fri, 05 Jun 2015 12:58:20 GMT

Apache Tomcat/6.0.32 - Error report<!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}-->

HTTP Status 401 - org.apache.hadoop.security.authentication.client.AuthenticationException: Anonymous requests are disallowed

type Status report

message org.apache.hadoop.security.authentication.client.AuthenticationException: Anonymous requests are disallowed

description This request requires HTTP authentication (org.apache.hadoop.security.authentication.client.AuthenticationException: Anonymous requests are disallowed).

Apache Tomcat/6.0.32

另一个是500服务器错误。 请提供用于将文件远程加载到COSMOS共享资源的命令。

最终我们想从我们的InfluxDB中获取数据并加载到COSMOS中,如果可能的话我们希望通过REST调用(否则是python)。

非常感谢,Kari

作为roor用户,我已经测试了您的帐户,它完美运行:

$ curl -i -X PUT "http://cosmos.lab.fi-ware.org:14000/webhdfs/v1/user/kdempsey/frbtest_deleteme?op=MKDIRS&user.name=kdempsey"
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Set-Cookie: hadoop.auth="u=kdempsey&p=kdempsey&t=simple&e=1434045807412&s=iFdK86PWTbJykXymYLS9qZcIE2g="; Version=1; Path=/
Content-Type: application/json
Transfer-Encoding: chunked
Date: Thu, 11 Jun 2015 08:03:27 GMT

{"boolean":true}
$ curl -i -X GET "http://cosmos.lab.fi-ware.org:14000/webhdfs/v1/user/kdempsey/?op=LISTSTATUS&user.name=kdempsey"
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Set-Cookie: hadoop.auth="u=kdempsey&p=kdempsey&t=simple&e=1434045881826&s=GkLYQ/BqnBNPFBNL3ZPwkxcwbx8="; Version=1; Path=/
Content-Type: application/json
Transfer-Encoding: chunked
Date: Thu, 11 Jun 2015 08:04:41 GMT

{"FileStatuses":{"FileStatus":[{"pathSuffix":"frbtest_deleteme","type":"DIRECTORY","length":0,"owner":"kdempsey","group":"kdempsey","permission":"755","accessTime":0,"modificationTime":1434009807428,"blockSize":0,"replication":0},{"pathSuffix":"input","type":"DIRECTORY","length":0,"owner":"kdempsey","group":"kdempsey","permission":"755","accessTime":0,"modificationTime":1433508554303,"blockSize":0,"replication":0},{"pathSuffix":"input_data","type":"DIRECTORY","length":0,"owner":"kdempsey","group":"kdempsey","permission":"755","accessTime":0,"modificationTime":1433508958231,"blockSize":0,"replication":0}]}}

如您所见,我创建了一个frbtest_deleteme文件夹,然后我列出了您的HDFS用户空间( /user/kdempsey )以获取子目录列表; 其中,你会发现frbtest_deleteme

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM