NetWorker:如何为 Linux NetWorker Server 生成 AUTHC Java 线程和堆转储

Summary: 此过程旨在让 NetWorker 备份管理员在 NetWorker 支持人员请求 Java 线程和堆转储时启用 Java 虚拟机 (JVM) 监视。在对与身份验证相关的问题进行高级诊断时,这可能很有用。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

前提条件:

  • NetWorker 身份验证 (authc) 服务器安装在 Linux 平台上。
  • 此过程需要重新启动 NetWorker 服务,因此必须相应地计划服务器停机时间。
  • 用于监视 NetWorker 服务器的 Windows Box 需要安装 VisualVM 工具: https://visualvm.github.io/download.html 本超链接将引导您访问非 Dell Technologies 运营的网站。  
  • Oracle Java 开发工具包 (JDK) 必须安装在用于启动 VisualVM 的 Windows 机箱上,NetWorker Runtime Environment (NRE) 不支持 VisualVM。
提醒:Windows 系统必须能够通过网络访问 NetWorker 服务器。

配置 NetWorker 服务器以在 VisualVM 中显示信息:

1.通过 SSH 连接到 NetWorker 服务器并切换到 root:

sudo su - 
 
2.标识 NetWorker 服务器 IP 地址:
ifconfig -a
nslookup
NETWORKER_SERVERNAME

 
3.确保端口 9094 未被使用。 
netstat -apno | grep 9094
提醒:如果正在使用该端口,请选择另一个端口,并确保它未被其他应用程序使用。

4.复制 authservice 配置文件:
cp /opt/nsr/authc-server/bin/authservice /opt/nsr/authc-server/bin/authservice_`date -I`

5.打开 authcservice 文件,并添加以下行:

vi /opt/nsr/authc-server/bin/authservice

-Djava.security.properties=${AUTHCCONF}/java.security \
-Dauthc.server.banner.location=${AUTHCCONF} \
-Djava.locale.providers=COMPAT \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=9094 \  # <--- Replace this another port if port 9094 is in use by another application
-Dcom.sun.management.jmxremote.rmi.port=9094 \  # <--- Replace this another port if port 9094 is in use by another application
-Djava.rmi.server.hostname=10.xxx.xxx.xxx \  # <--- Replace this with NW server IP address
-Dcom.sun.management.jmxremote.local.only=false \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-XX:+IgnoreUnrecognizedVMOptions \
org.apache.catalina.startup.Bootstrap

6.重新启动 NetWorker 服务:

systemctl restart networker

7.服务恢复正常后,确认在 authservice 文件正在侦听:

netstat -apno | grep 9094

The NetWorker authc 服务器现在配置为在 VisualVM 中显示信息。

使用 VisuaVM 为 NetWorker authc 服务器创建线程和堆转储:

提醒:根据面临的问题,可能需要在 15-30 秒的时间间隔内手动生成多个线程和堆转储。在缓慢的 NetWorker 身份验证期间,从登录开始到完成或失败,每 X 秒手动生成一次线程和堆转储。重新启动 NetWorker 服务可以暂时解决登录性能问题。等待问题再次出现,然后再收集线程和堆转储。当问题可重现时,必须收集线程和堆转储。

1.确认 Windows 系统可以连接到 NetWorker 服务器上的端口 9094:

Powershell: tnc HOSTNAME -port 9094
使用 TNC 测试端口  

2.启动 VisualVM
3.右键单击远程,然后选择添加远程主机

使用 visualvm 添加远程主机

4.输入 NetWorker 服务器主机名,单击Advanced Settings并添加端口 9094。

在 VisualVM 中设置远程端口

5.单击“确定”。
6.右键单击 NetWorker 服务器条目,然后选择添加 JMX 连接

在 visualvm 中添加 jmx 连接

7.在 连接字段中, 输入 NetWorker 服务器主机名,然后输入 :9094

连接到 NetWorker 服务器 JMX 连接

8.单击“确定”。
9 双击左侧菜单中的 JMX 条目,然后选择“线程”选项卡:

从 VisualVM 监视 JMX 线程

要生成线程转储,请单击 Thread Dump,它会在 JMX 连接下生成线程转储:

在 VisualVM 中创建线程转储

要保存线程转储,请右键单击转储,然后单击另存为:

保存线程转储文件

要生成头转储,请右键单击 JMX 连接,然后单击 Heap Dump

创建堆转储

系统会提示您将堆转储保存在 NetWorker 服务器上的 /tmp 目录下:

保存堆转储

10.当您完成线程和堆转储的生成时。手动保存并压缩(压缩)来自 VisualVM 的线程转储。

11.手动压缩(压缩)NetWorker 服务器上的堆转储以及 authc 日志:

tar cvzf /tmp/`hostname`_`date -I`.tgz /tmp/heap* /proc/cpuinfo /proc/meminfo /nsr/authc/logs

此命令使用 NetWorker 服务器的 /tmp 目录中的 NetWorker 服务器主机名和日期创建捆绑包。使用 SCP 工具将其复制:

NetWorker (Linux):如何将文件复制到 Linux NetWorker 服务器/从 Linux NetWorker 服务器拷贝文件。

Additional Information

Affected Products

NetWorker

Products

NetWorker Family, NetWorker Series
Article Properties
Article Number: 000224315
Article Type: How To
Last Modified: 29 Apr 2025
Version:  3
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.