Gcloud не может получить ресурс: указанный IP-адрес не выделен для проекта или не принадлежит указанной области

Я пытаюсь перенести виртуальную машину на GCP из одного проекта в другой. Мне это удавалось до момента, когда дело дошло до передачи статического IP-адреса.

Я отсоединил его от старой виртуальной машины, а затем удалил / отпустил. Я перешел к новому проекту и попытался создать новый экземпляр с помощью команды:

gcloud compute instances create <name> --address x.x.x.x

И получил ошибку:

ERROR: (gcloud.compute.addresses.create) Could not fetch resource:
- Invalid value for field 'resource.address': 'x.x.x.x'. Specified 
IP address is not allocated to the project or does n
ot belong to the specified scope.

Вместо этого я подумал, что, возможно, мне нужно сначала зарезервировать IP-адрес, и попробовал:

gcloud compute addresses create <name> --addresses 
x.x.x.x --region us-east1

И от этого, по сути, получилось то же самое -

ERROR: (gcloud.compute.addresses.create) Could not fetch 
resource:- Invalid value for field 'resource.address': 'x.x.x.x'. 
Specified IP address is not allocated to the project or does n
ot belong to the specified scope.

Я очень внимательно слежу за их документами:- https://cloud.google.com/compute/docs/ip-addresses/reserve-static-external-ip-address

Если бы он уже был заявлен при их автоматической генерации IP другим экземпляром, я бы подумал, что сообщение об ошибке будет отличаться от этого. Я также использовал другую команду gcloud, чтобы просмотреть все мои зарезервированные IP-адреса и убедиться, что они не активны в старом проекте.

2 ответа

Вы можете выбрать только тот IP-адрес, который уже был зарезервирован и назначен вашему проекту. Вы не можете просто выбрать любой IP-адрес. Вам нужно будет зарезервировать новый IP-адрес и обновить записи ресурсов DNS на своих DNS-серверах.

В вашей команде gcloud обязательно укажите --subnet, то есть:

      gcloud --project=project-id compute addresses create \
    "address-name" \
    --region=us-central1 \
    --subnet=default \
    --addresses=X.X.X.X

Затем вы можете указать любой X.X.X.Xкоторый соответствует подсети по умолчанию.

Другие вопросы по тегам