VMware vCenter状态监控脚本
import atexit
import ssl
import sys
from pyVim import connect
from pyVmomi import vmodl
def main():
# vCenter 连接信息
host = 'your_vcenter_ip_or_hostname'
user = 'your_username'
password = 'your_password'
# 禁用 SSL 证书验证 (不推荐用于生产环境)
context = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)
context.verify_mode = ssl.CERT_NONE
# 连接到 vCenter Server
try:
service_instance = connect.SmartConnect(host=host,
user=user,
pwd=password,
sslContext=context)
atexit.register(connect.Disconnect, service_instance)
# 获取内容根对象
content = service_instance.RetrieveContent()
# 获取所有主机
hosts = content.viewManager.CreateContainerView(content.rootFolder,
[vim.HostSystem],
True).view
for host in hosts:
print(f'主机名: {host.name}')
print(f' 状态: {host.runtime.connectionState}')
print(f' CPU 使用率: {host.summary.quickStats.overallCpuUsage} MHz')
print(f' 内存使用率: {host.summary.quickStats.overallMemoryUsage} MB')
except vmodl.MethodFault as error:
print(f'出现错误: {error.msg}')
sys.exit(1)
if __name__ == '__main__':
main()
下载地址
用户评论