Disk.SchedulerWithReservation aka mClock

A long time ago when playing around in my lab with vSphere 5.1 I stumbled across this advanced setting called Disk.SchedulerWithReservation. I start digging to see what I could do with it and what it was about… if I could anything with it at all.

The description was kind of vague but it revealed what this disk scheduler was, it mentioned “mClock”. For those who don’t collect academic papers for night time reading like me, mClock is a new disk scheduler which is being researched by VMware and partners. The disk scheduler, in contrary to the current scheduler SFQ, will allow you to do some more advanced stuff.

For instance mClock will allow you to set an IOps reservation on a VM. So in other words, when you have a virtual machine that needs to have 500 IOps guaranteed you will be able to do so with mClock. Now I have been digging and asking around and unfortunately this logic to set reservations has not been implemented in 5.1.

If you are interested in mClock and its benefits I would recommend reading this academic paper by my colleagues Ajay Gulati (One of the leads on: DRS, Storage DRS, SIOC). I find it very interesting and hope it will be fully available sometime soon. And before you ask, no I don’t know when or even if this will ever be available.

How to disable ESXi firewall

For a project I had to disable the ESXi firewall on a host permanently. To be honest, it isn’t something I would do normally or would recommend even. It wasn’t listed in “chkconfig”, which kinda makes sense, so I looked at the networking section of esxcli. What an awesome command by the way! Quickly after “tab’ing” through esxcli I figured out how to disable it permanently:

esxcli network firewall set --enabled false

I figured I would write it down, because this is the stuff I tend to forget easily.

PS: If you ever need anything around esxcli, the vSphere Blog is a good place to check as most of the relevant posts are tagged with “esxcli”.

How does vSphere recognize an NFS Datastore?

This question has popped up various times now, how does vSphere recognize an NFS Datastore? This concept has changed over time and hence the reason many people are confused. I am going to try to clarify this. Do note that this article is based on vSphere 5.0 and up. I had a similar article a while back, but figured writing it in a more explicit way might help answering these questions. (and gives me the option to send people just a link :-))

When an NFS share is mounted a unique identifier is created to ensure that this volume can be correctly identified. Now here comes the part where you need to pay attention, the UUID is created by calculating a hash and this calculation uses the “server name” and the folder name you specify in the “add nfs datastore” workflow.

Add NFS Datastore

This means that if you use “mynfserver.local” on Host A you will need to use to use the exact same on Host B. This also applies to the folder. Even “/vols/vol0/datastore-001″ is not considered to be the same as “/vols/vol0/datastore-001/”. In short, when you mount an NFS datastore make absolutely sure you use the exact same Server and Folder name for all hosts in your cluster!

By the way, there is a nice blogpost by NetApp on this topic.

Fixed: Macbook waking up every hour or so

For the last months I have people asking me why on earth I was on google talk / messenger in the middle of the night, but then did not respond when they said hi. It appears that my Macbook had been waking up roughly every hour while I had put it to sleep.

At first I thought it was the messenger software I was running called Adium. But after closely checking this didn’t seem to be the problem. Then I started digging and checked my log files. My log files did reveal something:

syslog |grep -i "Wake reason"
Jan 12 00:37:59 Depping-MBA kernel[0] <Debug>: Wake reason: RTC (Alarm)

So I did a quick search on “RTC” and stumbled on this article which explained why this was happening. The article refers to an Apple KB, which hints at what to disable. When disabling “Wake for network access” as suggested by the KB I noticed another feature called “Power Nap”. It appears that Power Nap also enables your Mac to do certain things on a regular interval. For instance it can allow for a backup to occur or it will check email every hour.

Prevent Macbook waking up

In my case there is no need to power-on in the middle of the night to do these things, so I disabled both “Wake for network access” and “Power Nap”. There is some more info about “Power Nap” to be found in this KB article.