Mivel a vCenter szerveren gyűjtött performancia adatok csak igen rövid távra tárolódnak megfelelő részletességgel (bár ezen lehet változtatni, de cserébe igen nagy adatbázis kapunk), ezért hiába mutogatjuk a felhasználónak ez elmúlt egy hét vagy hónap alapján rajzolt diagramokat. Ha pl. csak két óránként van adat, akkor mondhatja hogy a látott mondjuk 30% úgy is kijöhetett, hogy voltak időszakok amikor a CPU 60-70%-on pörgött sok-sok percig, máskor meg csak 5-10%-on.
Ha rendelkezünk valamilyen komolyabb management megoldással (pl. vRealize Operation), akkor onnan könnyedén tudunk kimutatásokat készíteni a túlméretezett gépekről. De ha ilyenünk nincs, akkor kénytelen vagyunk mi megoldást találni arra, hogy meggyőzzük a felhasználót arról, hogy a kért 4-6 vCPU helyett akár kettő is elegendő lenne.
Már volt egy kétrészes bejegyzés ebben a blogban arról, hogy a vCenter szerver adatbázisát hogyan tudjuk "megcsapolni", azaz mielőtt túlzottan átlagolná az értékeket, hogyan tudjuk azt áttölteni egy másik adatbázisba. 1. rész, 2. rész
Az ott vázolt adatbázist kiegészítettem a virtuális gépek cpu, memória, hálózat, és diszk használatának 5 perces értékeivel, és ezeket az értékeket nagyjából negyven napig megőrzöm. A részletekbe itt nem mennék bele, a megvalósítás teljesen olyan, mint a fent említett két bejegyzésben szerepel.
Az adatokat jelenleg 40 napig őrzöm meg, így nagyjából 10-11 ezer értékem van minden egyes virtuális gépről. Ezt persze meg lehet jeleníteni a szokásos módon, mondjuk egy vonal diagramon, de ez ennyi pont esetében nem néz ki túl jól, bár a lényeg látszik róla.
Minden érték megjelenítése |
select count(*) as darab,round(stat_value,0) as szazalek from VIEW_VM_STAT_5MIN
where vm=@VM and stat_name='cpu.usage' group by round(stat_value,0)
A fenti lekérdezésben a @VM az éppen kiválasztott virtuális gépet jelöli, a view_vm_stat_5min pedig azt a View-t takarja, amiben a virtuális gépek ötperces adatai vannak. A round függvény helyett lehet használni pl. a floor függvényt is, nagy eltérés nem lenne miatta.
Nézzük meg, hogy a fenti lekérdezést megjelenítve mit kapunk:
Hisztogram, lineáris |
Hisztogram, logaritmikus |
A fentiekkel azt szerettem volna megmutatni, hogy egy pici munkával ki lehet nyerni és meg lehet jeleníteni olyan adatokat is, amit a vSphere kliensben nem tudunk.
Végezetül nézzünk néhány példát különböző viselkedésű gépekre:
Itt aztán van minden, de azért a jellemző tartomány itt is 1-10%.
A következő gép étvágyát képtelenség volt kielégíteni. Szerencsére megszüntetés előtt áll :)
Végül egy olyan gép, aminek már régen szerettem volna csökkenteni a vCPU számát, de eddig nem volt olyan eszköz a kezemben, amivel feketén-fehéren (kéken..) megmutathattam volna, hogy amit kértek, az túlzás.
És végül Boldog Új Évet Kívánok az összes (5-10) olvasónak!!!
Koszi a tapasztalataid Zoli. egyebkent igy visszaosztva a DB mertet 1VM adatai mennyi helyet foglalnak? sikerult meggyozni a szoban forgo vm tulajdonosat vegul?:)
VálaszTörlésEgy rekord kb. 37 byte, és van kb. 850 gép, negyven napig ötpercenként négy értékkel. Ez durván 1,5MB/gép. Ennyit megér :)
TörlésSajnos most más dolgok miatt a felhasználók győzködése egyelőre parkolópályán (IBM HS22-->HP Proliant BL460c Gen9 cserék pl.)
az tenyleg nem sok.
Törlésjolhangzik az upgrade:)
11. olvasó jelen :) Csak igy tovabb, tok hasznosak a dolgok amiket leirsz.
VálaszTörlésKöszi a biztatást!!
Törlés