Contributor
Contributor

MSCS - Extending disks

Jump to solution

Hi,

I have a question regarding extending disks on a MSCS cluster.

Hosts are Vmware ESX 4.1 and Vsphere 4.1 installed.

The Guests are running Windows 2003 EE SP2 andare hosting Exchange 2003.

The guests are clustered on the same host.

If you extend the disk on the cluster I suppose you would do something like the following but I would like to have it confirmed:

1: Extend the space on the host, and reboot the host (if required)

2: Power off one guest and keep all resources on the remaining node.

3: Extend the space on the disk via the vshpere client (as you would normally).

4: Follow the MS document for how to extend a clustered disk (http://support.microsoft.com/kb/304736)

Does anybody have any idea whether this is correct or some diferant steps are required?

//Martin

Tags (3)
0 Kudos
1 Solution

Accepted Solutions
Virtuoso
Virtuoso

I haven't worked a lot with cluster in a box so I could be wrong, but the steps you describe above do sound correct.  Someone with more experience with cluster in a box can correct me if I'm wrong.

You're just looking to extend the size of a VMDK, correct?  I see you mentioned a host reboot in your steps. Do you mean guest there or host?  There should be no host reboot required to extend the size of a VMDK file (or a VMFS partition for that matter unless you're physically adding disks to a host).

One last bit which is probably not all that relevant anymore - Exchange 2003 is not supported by Microsoft in a virtual machine on any platform.  I've had clients running in this configuration and get denied support immediately because of it.  I'm not sure how much that matters to you but if it does I would look into moving to Exchange 2010 in the near future.  Beyond supportability you get a ton of really great new features and this type of clustering becomes a thing of the past.

Matt

http://www.thelowercasew.com

Matt | http://www.thelowercasew.com | @mattliebowitz

View solution in original post

0 Kudos
13 Replies
Leadership
Leadership

Welcome to the Community,

first we need to understand your setup.

From what you write, I assume you are running a Cluster-in-a-Box setup with virtual disks (on local storage) for the cluster shared disks!? If so, I further assume it's a test environment!? Is this correct? Please provide some details about your setup.

André

Contributor
Contributor

Hi André,

It is cluster in a box, you are correct. The storage is on a SAN however, the disks are vmdks (all of them). I believe we can consider it to be local disk in that case.

It is NOT a test environment though.

What other information would you like?

0 Kudos
Virtuoso
Virtuoso

I haven't worked a lot with cluster in a box so I could be wrong, but the steps you describe above do sound correct.  Someone with more experience with cluster in a box can correct me if I'm wrong.

You're just looking to extend the size of a VMDK, correct?  I see you mentioned a host reboot in your steps. Do you mean guest there or host?  There should be no host reboot required to extend the size of a VMDK file (or a VMFS partition for that matter unless you're physically adding disks to a host).

One last bit which is probably not all that relevant anymore - Exchange 2003 is not supported by Microsoft in a virtual machine on any platform.  I've had clients running in this configuration and get denied support immediately because of it.  I'm not sure how much that matters to you but if it does I would look into moving to Exchange 2010 in the near future.  Beyond supportability you get a ton of really great new features and this type of clustering becomes a thing of the past.

Matt

http://www.thelowercasew.com

Matt | http://www.thelowercasew.com | @mattliebowitz

View solution in original post

0 Kudos
Contributor
Contributor

Hi Matt,

thanks for the input. I checked something and one thing we noticed is that it seems to need the use of "eagerzeroedthick" so the commandline will be something like this from the ESX box:

vmkfstools -X "newsize" in G -k filename.vmdk in order to zero out the disk.

What I was planning to do was to extend it from vsphere menu. (Sorry I was not clear about this in my initial post).

Anyhow the reboot I was referring to was for the host IF I had to add space on the host for the storage. For the current scenario with extending disk on the vmdk it will not require reboot of course! Smiley Happy

