【问题标题】:SSH error when installing Google Dataproc with Jupyter使用 Jupyter 安装 Google Dataproc 时出现 SSH 错误
【发布时间】:2016-11-17 16:53:17
【问题描述】:

我已经使用 Jupyter (https://cloud.google.com/dataproc/tutorials/jupyter-notebook) 安装了一个 Google DataProc 集群。通过使用以下命令:

gcloud dataproc clusters create reco-test --zone=europe-west1-d  --master-machine-type n1-standard-2 --master-boot-disk-size 100 --num-workers 2 --worker-machine-type n1-standard-2 --worker-boot-disk-size 50 --project *project* --bucket *bucket* --initialization-actions  gs://dataproc-initialization-actions/jupyter/jupyter.sh`

女巫是一种魅力。之后我尝试进行 SSH 转发,但出现错误:

gcloud compute ssh --zone=europe-west1-d --ssh-flag="-D 10000" --ssh-flag="-N" --ssh-flag="-n" "reco-test-m" &

给出的错误可以在下图中作为错误 1 ​​找到。

如果我删除“-D”

gcloud compute ssh --zone=europe-west1-d --ssh-flag="10000" --ssh-flag="-N" --ssh-flag="-n" "reco-test-m" &

给出的错误可以在下图中作为错误 2 找到。

如果我删除 "--ssh-flag="-n""

gcloud compute ssh --zone=europe-west1-d --ssh-flag="10000" --ssh-flag="-N" --ssh-flag="-n" "reco-test-m" &`

给出的错误可以在下图中作为错误 3 找到。

有人可以帮我解决这个问题吗?

enter image description here

【问题讨论】:

    标签: ssh jupyter jupyter-notebook google-cloud-dataproc


    【解决方案1】:

    您似乎遇到了有关在 Windows 中解析参数方式的已知问题:https://github.com/GoogleCloudPlatform/dataproc-initialization-actions/issues/22

    尝试将-D 10000 拆分为两个单独的标志:

    --ssh-flag="-D" --ssh-flag="10000"
    

    此外,-n 标志仅用于在后台运行它,并且在 Windows 中似乎不受支持。一般来说,让它在前台运行可能更方便,所以你可以很容易地ctrl+C 进程在你使用完隧道后杀死隧道而不处理后台进程(尽管在后台运行它会删除集群时仍会自动终止)。

    更新:由于拆分标志也适用于 posix 系统,我已将 documentation 更新为现在使用单独的 --ssh-flag 参数,并更好地解释在前台运行时不使用 -n 标志。

    【讨论】:

    • ssh 隧道已创建,集群中的端口 8123 被转发到我的本地 Windows 机器。 Chrome 会打开,但 jupyter notebook 仍然没有显示。虽然网址显示:cluster-m:8123,但窗口显示:“没有互联网连接”。
    • 在顶部:也许最好在您的帖子中指出在 Windows 上您不能使用“\”作为换行符以及 C:\Program Files (x86)\Google\Chrome \Application\chrome.exe 应该在双引号之间:“C:\Program Files (x86)\Google\Chrome\Application\chrome.exe”。
    • 您用来启动 Chrome 并指向 socks 代理的完整命令是什么?
    • '"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" "reco-test-m:8123" --proxy-server="socks5://localhost:10000" - -host-resolver-rules="MAP * 0.0.0.0 , EXCLUDE localhost" --user-data-dir=/tmp/' 有什么想法吗?
    • 在尝试从 Chrome 访问 SSH 隧道时,您是否确保它仍在运行?如果您尝试使用与 10000 不同的转发端口会怎样?如果删除“--host-resolve-rules”设置会怎样?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多