Why the 2TB Limit in ESX 4.1

So i was asked this question by a collegue of mine.  “Why is there still a 2TB size limit to a LUN in ESX”.   The argument was that in this day and age, and with ESX now running on a 64-bit kernel, why are we still ham-strung by this limitation?  After some consideration and thinking it was thought that maybe VMFS was the issue, but it can’t be because you can create extents and one big VMFS volume.

Well the answer is that ESX (& ESXi) are still using the SCSI-2 Standards. Yes the same SCSI-2 that was from ~1995.  The ultimate issue has to do with the way the standard addresses the “READ_CAPACITY” of the LUN.  It uses a 10-byte call for the capacity, which limits the return to a 32-bit number. (It actually is just under a 32-bit number, the last value of 0xffffffff is acutally reserved, and thus can’t be used.  This limits you to 2199023255040 bytes, which is just under the 2TB limit.

The only current work-around is extents, which are much less then ideal.

So until VMware decides to update their outdated storage methodology, we’re stuck with the 2TB limit.

Lack of Posts

Well i know i was supossed to start writing more, but things have been nuts between rebuilding our lab at work and my home life i haven’t had time.

I’m going to list my upcoming topics so that maybe i actually remember to write them….

iSCSI vs NFS Testing results on ESX 4.1

Discovery of correlation between vCPU count and VMFS write speed

Properly enabling iSCSI and connecting targets in RHEL 5

DataDomain and BOOST

My PrivateCloud Lab

Discovered issues with vCenter as a VM and running dvSwitches