如何在gcloud中创建SSH,但不断收到API错误

时间:2019-01-23 23:13:04

标签: gcloud ssh-tunnel google-cloud-datalab google-chrome-os

我正在尝试使用以下教程https://cloud.google.com/dataproc/docs/tutorials/dataproc-datalab从我的Chrome图书中设置数据实验室。但是,当尝试使用以下准则https://cloud.google.com/dataproc/docs/concepts/accessing/cluster-web-interfaces#create_an_ssh_tunnel设置SSH隧道时,我继续收到以下错误。

  

错误:(gcloud.compute.ssh)无法获取资源:    -找不到项目57800607318,并且不能用于API调用。如果是最近创建的,请通过访问https://console.developers.google启用Compute Engine API。   .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}

1 个答案:

答案 0 :(得分:0)

${}用于访问本地环境变量。您可以使用以下步骤在前面的步骤中设置它们:

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

还要检查您要访问的VM是否正在运行。