找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 2299|回复: 8

[虚拟机相关] 分享下PVE摘要统计

[复制链接]
本帖最后由 myvirus 于 2022-12-28 22:16 编辑

今早看PVE CPU占用一直持续70%,点半天才发现是win10在升级。。想着以后发生类似情况,还是要一个个找是那台vm导致的,嫌麻烦,就动了自己定制的想法

看了下pve代码,后端是perl5,前端是extjs7,都不太会,试了半天,目前实现了下图的样子,勉强算能满足个人需求


perl5部分比较简单,主要改的还是/usr/share/perl5/PVE/API2/Nodes.pm文件的/nodes/{node}/status请求,搜索"pvecfg::version_text()",在后面插入压缩包中Nodes.pm的内容
    主要在res中增加了cpure CPU信息、thermalstate 温度数据、diskinfo 磁盘数据、gpuinfo 显卡信息、vmstatus 虚拟机数据、lxc_vmstatus lxc数据

代码里最乱那段是通过 lsblk 拿到所有块设备,然后遍历用 smartctl 拿硬盘信息,其中删掉了很多我个人不太需要的字段,要不然res太大
我不太清楚有没有更简单的方法,hddtemp拿不到nvme的数据,其他方法求大神告知。。

代码中用了个cpu_mhz.sh,可以执行下面的命令生成....其实也可以直接lscpu --json拿数据然后丢到前端去解析会更方便,懒得改了,照抄了别人的
  1. cat << EOF > /usr/bin/cpu_mhz.sh
  2.     c=\`lscpu|grep MHz|sed 's/CPU\ /CPU-/g'|sed 's/\ MHz/-MHz/g'|sed 's/\ //g'|sed 's/^/"/g'|sed 's/$/"\,/g'|sed 's/\:/"\:"/g'|awk 'BEGIN{ORS=""}{print \$0}'|sed 's/\,\$//g'\`
  3.     r="{"\$c"}"
  4.     echo \$r
  5. EOF
复制代码

代码中的vmstatus不包含虚拟机配置信息,,
如果需要的话,注释或删掉代码中的:
  1. push @$vmstatus, PVE::API2Tools::extract_vm_stats($vmid, $idlist->{$vmid}, $rrd);
复制代码
修改为:
  1. $vm = PVE::API2Tools::extract_vm_stats($vmid, $idlist->{$vmid}, $rrd);
  2. $vm->{config} = PVE::QemuConfig->load_config($vmid)
复制代码

虚拟机配置的话可以用来分析是不是做了直通,直通了什么设备,挂载了几块盘,处理器类别等等...我没这个需求,就没要


对了,还需要修改/usr/bin/pveproxy,将头部的#!/usr/bin/perl -T中的-T参数删掉

哦,还需要装几个包,然后授权,否则perl的执行用户没权限调用。
  1. apt update && apt install -y lm-sensors nvme-cli hddtemp smartmontools && chmod +s /usr/bin/lspci && chmod +s /usr/sbin/nvme && chmod +s /usr/sbin/hddtemp && chmod +s /usr/sbin/smartctl
复制代码

改完了记得要重启perl服务: systemctl restart proxy


然后就是前端部分

主要修改/usr/share/pve-manager/js/pvemanagerlib.js文件

第一处,PVE.node.StatusView组件,搜索Ext.define('PVE.node.StatusView   将整个组件代码修改为压缩包中的StatusView.pm文件内容
   主要修改是根据我的监控屏尺寸修改了下布局,增加了cpu频率、温度,删掉了初始化组件时的存储库状态判断。
   CPU温度、主频变动时会改成红色显示。这个可以按需改成比上次数值小的话用一种颜色,大的话用另一种颜色,方便区分。

第二处,PVE.node.Summary组件,搜索Ext.define('PVE.node.Summary  将整个组件代码修改为压缩包中的Summary.pm文件内容
    增加了虚拟机信息、硬盘信息两个GridPanel....用GridPanel是看中他有排序,可以按温度、CPU利用率降序来监控虚拟机信息,不需要的话可以自己组个table用

有字数限制只能传文件了....


如果你的PVE是7.0-11的话可以按我的代码改改看

改前端的话不用重启perl服务,刷新游览器就行

注意: 代码是根据我自己的硬件环境和需求定制的,代码不能通用!!!!

end



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
666感谢分享
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

666感谢分享
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

这个一更新就没了吧
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

感谢分享 !
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

你那黑苹果跑的效果如何?

点评

运行1个多月死过1次,这久闲着玩游戏换win10直通显卡就没开  详情 回复 发表于 2022-12-31 22:31
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
梦馒头 发表于 2022-12-31 16:01
你那黑苹果跑的效果如何?

运行1个多月死过1次,这久闲着玩游戏换win10直通显卡就没开

点评

我想pve 虚拟机跑黑苹果 j4125 你觉得能跑的起来不 ,我感觉不怎么行.不知道体验效果怎样  详情 回复 发表于 2023-1-8 21:30
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

myvirus 发表于 2022-12-31 22:31
运行1个多月死过1次,这久闲着玩游戏换win10直通显卡就没开

我想pve 虚拟机跑黑苹果  j4125 你觉得能跑的起来不 ,我感觉不怎么行.不知道体验效果怎样
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

很强,这么看直观很多,感谢分享
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-27 06:27

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表