VMware क्लस्टर में गुब्बारा या स्वैप की गई रैम के साथ सभी आभासी मशीनों का पता लगाएं?


11

अगर मैं एक वीएसएफईआर क्लस्टर या रिसोर्स पूल को देखूं और एक निश्चित स्तर की मेमोरी बैलूनिंग या स्वैपिंग देखूं, तो मैं कैसे पहचानूं कि कौन से वीएम प्रभावित हैं? मुझे पता है कि एक बार उन्हें खोजने के बाद मुझे उनके साथ क्या करना है :)

नीचे दिए गए उदाहरण में, संसाधन पूल में 65 आभासी मशीनें हैं। बस गुब्बारे के 32 गीगाबाइट के नीचे है। मैं कैसे पहचानूं कि किस वीएम के पास अपने रैम का एक हिस्सा गुब्बारा या स्वैप है?

यहाँ छवि विवरण दर्ज करें


1
यदि आप कोड को सरल बनाना चाहते हैं तो यह एक-लाइनर है: Get-View -ViewType VirtualMachine | जहाँ-जहाँ {$ _। सारांश ।QuickStats.BalloonedMemory -ne "0"} | @ {n = 'ComputerName' का चयन करें; e = {$ _। name}}, @ {n = 'Swappedemory'; e = {$ _। = {$ _।
सारांश.क्वीस्टेट्स.डैप्ड मीमोरी

जवाबों:


4

पॉवरकली इस तरह की चीजों के लिए महान है:

गेट-वीएम | जहां {$ _। बैलूनमेडोरी -इन '0'}

अधिक उदाहरण यहां दिए गए हैं:

http://www.getshifting.com/wiki/powerclinotes

विशेष रूप से "के गुब्बारे और गमागमन के साथ VMs" पर एक नजर है http://www.getshifting.com/wiki/powerclinotes#resource_pools_with_ballooning_and_swapping

उपरोक्त लिंक से कॉपी किया गया:

$myCol = @()
foreach($vm in (Get-View -ViewType VirtualMachine | Where-Object `
  {$_.Summary.QuickStats.BalloonedMemory -ne "0"})){
    $Details = "" | Select-Object VM, `
    SwappedMemory ,BalloonedMemory

    $Details.VM = $vm.Name
    $Details.SwappedMemory = $vm.Summary.QuickStats.SwappedMemory
    $Details.BalloonedMemory = $vm.Summary.QuickStats.BalloonedMemory

    $myCol += $Details
  }
$myCol

आप कोड पेस्ट कर सकते हैं!
ewwhite

यह काम किया, ~ 1200 VMs के साथ एक आभासी केंद्र पर 2 मिनट से भी कम समय में चल रहा है। प्रश्न अपडेट किया गया।
इविहित

6

आशा है कि यह थोड़ी मदद होगी।

क्षमा करें, त्वरित था इसलिए आप इस सूचना आउटपुट में अतिरिक्त प्रकार करना चाहते हैं, साथ ही साथ संसाधनों (समूह, डेटास्टोर, क्लस्टर) द्वारा समूहीकरण करना, मैं पूरे vCenter के खिलाफ भाग गया।

#!/bin/env python
__author__ = 'dladner'

import os
import sys
import pysphere

from pysphere import VIServer, MORTypes
from pysphere.resources import VimService_services as VI

s = VIServer()
s.connect("vcenter_hostname_or_ip", "username", "password")
vmlist = s.get_registered_vms(status="poweredOn")
count = 0
for vmpath in vmlist:
    pm1 = s.get_performance_manager()
    vm = s.get_vm_by_path(vmpath)
    mor = vm._mor
    ballooned = pm1.get_entity_statistic(mor, 77)
    swapped = pm1.get_entity_statistic(mor, 61)
    count += 1
    print "VM Number %d is %s and Ballooned Memory Amount on this VM is : %s" % (count, vmpath, ballooned)
    print "VM Number %d is %s and Swapped Memory Amount on this VM is  : %s" % (count, vmpath, swapped)

print "NOTICE: This statistic refers to VMkernel swapping and not to guest OS swapping."
s.disconnect()

यह आपको नीचे परिणाम देगा जहाँ आप पहले से ही संशोधित कर सकते हैं और जिस तरह से आप चाहते हैं उच्चतर गुब्बारा / अदला-बदली राशि से कम करने के लिए (+ केबी से एमबी में परिवर्तित करना चाहते हैं)

मैंने संशोधित आउटपुट (प्रतिस्थापित होस्टनाम और गुब्बारा / स्वैप द्वारा समूहीकृत) किया

SWAPPED:

VM Number 2 is [vm11_rr] hostname and Swapped Memory Amount on this VM is  : [<vm-303427:swapped(61):Swapped::107336:kiloBytes:2013-08-31 04:35:33.561569>]
VM Number 9 is [vm04] hostname and Swapped Memory Amount on this VM is  : [<vm-17451:swapped(61):Swapped::7896:kiloBytes:2013-08-31 04:36:25.791696>]
VM Number 10 is [vm05_nq] hostname and Swapped Memory Amount on this VM is  : [<vm-266882:swapped(61):Swapped::816:kiloBytes:2013-08-31 04:36:33.266692>]
VM Number 11 is [vm06] hostname and Swapped Memory Amount on this VM is  : [<vm-4550:swapped(61):Swapped::-1:kiloBytes:2013-08-31 04:36:40.313133>]
VM Number 14 is [vm05] hostname and Swapped Memory Amount on this VM is  : [<vm-158642:swapped(61):Swapped::12532:kiloBytes:2013-08-31 04:37:02.907590>]
VM Number 23 is [vm07] hostname and Swapped Memory Amount on this VM is  : [<vm-437276:swapped(61):Swapped::135272:kiloBytes:2013-08-31 04:38:10.633787>]
VM Number 24 is [vm14_rr] hostname and Swapped Memory Amount on this VM is  : [<vm-74703:swapped(61):Swapped::183436:kiloBytes:2013-08-31 04:38:17.985025>]
VM Number 25 is [vm01] hostname and Swapped Memory Amount on this VM is  : [<vm-156212:swapped(61):Swapped::13268:kiloBytes:2013-08-31 04:38:25.224494>]
VM Number 33 is [vm14] hostname and Swapped Memory Amount on this VM is  : [<vm-156661:swapped(61):Swapped::828:kiloBytes:2013-08-31 04:39:25.827377>]
VM Number 39 is [vm23_rr] hostname and Swapped Memory Amount on this VM is  : [<vm-391487:swapped(61):Swapped::10020:kiloBytes:2013-08-31 04:40:10.795514>]
VM Number 48 is [vm15] hostname and Swapped Memory Amount on this VM is  : [<vm-446333:swapped(61):Swapped::-1:kiloBytes:2013-08-31 04:41:20.224237>]
VM Number 49 is [vm14_rr] hostname and Swapped Memory Amount on this VM is  : [<vm-395852:swapped(61):Swapped::91664:kiloBytes:2013-08-31 04:41:27.588455>]
vm number 51 is [vm03] hostname and swapped memory amount on this vm is  : [<vm-47780:swapped(61):swapped::8:kilobytes:2013-08-31 04:41:43.539276>]
vm number 54 is [vm29_rr] hostname and swapped memory amount on this vm is  : [<vm-430048:swapped(61):swapped::1200:kilobytes:2013-08-31 04:42:07.398927>]
vm number 56 is [vm03] hostname and swapped memory amount on this vm is  : [<vm-45758:swapped(61):swapped::19560:kilobytes:2013-08-31 04:42:22.790720>]
vm number 59 is [vm25_rr] hostname and swapped memory amount on this vm is  : [<vm-267833:swapped(61):swapped::55836:kilobytes:2013-08-31 04:42:46.202327>]
vm number 60 is [vm01] hostname and swapped memory amount on this vm is  : [<vm-279859:swapped(61):swapped::4289160:kilobytes:2013-08-31 04:42:53.200330>]
vm number 61 is [vm04] hostname and swapped memory amount on this vm is  : [<vm-174860:swapped(61):swapped::26288:kilobytes:2013-08-31 04:43:01.326958>]
vm number 62 is [vm25_rr] hostname and swapped memory amount on this vm is  : [<vm-384185:swapped(61):swapped::8180:kilobytes:2013-08-31 04:43:09.043827>]
vm number 63 is [vm12_rr] hostname and swapped memory amount on this vm is  : [<vm-434605:swapped(61):swapped::25780:kilobytes:2013-08-31 04:43:16.270494>]
vm number 64 is [vm01] hostname and swapped memory amount on this vm is  : [<vm-372871:swapped(61):swapped::21840:kilobytes:2013-08-31 04:43:23.820811>]
vm number 67 is [vm09_nq] hostname and swapped memory amount on this vm is  : [<vm-184134:swapped(61):swapped::716:kilobytes:2013-08-31 04:43:46.909753>]
vm number 69 is [vm31_rr] hostname and swapped memory amount on this vm is  : [<vm-434653:swapped(61):swapped::148:kilobytes:2013-08-31 04:44:02.652494>]

BALLOONED::
VM Number 23 is [vm07] hostname and Ballooned Memory Amount on this VM is : [<vm-437276:vmmemctl(77):Balloon::2638188:kiloBytes:2013-08-31 04:38:08.631993>]
VM Number 24 is [vm14_rr] hostname and Ballooned Memory Amount on this VM is : [<vm-74703:vmmemctl(77):Balloon::1335560:kiloBytes:2013-08-31 04:38:16.188130>]
VM Number 49 is [vm14_rr] hostname and Ballooned Memory Amount on this VM is : [<vm-395852:vmmemctl(77):Balloon::1249812:kiloBytes:2013-08-31 04:41:25.789048>]
VM Number 56 is [vm03] hostname and Ballooned Memory Amount on this VM is : [<vm-45758:vmmemctl(77):Balloon::-1:kiloBytes:2013-08-31 04:42:20.445191>]

अगर आपको कुछ अतिरिक्त सहायता की आवश्यकता है तो मैं इसे कल और अधिक समझदार बनाने की कोशिश कर सकता हूं क्योंकि आज यह काफी देर हो चुकी है।

स्रोत:

http://pubs.vmware.com/vsphere-50/index.jsp#com.vmware.wssdk.apiref.doc_50/memory_counters.html

https://code.google.com/p/pysphere/

उम्मीद है की यह मदद करेगा।

चीयर्स।

PS निश्चित नहीं है कि क्या -1: किलोबाइट का अर्थ एपीआई से है।


धन्यवाद। मुझे इससे जुड़ने और परेशान वातावरण के खिलाफ प्रयास करने दें।
ewwhite

मुझे आश्चर्य है कि अगर यह जानकारी प्राप्त करने का एक तेज़ तरीका है।
इविहित

हाँ, एक धीमी है।
डानिला Ladner

मैं सकारात्मक हूं कि इसे तेजी से बनाने का एक तरीका है, कि एक सिर्फ एक डॉर्क प्रोटोटाइप है, मैं इसे देखूंगा।
15ila पर Danila Ladner

@DanilaLadner, इस उत्तर के लिए धन्यवाद। यह स्क्रिप्ट बहुत धीमी गति से चलती है। क्या इसे तेज़ बनाने का कोई तरीका है?
user1471980 0

1

यह एक पुराने धागे के अलावा बहुत देर से है, लेकिन आप इसे तेजी से पाइप लाइन में रख सकते हैं और प्रत्येक लूप से बच सकते हैं। इसे आजमाइए:

    get-vm | where{ $_.swappedmemory -ne '0'} | get-view | Select Name,@{Name="Swapped”;Expression={$_.summary.quickstats.swappedmemory}},@{Name="Ballooned";Expression={$_.summary.quickstats.balloonedmemory}}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.