Hello, we have a rather simple VMWARE setup consisting of two ESX servers where we are running quite a few disk space demanding database servers that are allocated on six different data stores.
Occasionally we encounter the problem that one data store gets full and corresponding virtual machines refuse to start up due to lack of disk space so we need to reallocate other machines to other data stores in order to reclaim space. That is quite time consuming introducing downtime since Storage VMotion cannot be used as we heavily rely upon snapshots but since this problem cannot be too uncommon I wonder if there are some recommended proactive procedures to deal with this?
One spontaneous thought is to create a cronjob script at the ESX-servers and send an email whenever the remaining disk space on a data store falls below a certain threshold but perhaps there are better ways?
Ivo Beerens has written a powershell script which you can schedule to run and it will email you with data from your ESX environment. One useful feature is that it show you the available space on your datastores.
You will need to run it on a machine with the VMWare Powershell toolkit installed.
John
With vSphere there are a lot of new alarms.
In VI3 you have to use scripting or 3th part software.
Andre
That script was very good with regard to the datastore capacity reporting but I suppose the optimal script for this purpose would be if it could trigger an email report whenever the remaining storage falls below a certain threshold so is such a script already available? If worse comes to worst I suppose it would not be very hard to modify the existing script although my scripting skills are very limited to say the least.
As a matter of fact it was a piece of cake to modify the script for email alerting at threshold level so it is solved now.
Use the CIM providers on the ESX and monitor this with your normal server monitoring tools?
Alternatively, any SNMP tool can do the jon - again you'll just need the relevant MIBs,
Also, if you can map the daqtatstoresusing an MS client, a simple daily VBscript
Or any of many powershell scripts will allow you to check this