Die Foren-SW läuft ohne erkennbare Probleme. Sollte doch etwas nicht funktionieren, bitte gerne hier jederzeit melden und wir kümmern uns zeitnah darum. Danke!

Esxi5.5 Ram auslastung auslesen

Moderatoren: Dayworker, irix

Member
Beiträge: 7
Registriert: 22.01.2015, 20:16

Esxi5.5 Ram auslastung auslesen

Beitragvon dzove » 22.01.2015, 20:38

Guten Morgen,

Ich wollte fragen in welcher Datei oder mit welchem Befehl ich die Ram Auslastung im Terminal anzeigen lassen kann.

grus,
Vehbo

King of the Hill
Beiträge: 13074
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Beitragvon irix » 22.01.2015, 20:54

Gib mal esxtop und dann 'm' ein.

Gruss
Joerg

Member
Beiträge: 7
Registriert: 22.01.2015, 20:16

Beitragvon dzove » 23.01.2015, 09:53

Danke für die Antwort,
Dies hat mich einen Stück weiter gebracht, jetzt brauch ich nur noch für mein Skript, dass er automatisch das "m" eingibt damit ich den Wert bei "free" bekomme.

Folgendes hat nicht geklapt:
echo -i "m" | esxtop

Ich habe die Lösung nicht gefunden esxtop sofort mit der Option m zu starten.

Experte
Beiträge: 1850
Registriert: 04.10.2011, 14:06

Beitragvon JustMe » 23.01.2015, 10:06

Schau Dir doch mal

Code: Alles auswählen

esxtop --help
an, und darin die Hinweise zur Konfigurationsdatei (Default: .esxtop50rc)

Member
Beiträge: 7
Registriert: 22.01.2015, 20:16

Beitragvon dzove » 23.01.2015, 10:07

Danke, werde mir die Datei mal ansehen, melde mich dann wenn alles geklappt hat oder ich noch Hilfe brauch.

King of the Hill
Beiträge: 13074
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Beitragvon irix » 23.01.2015, 10:10

Ich frage erstmal anders... "Was soll denn eigentlich bezweckt werden und was soll hinten heraus kommen?"

Das esxtop war eine richtige Antwort auf deine Frage aber ich glaube das diese einfach Falsch war.

Gruss
Joerg

Member
Beiträge: 7
Registriert: 22.01.2015, 20:16

Beitragvon dzove » 23.01.2015, 12:15

Also ich brauche den Wert von free, da ich ein Script erstellen muss, der mir bei einem Wert unter 500 mb freien Speicher eine Logfile schreibt.

Nun ich habe es jetzt hingekriegt,dass beim eingeben von esxtop sofort die Option m funktioniert. Nun kann ich nicht die Werte in einer *.txt Datei speicher oder mit grep filtern da er mir was komisches ausgibt und zwar, die ganze Zeite solche sachen. Aber esxtop gibt mir das richtige aus, jedoch kann ich damit nicht arbeiten.


Code: Alles auswählen

0)\%P-State P6","\\localhost.fritz.box\PCPU Power State(PCPU 0)\%P-State P7","\\localhost.fritz.box\PCPU Power State(PCPU 0)\%P-State P8","\\localhost.fritz.box\PCPU Power State(PCPU 0)\%P-State P9","\\localhost.fritz.box\PCPU Power State(PCPU 0)\%P-State P10","\\localhost.fritz.box\PCPU Power State(PCPU 0)\%P-State P11","\\localhost.fritz.box\PCPU Power State(PCPU 0)\%P-State P12","\\localhost.fritz.box\PCPU Power State(PCPU 0)\%P-State P13","\\localhost.fritz.box\PCPU Power State(PCPU 0)\%P-State P14","\\localhost.fritz.box\PCPU Power State(PCPU 0)\%P-State P15","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%C-State C0","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%C-State C1","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%C-State C2","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%C-State C3","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P0","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P1","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P2","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P3","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P4","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P5","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P6","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P7","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P8","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P9","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P10","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P11","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P12","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P13","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P14","\\localhost.fritz.box\PCPU Power State(PCPU 1)\%P-State P15","\\localhost.fritz.box\PCPU Power State(PCPU 2)\%C-State C0","\\localhost.fritz.box\PCPU Power S


Dies hier word in der Datei gespeicher, falls ich es mittels esxtop in na datei speichere.

King of the Hill
Beiträge: 13074
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Beitragvon irix » 23.01.2015, 12:31

Der ESXi kann per API in der Scriptsprache deiner Wahl abgefragt werden. Die API ist nur sehr eingeschraenkt was die Verwendung mit dem kostenlosen vSphere Hypervisor angeht. Sprich du must das mal ausprobieren.

Code: Alles auswählen

PowerCLI C:\> Get-vmhost

