注意

本文档适用于 Ceph 开发版本。

S3存储桶通知兼容性

Ceph的Bucket NotificationsAPI遵循AWS S3存储桶通知API。但是,存在一些差异,如下所示。

Note

兼容性取决于使用上述哪种机制

支持的接收目的地

AWS支持:SNS, SQSLambda作为可能的接收目的地(AWS内部目的地)。HTTP/S, KafkaAMQP.

我们使用SNSARN来表示HTTP/S, KafkaAMQP接收目的地。

通知配置XML

以下标签(及其内部的标签)不受支持:

标签

Remaks

<QueueConfiguration>

不需要,我们将所有接收目的地视为SNS

<CloudFunctionConfiguration>

不需要,我们将所有接收目的地视为SNS

REST API扩展

Ceph的存储桶通知API具有以下扩展:

  • 使用DELETE动词删除特定通知,或存储桶上的所有通知

  • 在S3中,当存储桶被删除或存储桶上设置空通知时,所有通知都会被删除

  • 获取特定通知的信息(当存储桶上存在多个通知时)

    • 在S3中,只能获取存储桶上的所有通知

  • 除了根据对象键的前缀/后缀进行过滤外,我们还支持:

    • 基于正则表达式匹配的过滤

    • 基于附加到对象的元数据的过滤

    • 基于对象标签的过滤

  • 每个附加过滤器都扩展了S3 API,使用它将需要扩展客户端SDK(除非您使用的是纯HTTP)。

  • 允许过滤重叠,以便同一事件可以作为不同的通知发送

事件记录中不支持的字段

用于存储桶通知的记录遵循以下格式的描述:事件消息结构requestParameters.sourceIPAddress字段将被发送为空。

事件类型

事件

Note

s3:ObjectCreated:*

支持

s3:ObjectCreated:Put

支持

s3:ObjectCreated:Post

支持

s3:ObjectCreated:Copy

支持

s3:ObjectCreated:CompleteMultipartUpload

支持

s3:ObjectRemoved:*

支持

s3:ObjectRemoved:Delete

支持

s3:ObjectRemoved:DeleteMarkerCreated

支持

s3:ObjectLifecycle:Expiration:Current

Ceph扩展

s3:ObjectLifecycle:Expiration:NonCurrent

Ceph扩展

s3:ObjectLifecycle:Expiration:DeleteMarker

Ceph扩展

s3:ObjectLifecycle:Expiration:AbortMultipartUpload

Ceph扩展

s3:ObjectLifecycle:Transition:Current

Ceph扩展

s3:ObjectLifecycle:Transition:NonCurrent

Ceph扩展

s3:LifecycleExpiration:*

支持。相当于

s3:LifecycleExpiration:Delete

支持。相当于

s3:LifecycleExpiration:DeleteMarkerCreated

支持。相当于

s3:LifecycleTransition

支持。相当于

s3:ObjectSynced:*

Ceph扩展

s3:ObjectSynced:Create

Ceph扩展

s3:ObjectSynced:Delete

Ceph扩展

s3:ObjectSynced:DeletionMarkerCreated

定义,Ceph扩展(不生成)

s3:Replication:*

支持。相当于

s3:Replication:Create

支持。相当于

s3:Replication:Delete

支持。相当于

s3:Replication:DeletionMarkerCreated

定义,支持(不生成)

s3:ObjectRestore:Post

不适用

s3:ObjectRestore:Complete

不适用

s3:ReducedRedundancyLostObject

不适用

Note

The s3:ObjectRemoved:DeleteMarkerCreated事件显示有关对象最新版本的信息

Note

在分片上传的情况下,在过程结束时将发送ObjectCreated:CompleteMultipartUpload通知。

Note

The s3:ObjectSynced:Create当对象成功同步到区域时将发送事件。必须为每个区域显式设置。

主题配置

在存储桶通知的情况下,主题管理API将派生于AWS简单通知服务API

  • CreateTopic

  • DeleteTopic

  • ListTopics

我们还拥有以下主题配置扩展:

  • In GetTopic我们允许获取特定主题,而不是所有用户主题

  • In CreateTopic

  • 我们允许设置端点属性

  • 我们允许设置将随通知发送到端点的透明数据

由 Ceph 基金会带给您

Ceph 文档是一个社区资源,由非盈利的 Ceph 基金会资助和托管Ceph Foundation. 如果您想支持这一点和我们的其他工作,请考虑加入现在加入.