我无法启动 Amazon SageMaker 笔记本电脑,而且出现了间歇性错误。
简短描述
打开 SageMaker Jupyter notebook 时,笔记本电脑可能会变得无响应或显示错误。
造成这种情况的一些常见原因是:
- SageMaker 无法在 Jupyter 及其浏览器之间建立连接。
- 笔记本内核已达到其定义的超时时间。
- 资源利用负载。
解决方法
**注意:**如果您在运行 AWS 命令行界面(AWS CLI)命令时遇到错误,请确保您使用的是最新版本的 AWS CLI。
无法在 Jupyter 和浏览器之间建立连接
有时当打开 Jupyter notebook 时,您会收到以下错误:
“无法建立与笔记本服务器的连接。笔记本电脑将继续尝试重新连接。检查您的网络连接或笔记本服务器配置。”
当 Jupyter 和浏览器之间出现连接问题时,会出现此消息。要对连接失败消息进行故障排除,请执行以下操作:
- 重启您的笔记本实例。最佳做法是定期重新启动笔记本实例。重新启动有助于笔记本实例软件保持最新版本。重新启动时,笔记本实例会移动到新的主机。重新启动笔记本还有助于解决浏览器中的 HTTP 503 和 504 错误。
- 重新启动浏览器,清除浏览器缓存,或者尝试使用其他浏览器。
- 使用不同的网络连接。
- 检查防火墙、代理或防病毒软件是否阻止了连接。
- 检查浏览器中所有 WebSockets 的日志。此设置通常在浏览器的开发者模式下找到。
- 暂时关闭所有浏览器扩展程序,然后重试。
笔记本内核已达到其定义的超时周期
Jupyter notebook 会话令牌的最大有效期为 12 小时。令牌过期后,会话超时,必须刷新才能重置超时令牌。但是,即使浏览器断开连接,Jupyter 内核仍会继续运行。
要减轻 12 小时令牌的影响,请执行以下操作:
- 将程序的结果写入文件而不是使用 stdout。
- 将您的程序转换为 Python 脚本,然后运行。
- 调用 CreatePresignedNotebookInstanceURL 生成一个带有 AuthToken 的新 URL。接下来,在会话到期之前将新 URL 粘贴到浏览器中。这会生成一个新的 12 小时会话令牌:
aws sagemaker create-presigned-notebook-instance-url —notebook- instance-name <instance name>
}
"AuthorizedUrl": "https:// name>.notebook. <region>.sagemaker.aws? AuthToken=<authToken>"
{
- 直接前往 AuthorizedUrl。这与从 SageMaker 控制台选择 Open Jupyter 相同。
- 可以修改 URL 将 "view=Lab&" 添加到以下表单中以打开 JupyterLab:
"https:// name>.notebook.
.sagemaker.aws? view=Lab&AuthToken=
"
已达到资源利用率极限
检查 SageMaker 笔记本实例的系统资源,以确保在可接受的负载水平下运行。要检查 SageMaker 笔记本实例资源,请在 Notebook 终端中输入以下命令:
要检查内存利用率,请执行以下操作:
free -h
要检查 CPU 利用率,请执行以下操作:
top
要检查磁盘利用率,请执行以下操作:
df -h
如果您发现 CPU、内存或磁盘利用率很高,请尝试以下解决方案:
相关信息
排查打开 Amazon SageMaker Jupyter notebook 时遇到的问题
解决 Amazon SageMaker 中的容量不足错误