VMWARE

ESX 5.5

zeige alle VMs auf dem Host:
vim-cmd vmsvc/getallvms
Zeige mir ob die Maschine mit ID 109 läuft:
vim-cmd vmsvc/power.getstate 109
Starte die VM mit der ID 109:
vim-cmd vmsvc/power.on 109
Stoppe die VM mit der ID 109 weich:
vim-cmd vmsvc/power.shutdown 109
Stoppe die VM mit der ID 109 hart:
vim-cmd vmsvc/power.off 109
Starte die VM mit der ID 109 neu:
vim-cmd vmsvc/power.reboot 109
Zeige mir alle Netzwerkarten an:
esxcli network nic list
esxcfg-nics -l
Zeige mir Informationen zu einer Netzwerkkarte an:
ethtool vmnic0
ethtool -i vmnic1
esxcli network nic get -n vmnic2
Zeige mir Routinginformationen an:
esxcli network ip route ipv4 list
esxcfg-route
Zeige mir verbundene Ports an:
esxcli network ip connection list
Zeige mir ARPinformationen an:
esxcli network ip neighbor list
Zeige mir Kernelportinformationen an:
esxcli network ip interface list
Zeige mir Failoverinformationen an:
esxcli network vswitch standard  policy failover get -v vSwitch0
Teste die SSL-Verbindung zum ESX-Server:
 openssl s_client -connect meinESXsrv:443
Zeige mir VSWITCH-Informationen an:
esxcfg-vswitch -l
esxcfg-vmnic -l  
Fahre den Host runter
esxcli system shutdown poweroff
Starte den Host neu
esxcli system shutdown reboot
lass eine NIC zur Identifikation 5 Sekunden blinken
ethtool -p vmnic8 5

mögliche Fehler

eine VM lässt sich nach einem ESX-Crash nicht mehr einschalten, da noch viele offene Dateien vorhanden sind:

- migriere die Maschine auf einen anderen Host.

eine VM lässt sich nach einem ESX-Crash nicht mehr einschalten, da noch viele offene Dateien vorhanden sind (Pfad ungültig):

- Migration schlägt fehl
ermittle die world-id und kille die Maschine:

esxcli vm process list | less
MyVM37
   World ID: 123456
:q
esxcli vm process kill --type soft --world-id 123456
# oder esxcli vm process kill --type force --world-id 123456
in einem HA-Cluster lässt sich ein Host nicht mehr erreichen

Durchstarten der Dienste:

/etc/init.d/hostd restart
/etc/init.d/vpxa restart

prüfen ob eine Portgruppe „Management Network“ deaktiviert (disabled) ist:

esxcfg-vmknic -l

eventuell manuell aktivieren mit:

esxcfg-vmnic -e "Management Network"
vergrößere eine IDE-DISK auf 25GB

Snapshot erstellen/Löschen brachte nicht die Lösung
VM runterfahren, dann auf dem ESX-Host:

vmkfstools -X 25G /vmfs/volumes/filerdest0123/MyServer1/MyServer1.vmdk

dann VM per gparted starten und Dateisystem vergrößern. dann VM wieder normal starten.
chdsk läuft an
Neustart
dann neue Hardware wurde erkannt, Neustart erforderlich)

OVA-Datei nach VMDK konvertieren

Download und Installation von ovttool https://my.vmware.com/group/vmware/details?downloadGroup=OVFTOOL350&productId=353

"C:\Program Files (x86)\VMware\Client Integration Plug-in 5.1\ovftool.exe" meineDatei.ova meineDatei.vmk

es werden eine vmdk und eine vmx-datei erstellt, die noch auf den VSPHERE-Host verschoben werden müssen.
Dort die Maschine importieren und starten.

VMWARE-Player

Um einer VM eine feste MAC-Adresse zuzuweisen, muss in der blabla.vmx-Datei folgendes geändert werden:

ethernet[0].generatedAddress -> Eintrag löschen
ethernet[0].addressType -> Eintrag löschen
ethernet[0].generatedAddressOffset -> Eintrag löschen
ethernet[0].address = 00:12:34:ab:cd:ef -> Eintrag erstellen oder entsprechend abändern.

vorher Sicherung der Originaldatei nicht vergessen. Wer sichert ist feige :-)

Optimierung von virtuellen Maschinen

  • nach der Grundinstallation die VM-waretools installieren und Rechner neustarten.
  • den Buslogic oder LSIlogic SCSI-treiber gegen den PVSCSI-Treiber tauschen. (Damit kommt nicht jede Maschine klar). evtl. Paket mpt-status löschen
  • die alte Netzwerkkarte wieder löschen und eine neue mit dem vmxnet3-Treiber anlegen. Dabei ein ev. vorhandens VLAN wieder eintragen.
  • VMCI zwischen VMs aktivieren
  • auf 32-Bitsystemen unter Eigenscahften der Virtuellen Maschine / Optionen die Paravirtualisierung aktivieren.
  • danach Neustart des rechners.
