Команда:
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
Похоже, вы пропустили шаг перед тем, как ввести команду для создания правила переадресации.
Причина, по которой команда сообщает, что не может найти ресурс, заключается в том, что флаг --target-instance требует, чтобы сначала был настроен ресурс целевого экземпляра.
Вы можете использовать для этого свой существующий экземпляр («проксигород») и назначить его только что созданному ресурсу целевого экземпляра.
Вы можете создать ресурс целевого экземпляра и назначить его экземпляру, выполнив следующее:
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
Есть дополнительная информация о создании целевых экземпляров Вот.