我有一个服务器主服务器,其中包含所有用户的工具和主目录。然后 3 个服务器是连接到主服务器的 NFS 从属服务器。用户连接到从属服务器,并且他们直接从 NFS 主服务器获取他们的主文件夹。工具也是一样。
意味着用户读取或写入的所有文件都使用NFS和网络。本地文件夹不被用户使用。
有没有办法监控用户和网络及 NFS 进程?我想知道用户是否进行了过多的网络访问,因为他在 NFS 主服务器上的主文件夹中写入了一个巨大的文件。
有人告诉我使用 nfsiostat,但是没有关于进程和用户的详细信息。有人还告诉我使用 tcpdump + wireshark,但是它不是用户友好的,我可能需要做大量工作来分析从网络流量到 nfs 层再到进程层...
这里的目标是检测出哪个用户的进程占用了大量网络资源,因为他在主文件夹中写入了一个大文件。我的意思是,我不想看到 root 的进程“nfs”正在使用网络,我想知道哪个用户/进程占用了 nfs 网络资源。
例如,如果我可以使用带有“网络”列的“top”之类的程序,效果会很好,但我担心只有“nfs 进程”会作为大的网络消费者出现。
答案1
我认为你需要一个 netflow 分析器 ntopng 是一个开源示例 https://www.ntop.org/products/traffic-analysis/ntop/