Regarding the Exchange information, thank you very much this is useful for me to know also.

//Martin

0 Kudos
Virtuoso
Virtuoso

Enabling Fault Tolerance on the VM will also convert it to an eagerzerothick disk but if you only have one host that option may not even be available so the command line is better. I am not sure on the effect on the VM while this is happening but if I remember correctly the VM will stay online and operational.

Good luck. I’d try running that command on a test VM first to make sure you’ve got the syntax right.. And as always – take good backups first!

Matt | http://www.thelowercasew.com | @mattliebowitz
Contributor
Contributor

Hi,

ok, I totally agree to try it on a test, so... by chance I found an old esx machine and an exchange cluster.

I tested the setup now, here are the steps. Remember though, this is for cluster in a box. Cluster over diferant nodes may differ.

1: Power down the passive node.
2: Check the space available.
3: Run the following command to check if all 0's are filled out. See link below
    http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=101117...
4: If the disk is then run the following command:
    vmkfstools -X new_disk_sizeGB diskname.vmdk
    This completes in an instant moment. After this if you try to boot you will receive a message
    vmware can not boot the disk because it is not in FT mode.
5:    Run the following command to fill the disk. (Command preserves data).
    vmkfstools -k diskname.vmdk
    Depending on new size of disk this will complete relatively quickly.
6: Boot the active node and check that you now have a disk with extra space. For Windows 2003 at least leave (all) the passive nodes down.

7: Follow Ms KB article mentioned in my initial post to extend the space accordingly. (http://support.microsoft.com/kb/304736)

Thanks to you both for the help on confirmation, hope this also helps some other people Smiley Happy

//Martin

0 Kudos
Virtuoso
Virtuoso

Just so I understand – this requires that you take down the entire cluster before extending the space?

Matt | http://www.thelowercasew.com | @mattliebowitz
0 Kudos
Contributor
Contributor

Hi,

that was what I got out of the first test. Mainly my concern is with changes to the exchange database during the operation. Hence I took down both nodes when I tried this.

But for the sake of curiosity (and since I have a test system :smileygrin:)

Actually it failed at the first hurdle of the commandline with the following error:

Failed to extend disk : Failed to lock the file (16392).

I'm not sure how it would fare with FT enabled in graphical mode though since I don't have that feature on the test environment.

//Martin

0 Kudos
Virtuoso
Virtuoso

Maybe it has something to do with how the VMDKs are configured for the cluster in a box solution, but does it let you extend the disk in the GUI with the VM powered on? You shouldn’t need FT enabled for that. Maybe it would let you extend it in the GUI and then expand the eagerzerothick at the command line?

Matt | http://www.thelowercasew.com | @mattliebowitz
0 Kudos
Contributor
Contributor

Well, tried that too. This gives a "General system error".

So I fear it is cluster down time when this is performed.

//Martin

0 Kudos
Virtuoso
Virtuoso

How big are you trying to make the disk?  Is it possible that you are trying to make the VMDK larger than the maximum size allowed based on the block size of the datastore?  If your datastore is formatted at 1MB block size then the maximum size of a VMDK is 256GB, etc.

Matt

http://www.thelowercasew.com

Matt | http://www.thelowercasew.com | @mattliebowitz
0 Kudos
Contributor
Contributor

Hi,

for sure this is not the problem. I created a 3 GB disk for test and extended it to 4 GB and then tried for 5 GB.

In any case the datastore is around 2TB and I believe around 150 GB is utilied in total

The block size is set to the maximum.

Anyway as a further confirmation the change on the production was successful but carried out with the guests offline while extendeing and eagerly zeroing (which for 80 GB extention took aproximately 20 seconds per %).

//Martin

0 Kudos
Virtuoso
Virtuoso

I'm happy to hear it worked for you and good info to have for the future.

Matt

http://www.thelowercasew.com

Matt | http://www.thelowercasew.com | @mattliebowitz
0 Kudos