故障排除

本故障排除指南为您提供了处理 AEN 安装可能出现的问题的方法。

一般故障排除步骤

  1. 清除浏览器 cookie。当您更改 AEN 配置或升级 AEN 时,浏览器中保留的 cookie 可能会导致问题。清除 cookie 并重新登录可以帮助解决问题。
  2. 确保 NGINX 和 MongoDB 正在运行
  3. 确保在所有节点上将AEN 服务设置为在 boot 时启动
  4. 确保服务按预期运行。如果任何服务未运行或丢失,请重新启动它们
  5. 检查并删除无关进程
  6. 检查节点之间的连通性
  7. 检查配置文件语法
  8. 检查文件所有权
  9. 验证是否启用了 POSIX ACL

浏览器错误:重定向过多

原因

浏览器 cookie 已过期。

解决方案

  1. 登出。
  2. 清除浏览器的 cookie。
  3. 清除浏览器缓存。
  4. 登录。

浏览器错误:启动项目应用程序时重定向过多

当用户尝试启动应用程序时,浏览器会显示“重定向过多”。

原因

项目的计算资源无效或已被删除。

异常:exceptions.TypeError: 'NoneType' 对象没有属性 '__getitem__'

当项目未分配计算资源时,此异常会出现在“管理”>“异常”页面上。

原因

项目的计算资源无效或已被删除。

错误:unix:////opt/wakari/wakari-server/etc/supervisor.sock no such file

这是一个 supervisorctl 错误。

原因

supervisord 未在服务器上运行。

解决方案

确保 supervisord 包含在 crontab 中。然后手动重启supervisord。

错误:删除项目时“未找到数据中心”

原因

数据中心已被移除。

解决方案

以 root 身份运行:

/opt/wakari/wakari-server/bin/wk-server-admin remove-project --db-only <user> <project>

忘记管理员密码

  1. 使用 ssh 以 root 身份登录服务器。

  2. 跑步:

    /opt/wakari/wakari-server/bin/wk-server-admin reset-password -u SOME_USER -p SOME_PASSWORD
    

    注意:将 SOME_USER 替换为管理员用户名,将 SOME_PASSWORD 替换为密码。

  3. 以管理员用户身份使用新密码登录 AEN。

或者,您可以添加管理员用户:

  1. 使用 ssh 以 root 身份登录服务器。

  2. 跑步:

    /opt/wakari/wakari-server/bin/wk-server-admin add-user SOME_USER --admin -p SOME_PASSWORD -e YOUR_EMAIL
    

    注意:将 SOME_USER 替换为用户名,将 SOME_PASSWORD 替换为密码,并将 YOUR_EMAIL 替换为您的电子邮件地址。

  3. 以管理员用户身份使用新密码登录 AEN。

日志文件被删除

正在删除日志文件。

注意:每个进程和应用程序的 AEN 日志文件的位置显示在概念中的节点部分。

原因

AEN 安装人员登录 /tmp/wakari\_{server,gateway,compute}.log. 如果日志文件变得太大,它们可能会被删除。

解决方案

为了将日志设置为或多或少详细,Jupyter Notebooks 使用Application.log_level

要使日志比默认的更详细,但仍然提供信息,请将 Application.log_level 设置为 ERROR。

错误:此套接字已关闭

当您尝试启动应用程序时,您会收到“此套接字已关闭”错误消息。

原因

当 supervisord 进程被终止时,发送到标准输出的信息stdout和标准错误stderr被保存在一个最终会填满的管道中。

一旦已满,尝试启动任何应用程序将导致“此套接字已关闭”错误。

解决方案

为防止出现此问题:

  • 按照管理服务中的说明停止和重新启动进程。
  • 不要在没有先停止 wk-compute 和任何其他使用它的进程的情况下停止或终止 supervisord。

要解决“此套接字已关闭”错误:

  1. 通过运行停止 wk-compute 。sudo kill -9

  2. 重启 supervisord 和 wk-compute 进程:

    sudo /etc/init.d/wakari-compute stop
    sudo /etc/init.d/wakari-compute start
    

服务错误 502:无法连接到应用程序管理器

网关节点显示“服务错误 502:无法连接到应用程序管理器”。

原因

计算节点没有响应,因为 wk-compute 进程已停止。

解决方案

停止然后重新启动 supervisord 和 wk-compute 进程:

sudo /etc/init.d/wakari-compute stop
sudo /etc/init.d/wakari-compute start

亚马逊网络服务 (AWS) 上的 502 通信错误

您收到“502 通信错误:此网关无法与 Wakari 服务器通信”错误消息。

原因

AEN 网关无法与 AWS 上的 Wakari 服务器通信。Wakari 服务器的 IP 地址可能有问题。

解决方案

配置您的 AEN 网关以使用服务器的 DNS 主机名。在 AWS 上,这是 Amazon Elastic Compute Cloud (EC2) 实例的 DNS 主机名。

无效用户名

原因

用户名不符合以下一项或多项规则:

  • 必须至少 3 个字符且不超过 25 个字符。
  • 第一个字符必须是字母 (AZ) 或数字 (0-9)。
  • 其他字符可以是字母、数字、句点 (.)、下划线 (_) 或连字符 (-)。
  • POSIX标准规定这些字符是可移植文件名字符集,而便携的用户名具有相同的字符集。

解决方案

遵循上述用户名规则。

笔记本错误:无法通过 LaTeX 将笔记本下载为 PDF

原因

LaTeX 未正确安装。

CentOS/6 解决方案

  1. TUG 站点安装 TeXLive 。按照描述的步骤操作。安装可能需要一些时间。

  2. 将安装添加到PATH文件 /etc/profile.d/latex.sh. 添加以下内容,根据需要替换年份和架构:

    PATH=/usr/local/texlive/2017/bin/x86_64-linux:$PATH
    
  3. 重启计算节点。

CentOS/7 解决方案

  1. 运行以下命令安装缺少的软件包:

    yum install texlive texlive-xetex texlive-xetexconfig texlive-xetex-def texlive-adjustbox texlive-upquote texlive-ulem
    

wk-server没有错误消息的无响应线程

原因

有两件事会导致wk-server线程在没有错误消息的情况下冻结:

  • LDAP 冻结
  • MongoDB 冻结

如果 LDAP 或 MongoDB 配置了长时间超时,Gunicorn 可以先超时并终止 LDAP 或 MongoDB 进程。然后 LDAP 或 MongoDB 进程终止而不记录超时错误。

解决方案

  1. 检查冻结的 LDAP 或 MongoDB 服务器进程。
  2. 您可能还希望将 Gunicorn 超时配置为超过 30 秒。

wk-gateway没有错误消息的无响应线程

原因

如果 TLS 配置了受密码保护的私钥, wk-gateway则将冻结而不会出现任何错误消息。

解决方案

更新 TLS 配置,使其不使用受密码保护的私钥。

启动项目时出错

项目的状态页面显示“启动此项目时出错”。

原因

计算节点磁盘空间不足会阻止项目启动。

解决方案

  1. 验证项目节点是否满足系统要求

  2. 检查计算节点所在分区上是否有足够的可用空间 /projects

    df -h /projects
    
  3. 释放一些磁盘空间以满足系统要求。

  4. 重新启动项目。

.condarc 文件中的更改将被忽略

.condarcconda 忽略应用到的更改。

原因

Conda 通过将多个文件合并在一起来加载其配置。

解决方案

检查您是否将更改应用于正确的文件。

要显示 conda 当前正在使用的合并状态:

conda config --show

要显示 conda 当前正在读取的所有配置文件:

conda config --show-sources