Как создать SSH в gcloud, но продолжать получать ошибку API

Я пытаюсь настроить datalab из своей книги Chrome, используя следующий учебник https://cloud.google.com/dataproc/docs/tutorials/dataproc-datalab. Однако при попытке настроить SSH-туннель с использованием следующих рекомендаций https://cloud.google.com/dataproc/docs/concepts/accessing/cluster-web-interfaces#create_an_ssh_tunnel Я продолжаю получать следующую ошибку.

ОШИБКА: (gcloud.compute.ssh) Не удалось получить ресурс: - Проект 57800607318 не найден и не может использоваться для вызовов API. Если он создан недавно, включите Compute Engine API, посетив https://console.developers.google .com / apis / api / compute.googleapis.com / overview? project = 57800607318, затем повторите попытку. Если вы недавно включили этот API, подождите несколько минут, пока действие распространится на наши системы, и повторите попытку.

Сообщение об ошибке заставит меня поверить, что мой "Compute Engine API" не включен. Однако я дважды проверил, и "Compute Engine API" включен.

Вот что я ввожу в облачную оболочку

gcloud compute ssh ${test-cluster-m} \
    --project=${datalab-test-229519} --zone=${us-west1-b}  -- \
    -4 -N -L ${8080}:${test-cluster-m}:${8080}

person Rhizoblaster    schedule 23.01.2019    source источник


Ответы (1)


${} предназначен для доступа к локальной переменной среды. Вы устанавливаете их на предыдущем шаге с помощью:

export PROJECT=project;export HOSTNAME=hostname;export ZONE=zone;PORT=number

В этом случае будет:

export PROJECT=datalab-test-229519;export HOSTNAME=test-cluster-m;export ZONE=us-west1-b;PORT=8080

Либо попробуйте это:

gcloud compute ssh test-cluster-m \
    --project datalab-test-229519 --zone us-west1-b  -- \
    -D 8080 -N

Или получить доступ к переменным среды с помощью:

gcloud compute ssh ${HOSTNAME} \
    --project=${PROJECT} --zone=${ZONE}  -- \
    -D ${PORT} -N

Также проверьте, что виртуальная машина, к которой вы пытаетесь получить доступ, работает.

person Nahuel Varela    schedule 24.01.2019
comment
Я проверил, работает ли виртуальная машина, а затем попробовал предложенный вами код. При первой попытке я получил сообщение об ошибке: Невозможно назначить запрошенный адрес. Я нашел эту статью electricmonk.nl/log/2014/09/24/ и смог решить первоначальную проблему. Однако теперь, когда я запускаю, ошибки нет, и он просто мигает в консоли. - person Rhizoblaster; 24.01.2019
comment
Вы запускаете это в Cloud Shell? - person Nahuel Varela; 25.01.2019
comment
Да, я использую облачную оболочку. Как вы думаете, это может иметь какое-то отношение к настройке на Chrome OS. Мне удалось запустить руководство по быстрому запуску и запустить его таким образом, но я все еще не уверен, почему описанный выше метод не работает. - person Rhizoblaster; 26.01.2019
comment
Я так не думаю. Не могли бы вы проверить, что проект, выбранный в консоли, совпадает с тем, к которому вы пытаетесь получить доступ? - person Nahuel Varela; 28.01.2019