Google cloud platform 在谷歌上创建的Jupyter的默认密码是什么;s数据处理

Google cloud platform 在谷歌上创建的Jupyter的默认密码是什么;s数据处理,google-cloud-platform,jupyter-notebook,google-cloud-dataproc,Google Cloud Platform,Jupyter Notebook,Google Cloud Dataproc,我使用链接中的步骤设置data proc 但是我的Jypter一直在问密码 我没有设置任何密码 我尝试了我的谷歌帐户密码,但密码不起作用 我运行了。/root$sudo grep-ir密码 并获取以下信息,以便确认未设置密码 .jupyter/jupyter_notebook_config.py:## Hashed password to use for web authentication. .jupyter/jupyter_notebook_config.py:# The string

我使用链接中的步骤设置data proc

但是我的Jypter一直在问密码

我没有设置任何密码

我尝试了我的谷歌帐户密码,但密码不起作用

我运行了
。/root$sudo grep-ir密码
并获取以下信息,以便确认未设置密码

.jupyter/jupyter_notebook_config.py:## Hashed password to use for web authentication.
.jupyter/jupyter_notebook_config.py:#  The string should be of the form type:salt:hashed-password.
.jupyter/jupyter_notebook_config.py:#c.NotebookApp.password = u''
.jupyter/jupyter_notebook_config.py:#  Only used when no password is enabled.
.local/share/jupyter/runtime/nbserver-3668.json:  "password": false, 

由于初始化操作只是使用
conda install jupyter
从最新安装,这似乎是由最近的上游更改引起的,特别是将
notebook
组件从
4.2.3
升级到
4.3.0
。几周前,我使用开箱即用的init操作部署了一个最近的集群,它的登录名与您看到的不一样;init操作的设计是让googlecomputeengine防火墙成为您的防御层,SSH隧道成为您的安全连接,而不是依赖于来自不同Hadoop/Spark工具和web ui的各种第三方auth实现

解决方案是在以下位置添加一行:

完全禁用jupyter端身份验证并恢复到几周前的行为。请注意,如果您想自己做这件事,您必须在
jupyter.sh
中处理
INIT\u ACTIONS\u REPO
INIT\u ACTIONS\u分支
设置,如果您还没有自定义它,可能需要一些时间才能习惯。我们将尝试尽快推出修复程序,一旦完成,您应该能够使用开箱即用的init操作,而不会再次导致登录屏幕

如果您已经有一个集群在运行,您可以在SSH进入主服务器后以root用户身份手动运行jupyter服务器,从而禁用jupyter服务器的身份验证:

sudo su
killall -9 jupyter-notebook
echo "c.NotebookApp.token = u''" >> ~/.jupyter/jupyter_notebook_config.py
/dataproc-initialization-actions/jupyter/internal/launch-jupyter-kernel.sh
或者,如果您确实希望保留新的默认令牌授权方法,jupyter服务器实际上会将生成的令牌记录到
/var/log/jupyter_notebook.log
;查找一行文字,说明Jupyter笔记本正在运行:http://[系统上的所有ip地址]:8123/?token=[此处的一些令牌字符串];该令牌字符串可以插入密码字段或URL参数,如图所示

编辑:修复程序已进入Dataproc的init action存储库并同步到
gs://Dataproc initialization actions
。在Jupyter UI中没有额外的登录页面的情况下,开箱即用的部署再次工作

如果您确实希望指定Jupyter还允许在
密码
字段中使用的令牌,则还添加了一个新的元数据选项,其中键为
Jupyter\u AUTH\u token
。仅当您希望登录页面请求您指定的令牌时,才按如下方式使用它(如果您只想使用“无登录页面”的旧行为,则不需要元数据键):


然后您的登录密码将是
foobarbaz

当您不设置任何密码时,您可以使用安装该密码的服务器凭据登录。

谢谢!!我真的花了7个多小时尝试不同的组合(包括不同的机器和区域),思考为什么它以前能工作,现在却不能工作了。现在就来试试这个。是的,这个在Dataproc方面也被忽略了,感谢你提出这个!如果您保持令牌流并希望从/var/log/jupyter_notebook.log中grep出生成的密码/令牌,我还在末尾添加了一段作为另一种选择。一般来说,使用SSH隧道和保持防火墙关闭的默认指导对于这个用例来说仍然是理想的,并且不需要jupyter强制认证。非常感谢!!!它奏效了,我喜欢另一种方法。在我的最后一个ML项目中,我真的需要它。为了回答你关于运行本地笔记本的问题,不幸的是,目前这样做并不重要,尽管理论上是可能的。这需要小心地打开家庭连接端口,而不将其打开到整个互联网,包括SparkContext和运行在Dataproc群集上的Spark AppMaster之间可能发生低级akka通信的端口。主机名解析也存在已知问题,因为外部连接将通过外部IP拨入,而在群集上使用内部IP和主机名。仅供参考,修复程序已提交并同步,在默认设置下,一切应再次正常工作。
sudo su
killall -9 jupyter-notebook
echo "c.NotebookApp.token = u''" >> ~/.jupyter/jupyter_notebook_config.py
/dataproc-initialization-actions/jupyter/internal/launch-jupyter-kernel.sh
gcloud dataproc clusters create \
    --initialization-actions gs://dataproc-initialization-actions/jupyter/jupyter.sh \
    --metadata JUPYTER_AUTH_TOKEN=foobarbaz