Python 之 获取Host Esxi 主机信息

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 之 获取Host Esxi 主机信息相关的知识,希望对你有一定的参考价值。

代码

#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()

结果:
10.3.151.9 | CpuUsage=2029 MemoryUsage=95515
10.3.151.9 | TotalCpu=46000 TotalMemory=130845
10.3.151.9 | CpuUsagePercent=4 MemoryUsagePercent=72

技术图片

以上是关于Python 之 获取Host Esxi 主机信息的主要内容,如果未能解决你的问题,请参考以下文章

PowerCLI 通过vCenter批量设置所有esxi主机SSH

PowerCLI 通过vCenter批量设置所有esxi主机SSH

vCenter之vMotion故障迁移

vCenter之vMotion故障迁移

ESXi去掉 SSH已经启用的警告信息

PowerCLI 通过vCenter批量关机部分或者所有的esxi主机