Post Jobs

Windows系统资源监控,CentOS7版本基础使用

图片 11
  • 1、windows自带系统资源监控工具
  • 2、Windows监控的数据来源:Performance
    Counters

    • 2.1 Performance
      Counter架构
    • 2.2 Performance
      Counter数据结构
    • 2.3 消费Performance
      Counter数据
  • 3、使用基于PDH的python客户端

IDEA切换项目时,如果前一个项目处于调试和运行状态,8080端口将被占用,处理如下:

第1章 CentOS7的使用

 

1.netstat -ano|findstr 8080

1.1 为什么要使用CentOS7版本

CentOS7是在CentOS6基础上发布的新版本,与之前的版本相比,主要的更新包括:

1、内核更新到3.10.0

2、支持Linux容器

3、LVM快照支持ext4和XFS

4、转用systemd、firewalld和GRUB2

5、XFS作为缺省文件系统

6、支持PTPv2

7、支持40G 以太网卡

8、在兼容的硬件上支持以UEFI安全启动模式安装

这其中最令人瞩目的新特性就是支持Docker技术。作为目前流行的应用虚拟化技术之一,Docker能够将应用程序与系统完全隔离,让其在系统之间实现迁移而不需要停机,提高了应用程序的移动性和灵活性。CentOS7在内核层面支持Docker容器技术,可以提高Docker稳定性和可靠性。

综上,我们会选择CentOS7来作为服务器的操作系统。

 

2.taskkill /f /t /im 597448

第2章 CentOS7与CentOS6版本的区别

1、Windows自带系统资源监控工具

我们都知道,Windows自带有系统资源监视器。主要有3个地方:

1)
Windows的任务管理器的性能页签,包括了CPU,内存,磁盘,网络等系统资源的监控。它主要监控系统资源的总体使用情况,使用它,我们可以发现是否有资源达到瓶颈了等等。

 图片 1

 

2) Windows资源监视器

这个工具可以看出系统资源到底是由哪些进程消耗的。通过它,可以快速查看到到底哪些进程占用了你的系统资源。

 图片 2

3) 性能监视器

前两种工具已经提供你要监控的大部分功能,在某些情况下,可能仍然不能定位问题,这时候就需要你更进一步的了解系统的运行状况。那么这个工具就是一个不错的选择。

 图片 3

 

图片 4

2.1 系统基础服务变化

操作

Centos6

Centos7

对比

自动补全

只支持命令、文件名

支持命令、选项、文件名

 

文件系统

ext4       

xfs                

随机读写更快

repo仓库

yum

yum-config-manager  

添加仓库便捷

修改主机名

/etc/sysconfig/network

/etc/hostname            

hostnamectl

修改时区    

/etc/sysconfig/clock

timedatectl set-timezone   

更方便

修改字符集

/etc/sysconfig/il8n    

/etc/locale.conf           

localectl

防火墙

iptables

firewalld

 

服务管理

System V init

systemd

 

时间同步服务

ntp

chrony 

 

 

2、Windows 监控的数据来源:Performance Counters

      
Windows的这些监控工具之所以能够展示这些资源的情况,它们的数据来源都是一个叫Performance
Counter的东东。

 

2.2 系统文件目录结构

centos6

cetos7

bin 

usr/bin

sbin

usr/sbin

lib

usr/lib

2.1 PerformanceCounter 架构

PerformanceCounter架构如下:

 图片 5

 

 

采用了Producer / Consumer 架构,支持多种客户端从Registry消费数据。

上图中,A 使用Registry接口来消费数据,而B 和 Performance
Monitor两个客户端则使用了pdh.dll来消费数据。

 

 

 

2.3 修改主机名

2.2 Performance Counter 数据结构

如果你想用程序来消费Counter的数据,不论使用哪种API来消费数据,不论使用哪种工具来消费数据,都需要了解Performance
Counter的领域语言,也就是说要了解它内部的数据是如何组织的。

 

它的基本概念如下:

Machine:机器,这个没什么好说的,支持消费本机的监控数据,也可以消费其他其他的监控数据。

perfObject:可以理解为监控哪种资源,譬如说处理器,磁盘

instance:监控的资源可能有多个实例,多个网卡,多个CPU,多块磁盘等

counter:计数器,每一个instance都会有多个计数器,例如cpu的idle,user,interrupt都是一个counter

 

更直观的理解这些概念: 

 图片 6

 

 

2.3.1 centos6实现方式

临时修改主机名

[root@zeq ~]# hostname zeq_temp

[root@zeq ~]# bash

[root@zeq_temp ~]#

永久修改主机名

[root@zeq_temp ~]# sed -i '/^HOSTNAME=/c HOSTNAME=zeq' /etc/sysconfig/network

[root@zeq_temp ~]# cat /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=zeq

2.3 消费Performance Counter数据

       从上面的架构图来看可以使用registry API或者 PDH.dll
,或者wmi等3种方式来消费数据。这两种API是C或者C++开发的。

 

1)Registry API :

 

2)WMI:

 

3)PDH API:

目前已知了两个版本:

C++:

 

Python :

Pywin32中有一个win32pdh的模块,就是python版本的pdh。

 

 

其他工具:

4)windows自带的typeperf命令

5)nsclient++

 

2.3.2 centos7实现方式

临时修改主机名

[root@zeq ~]# hostname zeq-c7

[root@zeq ~]# bash

永久修改主机名

[root@zeq-c7 ~]# hostnamectl set-hostname zeq-cc7

[root@zeq-c7 ~]# cat /etc/hostname

zeq-cc7

3、使用基于PDH的python客户端

 

Win32pdh API说明:

使用win32pdh API的一个简易教程:

 

基于win32pdh 封装的一套API:

 图片 7

 

 

 

最右侧是win32pdh模块,从python的仓库里下载即可。

Windows_collector是我封装的核心代码,用于通过简单的代码,即可监控到系统资源。

最左边的则是来使用这套API的。使用这套API的好处是,不必去再花时间学习win32pdh这套API就可以轻松的获取你要的监控数据。

 

这套API的源码:

 图片 8

图片 9

图片 10

图片 11

 代码的命名规范不是 python的,想必看起来,也不会有太多的困难。

使用这套API,只需要简单的代码即可对系统资源进行监控,例如:

ObjectCollector("Memory").collect()

 

2.4 时区修改

2.4.1 查看时区

[root@zeq ~]# timedatectl list-timezones

2.4.2 修改时区

[root@zeq ~]#timedatectl set-timezone "America/Punta_Arenas" 

[root@zeq ~]# timedatectl set-timezone "Asia/Shanghai"

2.5 网络接口变化

net.ifnames
基于固件、拓扑、进行自动分配网卡名称,缺点比eth0、更难读,如ens32

biosdevname
根据戴尔服务器系统的BIOS提供的信息对网络接口进行重命名,如em1

默认命名规则 eth0 eth1 eth2

biosdevname em1 em2 em3

net.ifnames ens33 ens34 ens35

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

网站地图xml地图