代码
代码语言:javascript
复制#Author Kang
#获取ESXI主机的CPU和内存使用情况,并统计百分比
import ssl
import pysphere
from pysphere import VIServer,MORTypes,VIProperty
from pysphere.resources import VimService_services as VI
ssl._create_default_https_context = ssl._create_unverified_context
host_ip = '10.3.151.2'
username = 'root'
passwd = 'password'
s = VIServer()
s.connect(host_ip,username,passwd)
hosts = s.get_hosts()
for host in hosts:
p = VIProperty(s,host)
HostName = p.name
HostCpuUsage = p.summary.quickStats.overallCpuUsage
HostMemoryUsage = p.summary.quickStats.overallMemoryUsage
HostNumCpuCores = p.summary.hardware.numCpuCores
HostMhzPerCore = p.summary.hardware.cpuMhz
HostCpuTotal = (HostNumCpuCores * HostMhzPerCore)
HostTotalMemory = p.summary.hardware.memorySize/ 1048576
HostCpuUsagePercent = ((HostCpuUsage * 100) / HostCpuTotal)
HostMemoryUsagePercent = ((HostMemoryUsage * 100) / HostTotalMemory)
print "%s | CpuUsage=%s MemoryUsage=%s" %(HostName,str(HostCpuUsage),str(HostMemoryUsage))
print "%s | TotalCpu=%s TotalMemory=%s" %(HostName,str(HostCpuTotal),str(HostTotalMemory))
print "%s | CpuUsagePercent=%s MemoryUsagePercent=%s" % (HostName,str(HostCpuUsagePercent), str(HostMemoryUsagePercent))
s.disconnect()
代码语言:javascript
复制结果:
10.3.151.9 | CpuUsage=2029 MemoryUsage=95515
10.3.151.9 | TotalCpu=46000 TotalMemory=130845
10.3.151.9 | CpuUsagePercent=4 MemoryUsagePercent=72