【发布时间】:2016-04-27 15:41:43
【问题描述】:
我在 Hadoop 集群上运行 Hive 服务。我正在尝试在 Eucalyptus(RIAK CS) S3 数据上创建 Hive 表。我已经在 core-site.xml 和 hive-site.xml 中配置了 AccessKeyID 和 SecretAccessKey。当我执行 Create table 命令并使用 s3n 模式指定 S3 位置时,出现以下错误:
失败:执行错误,从 org.apache.hadoop.hive.ql.exec.DDLTask 返回代码 1。 MetaException(message:org.apache.http.conn.ConnectTimeoutException: Connect to my-bucket.s3.amazonaws.com:443 timed out)
如果我尝试使用 s3a 架构,我会收到以下错误:
失败:AmazonClientException 无法从链中的任何提供商加载 AWS 凭证
我可以使用 jets3t 更改 distcp 命令的端点 URL,但同样不适用于 Hive。欢迎提出任何将 Hive 指向 Eucalyptus S3 端点的建议。
【问题讨论】:
-
是否可以通过更简单的命令行工具连接 Riak CS,例如s3cmd 还是 s3curl ?
-
是的,我可以使用 s3cmd 进行连接。
-
还有一些问题。 - 你在 s3cmd 中也使用了 https 吗? - 你可以尝试在连接riak cs 时连接普通的http 而不是https 吗? - 你使用代理连接到 riak cs 吗? - 你能确认客户端确实尝试连接到你的 riak cs 服务器吗? - riak cs 日志中是否有任何指示错误的行?
-
我已使用具有端点 URL 的 s3cfg 文件为我的帐户配置了 S3 访问权限。我没有为连接配置 http 或 https 协议。 Hive 客户端未尝试连接到 RIAK CS。默认情况下,客户端指向“s3.amazonaws.com”,我无法将其修改为所需的端点。
-
您想连接到 AWS S3 还是(您自己的?)riak cs?如果您的 Hive 客户端未尝试连接 ro Riak CS,则这不是 Riak CS 相关问题。
标签: hadoop amazon-s3 hive eucalyptus riak-cs