命令:
gcloud compute forwarding-rules create myproxyforwardrule --ip-protocol TCP \
--ports 80-443 --target-instance proxygorod --region us-central1
也:
gcloud compute forwarding-rules create myproxyforwardrule --ip-protocol TCP \
--ports 80-443 --target-instance https://www.googleapis.com/compute/v1/projects/<project_name>/zones/us-central1-c/targetInstances/proxygorod \
--region https://www.googleapis.com/compute/v1/projects/<project_name>/regions/us-central1
两者都返回:
ERROR: (gcloud.compute.forwarding-rules.create) Could not fetch resource:
- The resource 'projects/<project_name>/zones/us-central1-c/targetInstances/proxygorod' was not found
区域:us-central1-c
实例:proxygorod
f1-micro
可能出了什么问题?
我已尝试过:
gcloud init
gcloud auth login
- 重命名实例
答案1
看起来您可能在发出创建转发规则的命令之前错过了一步。
该命令说找不到资源的原因是 --target-instance 标志要求首先配置目标实例资源。
您可以为此使用现有实例(“proxygorod”),并为其分配新创建的目标实例资源。
您可以通过运行以下命令创建目标实例资源并将其分配给实例:
gcloud compute target-instances create NAME --instance=INSTANCE--zone=ZONE
因此,在您的具体情况下,您可以运行如下命令:
gcloud compute target-instances create proxygorod-target --instance=proxygorod--zone=us-central1-c
一旦配置了目标实例,并且假设您使用与上述命令中相同的目标实例资源名称,那么您可以通过发出以下命令来创建转发规则:
gcloud compute forwarding-rules create myproxyforwardrule --ip-protocol TCP --ports 80-443 --target-instance proxygorod-target --region=us-central1
关于创建目标实例还有一些信息这里。