2TB minus 512 bytes is the maximum size of a vmdk in the vmfs5, if you create more than 2 tb it wont recognize,
what is your objective?
if the vm wants more than 2 TB just add other vmdk and create dynamic volume... in linux LVM is there. for the datastore the maximum size of a single LUN is 64 tb
regarding the LUN size... its a difficult question... its based on the IO profile or the workload characterization of the virtual machine... that is what is the IOPS consumption... etc lot of factors are there