NWUI 的工作原理
NetWorker Web 用户界面 (NWUI) 使用以下技术:HTML5、Apache Tomcat、Spring Framework、Angular Framework 和表述性状态传输 (REST) 应用程序编程接口 (API)。NWUI 应用程序可以安装在 Linux 或 Windows 操作系统上。它可以直接安装在 NetWorker 服务器上,也可以直接安装在不是 NetWorker 服务器的主机上。
有四个重要组件:
这些组件可以位于同一主机上或单独的主机上。
- Web 前端: 这是以 HTML5 和 Angular Framework 编写的演示层,通过 Web 浏览器向用户呈现 NetWorker 操作。Web 浏览器连接到 UI 后端进程。
- UI 后端: 后端应用程序在 Spring Framework 中写入。 它使用 java 和 Apache Tomcat。前端和后端之间以及后端与 NetWorker 服务器之间的通信是使用内部 REST API 调用完成的。NWUI 进程使用 NetWorker 服务器上的现有 Apache Tomcat 实例,或者安装自己的 Apache Tomcat 实例(如果从 NetWorker 服务器远程安装)。
- NetWorker 服务器:NetWorker 服务器 REST 框架负责从 UI 后端接收 REST API 调用,并将其连接到 NetWorker 服务器的核心组件。NetWorker Server RabbitMQ 消息总线也用于与 nsrjobd 交互。
- AuthC:NetWorker 的 authc 组件用于所有身份验证需求。请求流程联系 AuthC 以验证凭据;验证后,AuthC 会发出基于时间、签名和加密的令牌。NetWorker 组件使用此令牌来验证用户并授权或不授权请求的操作。这通常在 NetWorker 服务器上,但可以安装在单独的主机上。
大多数通信都使用 REST API
,它允许与统一资源标识符 (URI) 地址标识的资源进行交互。它使用 HTTP 动词(HEAD、GET、PUT、POST、DELETE)以无状态方式与统一资源标识符 (URI) 进行交互。这些 REST API 调用是 NetWorker 和 NWUI 操作的内部调用。它们不会与 NetWorker REST API 界面混淆,NetWorker REST API 界面提供对 NetWorker 编程自定义操作的编程访问,如 NetWorker REST API 开发人员指南 中所述。
故障处理
定义问题
问题详细信息
要生成完整的问题描述,请考虑以下问题:
- 正在尝试哪些操作不起作用?
- 从 NWUI 外部启动时,此操作是否有效(例如:在 NetWorker Management Console (NMC) 中?
- 问题是一致还是间歇性?
- 如果间歇性,是否有已知触发器?
- 这种情况在出现之前和之后是否效果更好?如果是,是否在出现问题之前和之后应用了任何已知更改?
- 问题第一次出现的时间(以及问题出现后发生了哪些变化)?
- 此问题是否仅在备份环境负载繁重时发生?
- 问题的范围是什么(所有恢复操作/某些恢复操作、某些选项卡不起作用,而其他选项卡不受影响)?
- 到目前为止,已尝试修复哪些问题,以及从中得出了哪些结论?
环境详细信息
- NetWorker 服务器版本和操作系统平台是什么?
- NWUI 是否安装在 NetWorker 服务器或单独的主机上?
- 如果在独立于 NetWorker 服务器的主机上安装 NWUI 版本是什么?
- NWUI 服务器上安装了什么 Java 软件包;已安装 NetWorker Runtime Environment (NRE) 或 Oracle Java Runtime Environment (JRE)。
身份验证
身份验证使用 AuthC 的方式与 NetWorker 管理控制台和
nsrlogin 命令相同。对于身份验证问题,首先在 NetWorker 服务器上测试身份验证,以便分隔身份验证问题是否与 NWUI 相关。如果您使用的是外部身份验证方法(如 AD 或 LDAP),建议首先使用本地 NetWorker 帐户测试身份验证,以查看问题是否仅影响外部身份验证方法。
用于测试 NetWorker 服务器上的身份验证过程是否按预期运行的典型命令是:
authc_mgmt -u [user name] -p [password] -e find-all-users.
或者:
本地 NetWorker 帐户:
nsrlogin -u ACCOUNT -p PASSWORD
nsrlogout
外部 (AD/LDAP) 帐户:
nsrlogin -t TENANT -d DOMAIN -u USERNAME -p PASSWORD
nsrlogout
安装问题
浏览器端问题
如果安装了多个浏览器,请在不同的浏览器中测试观察到的问题,以查看问题是否特定于一个浏览器。
在浏览器中,使用右键单击和“检查”,以查看浏览器发出的 REST API 调用以及日志语句和网络连接信息。
- 右键单击浏览器窗口中的任意位置,然后选择“检查”
- 此时将打开一个新窗口,其中包含多个选项卡。 “控制台”和“网络”选项卡可能最有用。
- 使用这些选项卡,我们可以看到对 NetWorker 服务器执行的确切 REST API 调用。
- 在“Network”选项卡中,我们还可以看到来自 NetWorker 服务器的请求方法和 REST API 响应。通过这种方式,我们可以准确地跟踪 NetWorker 服务器的请求,以及 NetWorker 服务器对此请求的响应方式。
UI 后端问题
重要的 UI 后端日志包括:
catalina.log — Tomcat 服务器日志记录和应用程序部署日志记录。
nwui.log — NWUI 应用程序服务器日志记录。
restapi.log — NetWorker REST API 日志记录。 NWUI 使用 NetWorker REST API 与 NetWorker 服务器进行通信。
daemon.raw — NetWorker 服务器日志记录。
这些日志文件的位置取决于正在使用的操作系统,以及 NWUI 的安装是 NetWorker 服务器本地的还是远程的。 如果 NWUI 位于 NetWorker 服务器上,则它与 NetWorker 共享相同的 tomcat 实例。
如果您要提供.raw日志文件以支持,建议您在其发起的系统上呈现日志文件。这可确保在服务器的本地时间呈现时间戳:
NetWorker:如何使用nsr_render_log
日志文件
Linux:
为 UI 后端运行的进程包括: /opt/nwui/bin/nwuictld 和 jsvc.exec 您可以 使用 ps 命令检查它们是否正在运行:
日志如下:
本地到 NetWorker 服务器:
- /opt/nwui/日志
- /nsr/authc/logs/
- /nsr/logs/restapi/restapi.log
- /nsr/logs/daemon.raw
远程:
- /opt/nwui/日志
- /nsr/nwui/logs
窗户
必须运行的 windows NWUI 后端进程称为 nwuictld.exe:
您可以从 services.msc 管理此功能:
日志如下:
本地到 NetWorker 服务器:
- C:\Program Files\EMC NetWorker\nwui\logs
- C:\Program Files\EMC NetWorker\nsr\authc-server\logs
- C:\Program Files\EMC NetWorker\nsr\restapi\restapi.log
- C:\Program Files\EMC NetWorker\nsr\logs\daemon.raw
远程:
- C:\Program Files\EMC NetWorker\nwui\logs
- %LOCALAPPDATA%\Temp\NetWorker_Management_Web_UI_Server_[TIMESTAMP].log
- %LOCALAPPDATA%\Temp\NetWorker_Management_Web_UI_Server_[TIMESTAMP]_0_MCUI.log
NetWorker 服务器
在 NetWorker 服务器上运行 nsrget 工具以收集相关日志:
NetWorker:如何使用 NSRGet NetWorker 数据收集工具
最相关的日志取决于从 NWUI 尝试的操作。有关 NetWorker 日志的更多信息,请参阅:
NetWorker:日志文件和位置
调试
要调试 REST API 通信,请在 NetWorker 服务器上的 logback.xml 文件中更改调试级别:
Windows:C:\Program Files\EMC NetWorker\nsr\authc-server\tomcat\webapps\nwrestapi\WEB-INF\classes
Linux:/nsr/authc/webapps/nwrestapi/WEB-INF/classes
取消对处理 API 调用日志记录的行的注释。这会导致将 REST API 请求和响应的日志记录级别设置为“trace”。