ausgehende Verbindungen von einem ESX-Server zulassen
esxcfg-firewall --allowOutgoing
VMWARE-tools auf Linux automatisiert updaten
vmware-tools-upgrader -p "-d"

oder unter vsphere:

Linuxclients ohne Neustart updatenWindowsclients ohne Neustart updaten
alle virtuellen Maschinen auf einem (entfernten) ESX-Host anzeigen
vmware-cmd -H myEsxHost -U root -P geheimesPw -l
vmware-cmd -s listvms
vmware-vim-cmd vmsvc/getallvms
eine virtuelle Maschine starten
vmware-cmd myVirtSrv start
eine virtuelle Maschine hard stoppen
vmware-cmd myVirtSrv stop hard
VMX-Datei einer virtuellen Maschine ermitteln
vmware-cmd myVirtSrv getconfigfile
ist die virtuelle Maschine an?
vmware-cmd myVirtSrv getstate
Hat die virtuelle Maschine VMWARE-Tools installiert?
vmware-cmd myVirtSrv gettoolslastactive
Anzeigename der virt. Maschine
vmware-cmd myVirtSrv getconfig display
Zeige die IP der virt. Maschine an
vmware-cmd myVirtSrv getguestinfo ip
VMWARE-Tools vom Host aus updaten

erst die VMID der virtuellen Maschine ermitteln:

vmware-vim-cmd vmsvc/getallvms

dann diesem Kommando mitübergeben:

vmware-vim-cmd vmsvc/tools.upgrade <vmid>  
zeige mir die vmid und den Namen der virtuellen Maschine an:
vim-cmd vmsvc/getallvms |awk '{if ($1 >0) print $1":"$2}' | grep '^[0-9]\{2,3\}':  

angepasste .bashrc

danach kann man auf seinem ESX ein paar Sachen einfacher anzeigen.

zeige die virt.Maschinen + VIDsgetvms
zeige die virt.Maschinen + IP-Adressengetvmsip
zeige die virt.Maschinengetvmsnames
zeige die VIDsgetvmsvid
zeige die VMX-Dateipfadegetvmsvmx
.bashrc
# .bashrc
 
# Source global definitions
if [ -f /etc/bashrc ]; then
	. /etc/bashrc
fi
 
# User specific aliases and functions
function getvmsf ()
{
vim-cmd vmsvc/getallvms \
	|awk '{if ($1 >0) print $1":"$2}'\
	|grep '^[0-9]\{2,3\}':
}
alias getvms='getvmsf'
 
# Get all VMS-Names
function getvmsnf ()
{
getvms | awk -F ":" '{ print $2 }'
}
alias getvmsnames='getvmsnf'
# Get all VIDs
function getvmsvidf ()
{
getvms | awk -F ":" '{ print $1 }'
}
alias getvmsvid='getvmsvidf'
 
# Get all VMX-Files
alias getvmsvmx='vmware-cmd -l'
 
# Get all IP-Addresses if machines on
function getvmsipf ()
{
for i in `getvmsvmx` 
	do 
	mydisp=`echo $i | awk -F/ '{ print $5 }'`
	myip=`vmware-cmd $i getguestinfo ip | awk -F= '{ print $2 }'`
	echo $mydisp  $myip
done
}
alias getvmsip='getvmsipf'


Fehler
Fehler:Vmwaretools lassen sich in suse 11.4 nicht kompilieren.
Lösung: in Datei /etc/sysconfig/kernel den Eintrag am Ende einfügen: INITRD_MODULES=„“

Fehler:neue virtuelle Festplatten werden nicht erkannt.
Lösung: echo „- - -“ > /sys/class/scsi_host/host0/scan
oder bei Plattenvergrößerung: echo 1 > /sys/class/scsi_device/0\:0\:5\:0/device/rescan
eventuell: partprobe /dev/sdf
danach testen mit fdisk -l oder lsblk
Fehler:<ALT GR>-Taste wird nicht erkannt. Dadurch lässt sich kein @ und | - Zeichen eingeben.
Lösung:

  1. rechte <Ctrl> runter
  2. <Alt Gr> runter
  3. das @ angeben
  4. rechte <Ctrl> hoch, <Alt Gr> bleibt unten!
  5. nochmal das @ angeben

oder
<ALT GR>-Taste einschalten in ESX-Serverdatei /etc/vmware/config:

xkeymap.usekeycodeMap = "TRUE"

Fehler: Cut and Paste geht nicht.
Lösung:Cut and Paste einschalten in ESX-Serverdatei /etc/vmware/config:

isolation.tools.copy.disable="FALSE"
isolation.tools.paste.disable="FALSE"

erst nach Neustart der VMs aktiviert.
zurück

http://www.hendrik-woltersdorf.de/linux/vmware/index.html