Google 云存储桶未列出已删除的对象

Google Cloud storage bucket not listing deleted objects

在没有对象版本控制的情况下手动删除多区域云存储存储桶(例如 us.artifacts.XXX.com)中的所有对象两天后,我注意到存储桶的大小根本没有减少。只有在尝试删除存储桶时,我才发现它实际上仍然包含我可能删除的对象。

即使启用 Show deleted data,为什么那些对象没有显示在存储桶列表视图中?

没关系!最终(在删除后 2-7 天之间的某个时间点)存储桶大小减小并且对象不再显示在“删除存储桶”对话框中。

首次部署函数时,会自动创建两个存储桶:

  1. gcf-sources-XXXXXX-us-central1

  2. us.artifacts.project-ID.appspot.com

您可以通过单击左侧面板中的“云存储”从 GCP 控制台观察这两个存储桶。

您在存储桶 us.artifacts.project-ID.appspot.com 中看到的文件与最近的运行时更改有关(对于 Node 10 及更高版本)按照 说明构建。

我还发现此存储桶没有对象版本控制、保留策略或任何生命周期规则。尽管您删除了此存储桶,但它会在您部署相关函数时再次创建,因此,如果您看到使用了意外数量的云存储,这可能是由于函数部署过程中创建的工件清理的已知问题引起的如图所示 here.

在问题解决之前,您可以通过在 Cloud Console 中创建 auto-deletion 规则来避免达到存储限制:

  1. 在 Cloud Console 中,select 您的项目 > 存储 > 浏览器以打开存储浏览器。
  2. Select 列表中的“工件”桶。
  3. 在“生命周期”选项卡下,为 auto-delete 个旧映像添加规则。选择适合您的正常部署率的删除间隔。

如果可能,请尝试使用新功能重现此场景。同时,请注意,如果您一次删除多个对象,您可以通过单击 Cloud Console 中的 Notifications 图标来跟踪删除进度。

此外,Google Cloud Status Dashboard 提供有关影响 Google 云服务(如云存储)的区域或全球事件的信息。