问题标签 [radosgw]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1638 浏览

amazon-s3 - CEPH + S3 Java SDK + 预签名 PUT + CORS = 失败

我正在寻找让 CEPH + S3 Java SDK + 预签名的 PUT url + CORS 工作的神奇公式。我们能够创建一个存储桶,然后将 CORS 配置应用于该存储桶。然后,我们能够创建一个预先生成的 PUT url,然后我们将其发送回客户端。但是,CORS 预检(选项)请求失败并显示 403。

对于 AWS,同样的代码效果很好。但是,Swift 和 Ceph 都在 OPTIONS 请求上失败,并返回 403。由于 OPTIONS 失败,CORS 失败。我们追踪到(我们认为)RADOSGW 中创建身份验证头的方式可能存在缺陷……它与亚马逊 SDK 使用的签名过程不匹配。例如:

我们可以处理缺少的内容类型和其他元数据字段,但请注意 METHOD 完全错误。RADOSGW 我认为应该使用“Access-Control-Request-Method”作为签名中的方法......而不是用于预检请求的实际 OPTIONS 方法。

有没有人能够让这种组合发挥作用?

0 投票
1 回答
2438 浏览

gateway - ceph网关不工作

我已经部署了一个 6 个节点的 ceph 存储集群 + 1 个管理员和 1 个监视器。一切似乎都很好。我刚刚创建了一个网关节点,当我启动 ceph-radosgw 进程时它似乎很好:

但我无法在其上使用任何 rados 或 rados-admin cmd。

无法连接到集群!错误-2

密钥环文件具有读取权限:

并且配置确实指示了环文件的正确路径:

密钥环文件确实提供写权限。

网关主机上只安装了 ceph-radosgw 和 radosgw-agent。如果有人可以为我提供故障排除提示,我将不胜感激。最好的祝愿。

0 投票
1 回答
1111 浏览

ruby - AWS S3 和 CEPH/Rados Bucket 权限继承

我在创建可公开阅读的存储桶时遇到问题。我正在使用 Amazon aws-sdk v 1.60.2 在 CEPH / Rados 商店工作

我创建了一个类似于许多不同教程的存储桶

然后我上传了一些文件,s3.buckets['bucketName']但是当我进入并查看存储桶的特定权限及其内部对象时,我看到的存储桶具有授予 AllUsers 组的读取权限以及设置给我创建存储桶的用户的 FULL_CONTROL . 但是,这些对象不继承匿名读取权限。我需要桶中的对象可以匿名读取。

作为注释,我在运行时会看到这些权限s3.buckets['bucketName'].acl。当我尝试运行时s3.buckets['bucketName'].policy,出现以下毫无意义的错误:

上面的错误看起来像 aws-sdk 正在调用不应发生的 XML 字符串上的 json 解析器。

我不能简单地上传具有明确权限的对象,因为我的项目会自动将 BOSH 上传到商店。

0 投票
1 回答
437 浏览

openstack-swift - 列出来自非 Keystone Swift 的容器元数据

此代码向 RadosGW 发出GET请求(我不使用 Keystone)

如果PROVIDERopenstack-swift我的代码会抛出

如果PROVIDERswift我的代码抛出


我的依赖是


如何在不下载包含的 blob 列表的情况下列出所有容器及其所有元数据?

swiftopenstack-swift有什么区别?

0 投票
1 回答
1498 浏览

ceph - 当我删除池中的对象时,radosgw 保留影子文件

我在集群中部署了rgw,在进行测试时,我经常上传和删除对象,之后我发现.rgw.buckets中有很多影子文件,我尝试运行commend:radosgw-admin temp删除,但它给了我一个无法识别 arg remove 的错误。我也尝试配置 gc,但 gc 列表总是给我一个空列表。有人可以告诉如何处理影子文件或如何删除它们吗?非常感谢

0 投票
0 回答
394 浏览

ceph - radosgw swift接口放置对象响应500错误?

我启动了一个 radosgw(嵌入式 Civetweb),我想使用 swift 界面来放置/获取对象;

我的radosgw的ceph配置:</p>

radosgw.keyring

启动 radosgw:

其次,我创建了一个快速用户:

然后使用 swiftclient 进行通信:

创建一个桶(容器):

列表容器(一切正常):

但是当我放置对象(使用python脚本)时,我得到了错误:

radosgw的日志:</p>

put_object 的脚本:

我使用 python 脚本列出容器,它运行良好:

list_containers.py:

我不知道如何解决它,请帮助我;

多谢;

0 投票
1 回答
1685 浏览

amazon-s3 - ceph s3 radosgw 403

我安装了 ceph 和 radosgw,它们与 s3cmd 配合得很好。我决定设置 docker 注册表版本 2 并使用 s3 作为存储。我开始这样:

当我试图推动某些东西时,我得到了

在 radosgw 日志中

我发现亚马逊支持“验证请求:使用查询参数(AWS 签名版本 4)” http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html

所以,我的问题: 1. 有没有办法告诉 radosgw 使用查询 qarameters 对请求进行身份验证?2.有没有办法告诉注册中心不要使用这种身份验证?3. 有没有办法在radosgw 中使用registry?(也许很快?)

提前致谢, 拉斐尔

0 投票
1 回答
2611 浏览

openstack - 带有 ceph 后端的 Openstack swift (radosgw)

我正在尝试使用 radosgw 将 Openstack (liberty) swift 与 Ceph (Jewel) 一起使用。目的是对象应该存储在 ceph osds 下。我有一个可用的 Openstack 和 Ceph 集群。

为了使用 Ceph 作为对象存储后端,我在 ceph cluster 中安装并配置了 radosgw。在 openstack 节点中,我安装了“python-swiftclient”,创建了一个对象存储服务并使用 radosgw 的 URL 为该服务添加了一个端点。

我按照下面链接中的说明进行操作。 http://docs.ceph.com/docs/jewel/radosgw/keystone/

头文件

Openstack 端点

从命令行输出 swift list

从命令行输出 swift stat

当我尝试访问 openstack 仪表板中的对象存储 - 容器时,出现以下错误。 http://pastebin.com/ALevYCX8

请参阅下图,了解我在尝试从仪表板访问对象存储时遇到的错误。 openstack仪表板中的错误

0 投票
2 回答
394 浏览

amazon-s3 - 有什么方法可以远程创建 ceph rgw 用户吗?

如你所知,我们可以通过 command 创建一个 ceph rgw 用户"radosgw-admin user create",但是我们只能在 ceph 环境的 shell 中执行这个命令。那么,有什么方法可以远程创建 ceph rgw 用户吗?例如,通过restful api。

0 投票
0 回答
435 浏览

php - 从 Amazon 为 S3 更改主机并将其设置为与 Ceph radosgw 一起使用

是否可以将系统从 Amazon S3 更改为与其他 S3 提供商合作,例如 cap radosgw?我正在为 Laravel 使用 League/fly system-aws-s3-v3 和 aws/aws-SDK-PHP 包,但他们希望我输入我在 Ceph radosgw 上没有的区域,并自动连接我亚马逊服务。我试图将我的服务器添加为 filesystems.php 中的“端点”,但它仍然迫使我选择一个区域。这是我的 s3 磁盘配置:

这是我得到的错误:

缺少必需的客户端配置选项:区域:(字符串)“s3”服务需要“区域”配置值(例如,“us-west-2”)。可以在http://docs.aws.amazon.com/general/latest/gr/rande.html找到可用公共区域和端点的列表。