本页面提供了问题排查信息,可帮助您解决在尝试创建 Filestore 实例时可能遇到的问题。
创建 Filestore 实例时提示 PERMISSION DENIED
检查 Filestore API 是否已启用:
gcloud services enable file.googleapis.com
每个 Filestore 实例都必须具有与之关联的 IP 地址范围,且该范围不得与正在使用的其他范围重叠。如需查看限制的详细列表,请参阅配置预留的 IP 地址范围。
如果仍然遇到该错误,则可能是 Filestore 服务账号移除了
file.serviceAgent
角色。要检查是否存在这种情况,请运行以下命令:gcloud projects get-iam-policy project-id-or-number \ --flatten="bindings[].members" \ --format='table(bindings.role)' \ --filter="bindings.members:service-project-number@cloud-filer.iam.gserviceaccount.com"
其中:
- project-id-or-number 是您的 Google Cloud 项目的 ID 或编号。
- project-number 是您的 Google Cloud 项目的编号。
该命令应返回如下所示的内容:
ROLE roles/file.serviceAgent
如果未列出
roles/file.serviceAgent
,您可以通过运行以下命令将其恢复:gcloud projects add-iam-policy-binding project-id-or-number \ --member serviceAccount:service-project-number@cloud-filer.iam.gserviceaccount.com \ --role roles/file.serviceAgent
创建实例时的 System limit for internal resources has been reached
错误
此错误是 Filestore 达到内部网络配额引起的。对于您在其中创建 Filestore 实例的每个 VPC 网络,Filestore 必须创建一个与该网络建立对等互连的内部网络。即使 Filestore 实例和与其关联的 VPC 网络被删除,这些内部网络也会保留。
当一个项目的内部网络数量达到 49 后,Filestore 将无法再创建新的内部网络,从而导致无法在新 VPC 网络中创建 Filestore 实例。如果您尝试创建,则会导致以下错误之一:
System limit for internal resources has been reached. Please request to adjust limit here: https://forms.gle/PFPJ2QD4KnCHzYEx9
您可以通过停用然后重新启用 Filestore API 来清除内部网络。
使用 gcloud services disable
命令停用 Filestore API:
gcloud services disable file.googleapis.com
然后,使用 gcloud services enable
命令重新启用 Filestore API:
gcloud services enable file.googleapis.com
如果由于无法删除 Filestore 实例或者您不希望丢失通过配额增加请求授予的配额,而无法停用 API,则可以填写以下表格,调整网络限制:
https://forms.gle/PFPJ2QD4KnCHzYEx9
如果您需要定期删除和创建 VPC 网络和 Filestore 实例,您可以通过以下两种方式避免用尽网络配额:
创建 VPC 网络时,使用与您之前创建 Filestore 实例所用网络相同的名称。
在一个不超过 49 个 VPC 网络的池中进行循环切换,而不是删除然后重新创建 VPC 网络。