常见问题及解决方案
以下列出了在使用 ArcGIS Notebook Server 时可能遇到的问题以及建议的解决方案。 如果未能在本主题中找到您要查找的问题,也可以访问 Esri 技术支持中心网站以搜索相关文章。
安装
Windows 上的 ArcGIS Notebook Server 管理目录在进行安装后或在重新启动 Notebook Server 计算机后无响应。
加载 notebook 运行时镜像时,尽管安装 ArcGIS Notebook Server 和 Docker 的驱动器上仍有空间,我仍收到设备上剩余空间不足的错误。
访问 notebook
Notebook
当我通过使用 ArcGIS Enterprise 门户项目的 Python 代码运行 notebook 单元格时,请求超时。 只要我运行包含远程 URL 的单元格,就会发生这种情况。
当我运行默认的首个 notebook 单元格(包括字符串
gis = GIS("home"))时,收到 URL 错误消息,提示暂时无法进行名称解析。
Windows 上的 ArcGIS Notebook Server 管理目录在进行安装后或在重新启动 Notebook Server 计算机后无响应。
在进行安装或重新启动计算机后,如果未按照正确顺序启动 ArcGIS Notebook Server Windows 服务和 Docker 服务,则可能出现此问题。
要解决此问题,可将 ArcGIS Notebook Server Windows 服务设置为自动延迟启动。 执行此操作可以使 Docker Windows 服务在 ArcGIS Notebook Server Windows 服务启动之前完全初始化。
要将 ArcGIS Notebook Server Windows 服务配置为自动延迟启动,请完成以下步骤:
在您的 ArcGIS Notebook Server Windows 计算机上打开 Services 应用程序。
右键单击 ArcGIS Notebook Server 服务,然后选择属性。
单击常规。
在
Startup type中,选择自动(延迟启动)。单击应用。
重新启动计算机以应用更改。
如果您的 ArcGIS Notebook Server 站点包含多台计算机,请对每台计算机重复这些步骤。
加载 notebook 运行时镜像时,尽管安装 ArcGIS Notebook Server 和 Docker 的驱动器上仍有空间,我仍收到设备上剩余空间不足的错误。
检查高级资源分配的 Docker 桌面设置,并验证是否为磁盘镜像位置分配足够的磁盘镜像大小。 增加分配的磁盘空间并尝试重新加载 notebook 运行时镜像。
如何从计算机中移除之前的容器镜像?
在运行 Mirantis Container Runtime 的 Windows Server 上,容器镜像位于 C:\ProgramData\docker\windowsfilter 文件夹。 要从计算机上移除所有先前容器镜像并释放磁盘空间,在 PowerShell 中使用管理员权限运行以下命令。
docker system prune -af
如果没有从 C:\ProgramData\docker\windowsfilter 中移除所有镜像层,则重启计算机,然后在 PowerShell 中使用管理员权限运行以下命令。
注:
在加载 ArcGIS Notebook Server Windows 容器镜像之前执行这些操作,因为此过程会移除计算机上的所有容器镜像。
$FolderPath = "C:\ProgramData\docker\windowsfilter"Get-ChildItem -Path $FolderPath -Directory | % {Rename-Item $_.FullName "$($_.FullName)-removing" -ErrorAction:SilentlyContinue}-
while ((Get-ChildItem -Path $FolderPath -Force | Measure-Object).Count -gt 0) { Restart-Service docker }
从 My Esri 接收的 Docker 容器镜像加载失败,并提示设备上剩余空间不足。
Docker 使用 /var 驱动器加载容器镜像。 请确保安装 ArcGIS Notebook Server 时 /var 驱动器空间至少为 50 GB,或将 Docker 的本地注册表移动至空间充足的其他位置。
当我尝试打开 notebook 时,收到以下错误消息:连接失败。 无法建立与 Notebook Server 的连接。 Notebook 将继续尝试重新连接。 检查您的网络连接或 Notebook Server 配置。
如果您的 ArcGIS Web Adaptor 运行于 IIS Web 服务器上,当计算机禁用 WebSocket 协议时,将发生此错误。 从 10.8 版本开始,ArcGIS Web Adaptor 在 IIS Web 服务器上自动启用 WebSocket 协议,因此请勿禁用此协议。
当我尝试打开 notebook 时,收到以下错误消息:无法加载。
您的 Web 浏览器不信任通过 ArcGIS Notebook Server 站点的 Web Adaptor 配置的 SSL 证书。 确保您已配置 CA 签名证书且站点已启用 HTTPS。
如果您正在开发环境或过渡环境中使用自签名证书,则打开 ArcGIS Notebook Server Administrator Directory 的 URL 并在 Web 浏览器中添加例外以信任自签名证书。
当我尝试打开 notebook 时,收到以下错误消息:无法打开 notebook。 在 Notebook Server 上无法连接至 Docker 环境。 请确保已满足运行 Docker 的 Notebook Server 先决条件。
一个或多个允许 Docker 引擎组件与 ArcGIS Notebook Server 配合使用的先决条件设置尚未配置。 有关详细信息,请参阅安装指南中的以下主题:
当您验证所有必要设置均配置完成后,在命令提示符中运行以下内容以确认 ArcGIS Notebook Server 计算机上已运行 Docker:
docker version
docker run hello-world
当我尝试打开 notebook 时,收到错误信息提示容器未运行。
如果显示此错误消息,容器已可用但是当前未处于运行或可用状态。 要使其可访问,您必须使用 Administrator Directory 终止容器。 确保终止错误消息中指定的容器。 终止容器后,请 notebook 所有者重新打开该 notebook,从而重新启动容器。
在通过 Windows 容器使用 ArcGIS Notebook Server 的情况下,当我在 notebook 编辑器中运行的两个或两个以上 notebook 导入 Torch 库或使用 Torch 作为依赖项的 Python 库时,除了运行的第一个 notebook 之外的导入语句均运行失败并提示 [WinError 1455] The paging file is too small for this operation to complete. Error loading "C:\ArcGIS_Server\Server\framework\runtime\ArcGIS\bin\Python\envs\arcgispro-py3\lib\site-packages\torch\lib\caffe2_detectron_ops_gpu.dll" or one of its dependencies。
此行为由 Notebook Server 计算机上为虚拟内存配置的默认最大分页文件大小导致。 请按照以下步骤增加默认分页文件大小,以及分配给 notebook 的最大 CPU 和内存。
注:
执行这些更改之前,请向您的系统管理员咨询以了解适用的分页文件大小。
在每台 ArcGIS Notebook Server 计算机上,单击开始 > 设置 > 系统 > 关于 > 高级系统设置。
在系统属性对话框的高级选项卡上,单击性能部分中的设置。
在性能选项对话框中,单击高级选项卡。
单击虚拟内存部分中的更改。
在虚拟内存对话框中,取消选中自动管理所有驱动器的分页文件大小。
选择自定义大小。
输入
Initial size (MB)和Maximum size (MB)的值。单击确定并重新启动计算机。
计算机重新启动后,在 ArcGIS Notebook Server Manager 中按照以下步骤操作:
单击设置 > 运行时。
选择运行导入 Torch 的 notebook 时要使用的运行时,然后单击编辑。
将最大 CPU 更新为 4 核,将最大内存更新为 12 GB。
单击保存以确认更新。
关闭 ArcGIS Notebook Server Manager。
在通过 Windows 容器使用 ArcGIS Notebook Server 的情况下,当我运行导入 mljar-supervised 库的 notebook 时,导入语句花费很长时间运行或导致 Kernel died 错误。
此行为的原因是 mljar-supervised 库具有许多依赖项。 在 ArcGIS Notebook Server Manager 中按照以下步骤操作以增加分配给 notebook 的最大 CPU:
单击设置 > 运行时。
选择用于运行导入
mljar-supervised的 notebook 的运行时,然后单击编辑。将最大 CPU 更新为 4 核。
单击保存以确认更新。
关闭 ArcGIS Notebook Server Manager。
当我运行包含使用了 ArcGIS Enterprise 门户项目的 Python 代码的 notebook 单元格时,请求超时。 只要我运行包含远程 URL 的单元格,就会发生这种情况。
站点中运行的 Docker 容器所使用的网络与 ArcGIS Enterprise 网络发生冲突,从而导致 Python 代码无法连接到网络。 请参阅关于配置网络的 Docker 文档。 为 Docker 完成网络配置后,再次运行 notebook。
当我运行默认的首个 notebook 单元格(包括字符串 gis = GIS("home"))时,收到 URL 错误消息,提示暂时无法进行名称解析。
当 ArcGIS Notebook Server 及其 Docker 组件与其他 ArcGIS Enterprise 组件安装在同一台计算机上时,可能发生此错误。 发生此错误是因为存储在 ArcGIS Notebook Server 中的默认 privatePortalUrl 属性是完全限定域名的缩短版本。 尝试连接门户时将导致失败。
解决方案是将 privatePortalUrl 属性修改为 ArcGIS Notebook Server 站点的完全限定域名:
以门户中默认管理员角色成员的身份登录到 ArcGIS Portal Directory。 URL 格式为
https://portal.domain.com:7443/arcgis/portaladmin。单击系统 > 属性 > 更新属性。
在更新系统属性对话框中,插入包含门户完全限定域名的 JSON 字符串,其格式如下所示:
{ "privatePortalUrl": "https://portal.domain.com:7443/arcgis" }
当我运行默认的首个 notebook 单元格(包括字符串 gis = GIS("home"))时,收到错误消息:ConnectionError: A connection error has occurred: HTTPSConnectionPool(host=,port=443): Max retires exceeded with url: /portal/sharing/rest/info=fjson (caused by NewConnectionError ('urllib3.connection.HTTPSConnection object at 0x7f672e592b0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution'))
部署 Docker 容器时,将从主机的 resolv.conf 文件复制名称服务器。 这可能导致在将公共 DNS 服务器用于计算机的设置中出现错误,因为 Docker 容器需要能够解析内部 DNS 名称。
解决方案为在 ArcGIS Notebook Server 系统属性中配置 dockerExtraHosts:
单击系统 > 属性 > 更新属性。
在更新系统属性对话框中,插入采用以下格式的主机名和 IP 地址 JSON 字符串:
{ "dockerExtraHosts": [ { "hostname" : "portal.domain.com", "ip" : "12.34.56.78" } ] }