Name            ConnectionState PowerState      Id CpuUsage CpuTotal  Memory  Memory
                                                        Mhz      Mhz UsageMB TotalMB
----            --------------- ----------      -- -------- -------- ------- -------
esx-node-99     Connected       PoweredOn  ...host     9659    27588   92779  131026


Gruss
Joerg

Experte
Beiträge: 1850
Registriert: 04.10.2011, 14:06

Beitragvon JustMe » 23.01.2015, 14:07

Wenn's unbedingt in einem Skript auf der ESXi-Shell sein muss, und "buchstabengetreu" zum ersten Posting sein soll, kann man die Speicherauslastung auch z.B. so abfragen (ok,ok, viele Wege ...):

Code: Alles auswählen

~ # vim-cmd hostsvc/hostsummary | grep -i memory
      memorySize = 68683862016,
      overallMemoryUsage = 24910,


Um herauszubekommen, wieviel "frei" ist, muss man die beiden Parameter nach Normierung halt passend voneinander abziehen.

Es gilt aber zu bedenken, dass die Memory Usage durchaus dynamisch sein kann. Und den Host damit zu beschaeftigen, dauernd abzufragen, wie viel noch frei ist, halte ich persoenlich fuer fragwuerdig. Aber nur mal so als Machbarkeitsstudie oder Beschaeftigungstherapie...

Zum esxtop:
Der ist nicht dafuer gedacht, seine (Bildschirm-)Ausgaben in Capturedateien zu schreiben; deswegen findet man in einer solchen Datei nicht die "Titelzeilen", sondern muesste sich die Werte aus den gefangenen Daten zusammensetzen.

/edit:
Oder noch 'ne Variante, wenn diese Ausgabe eher dem Geweunschten entsprechend ausfallen sollte:

Code: Alles auswählen

~ # vsish -e get /memory/comprehensive
Comprehensive {
   Physical memory estimate:100611212 KB
   Given to VMKernel:100611212 KB
   Discarded by VMKernel:0 KB
   Mmap critical space:131080 KB
   Mmap buddy overhead:24612 KB
   Kernel code region:14336 KB
   Kernel data and heap:10240 KB
   Other kernel:1534776 KB
   Non-kernel:30958836 KB
   Reserved memory at low addresses:393216 KB
   Free:67937332 KB
}

Quellenbeispiel

Member
Beiträge: 7
Registriert: 22.01.2015, 20:16

Beitragvon dzove » 23.01.2015, 20:58

Danke für die Antworten.

Diese Zeile sieht interessant aus:

Code: Alles auswählen

vsish -e get /memory/comprehensive


LG,
Vehbo

Member
Beiträge: 7
Registriert: 22.01.2015, 20:16

Beitragvon dzove » 24.01.2015, 15:36

Danke euch vielmals,
Das script ist jetzt endlich fertig :D

King of the Hill
Beiträge: 13074
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Beitragvon irix » 24.01.2015, 15:45

Na dann mal her mit dem guten Stueck! Keine falsche Bescheidenheit 8)

Gruss
Joerg

Member
Beiträge: 7
Registriert: 22.01.2015, 20:16

Beitragvon dzove » 24.01.2015, 16:12

Es sieht so aus, leider hatte ich keine Zeit es zu testen aber es musste funktionieren. Dieser Script wird immer gestartet wenn der Back gestartet wird. Da der Server oft einfriert wàhrend der Back làuft, da habe ich mir gedacht einen Script zu schreiben der Nachschaut ob es eine Ram Auslastung gibt.

Hàtte keine von euch mir eine gute Antwort gegebn, dann wèrde ich wahrscheinlech mit python auf den Ram Treiber zugreifen und mir die Werte selber geben die ich brauche aber das wàre zu schwer :D

Code: Alles auswählen

#!/bin/sh

### Script created by Dzogovic Vehbo, control the free place of Ram on Esxi Server ###

### Variablen ###
freeram = /tmp/freeram.sh.$$
freeram2 = /tmp/freeram2.sh.$$

### Command to look the freeram Information ###
vim-cmd hostsvc/hostsummary | grep -i memory  >> $freeram

### Filtering to have just the number ###
tr -d 'Free: KB' < $freeram >> $freeram2

### Function if for write the log file ###
free=$(<$freeram2)

if [ $free < 600000 ]
   then
      echo "Alert the system is overload : free Ram - $free " >> /tmp/alert.log.`date +%Y%m%d`
      scp /tmp/alert.log.`date +%Y%m%d` uadmin@192.168.25.13:/home/uadmin/logfile-esxi
   else
      echo "OK"
fi

rm /tmp/alert.log
rm /tmp/freeram*

exit 0


Zurück zu „vSphere 5.5 / ESXi 5.5“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste