Я могу получить память процессора для различных объектов, таких как хосты, центр обработки данных, через API. Но мне нужен общий процессор, статистика памяти всего vcenter, как показано на рисунке ниже, с использованием pyvmomi. Любая помощь будет оценена по достоинству.
pyvmomi получает общий процессор, статистику памяти сервера vcenter
comment
Я не нашел подходящего примера, но вы ищете счетчики vCenter Resource (vcres), которые являются частью PerformanceManager: code.vmware.com/apis/358/vsphere#/doc/vcres_counters.html
- person Kyle Ruddy   schedule 30.10.2018
Ответы (1)
Вам нужно выполнить цикл и получить хосты после подключения к vCentre с помощью SmartConnect.
Информация об оборудовании хоста находится здесь< /а>
Когда у вас есть хосты, вы просматриваете их и получаете информацию об оборудовании. Они в необработанном формате, поэтому вам нужно их конвертировать. Я вставил функцию convertMemory, которую использую
hosts = content.viewManager.CreateContainerView(content.rootFolder,[vim.HostSystem],True)
for host in hosts.view:
# Print the hosts cpu details
print(host.hardware.cpuInfo)
# convert CPU to total hz to ghz times numCpuCores
print("CPU:", round(((host.hardware.cpuInfo.hz/1e+9)*host.hardware.cpuInfo.numCpuCores),0),"GHz")
#covert the raw bytes to readable size via convertMemory
print("Memory:", convertMemory(host.hardware.memorySize))
Функция convertMemory просто преобразует число в удобочитаемую память.
def convertMemory(sizeBytes):
name = ("B", "KB", "MB", "GB", "TB", "PB")
base = int(floor(log(sizeBytes, 1024)))
power = pow(1024,base)
size = round(sizeBytes/power,2)
return "{}{}".format(floor(size),name[base])
person
woody1990
schedule
07.11.2018
Большое спасибо. Думал перебрать всех хостов и подвести статистику для подведения итогов.
- person sandesh hegde; 11.11.2018