This post is more than 5 years old

60917

August 25th, 2014 14:00

MD3000 cannot change virtual disk ownership / preffered path - ERROR 29

Current setup

Powervault MD3000 (Removed by moderator) - attached to two PowerEdge R610 servers using Dell SAS 5/e Adapter card in each r610. The R610s are each acting as an ESX host running VMWare ESXi 5.5.0

We created multiple LUNs on the storage array and noticed that all traffice was going through one RAID controller module or the other (and it would appear to change without prompting when looking at storage array). I powered down a two different virtual machines to try to change the path and got an error after some delay - I've pasted this error below. I also tried to redistribute the virual disks under the support tab of the MDSM software to no avail.

In doing some reading, it would appear that the LUNs should have been allocated to a particular raid controller before any I/0, but, I still feel like we are missing something as to why we cannot distribute traffic appropriately. 

According to some documentation for a MD3200 - 

"If the host has a single data-path to the MD storage array, the virtual disk
must be owned by the controller to which the host is connected"
This is what we are attempting to accomplish. I'm not sure if the hosts need to be physically detached from the SAN or if there is a software bit we are missing.
Thank you in advance! If I failed to provide any detail, please let me know and I will attempt to gather the information.
Here is the error output:

OPERATING ENVIRONMENT DATA

Client system name: FLMGMT01
Client OS: Windows Server 2008 R2

Application version: 03.35.G6.88
Storage array management version: 03.35.G6.88
Storage array name: VAB-NAS-01
Firmware version: 07.35.39.64
Management class: devmgr.v1035api01.Manager

**************************************************

ERROR DATA

Command sent to RAID controller module in slot: 0
Host name: 192.168.19.233
IP address: 192.168.19.233

Return code: Error 29 - This operation cannot complete because there was a security authentication failure on a parameter in the command sent to the RAID controller module.

Please retry the operation. If this message persists, contact your Technical Support Representative.
Operation when error occurred: PROC_assignVolumeOwnership
Timestamp: Aug 25, 2014 4:18:59 PM

STACK DATA

devmgr.v1035api01.sam.jal.ManagementOperationFailedException:
at devmgr.v1035api01.sam.jal.SYMbolClient.dispatchOperation(Unknown Source)
at devmgr.v1035api01.sam.jal.StorageArrayFacade.issueCommand(Unknown Source)
at devmgr.v1035api01.sam.jal.StorageArrayFacade.sendCommandCommon(Unknown Source)
at devmgr.v1035api01.sam.jal.StorageArrayFacade.sendCommand(Unknown Source)
at devmgr.v1035api01.sam.jal.StorageArrayFacade.assignVolumeOwnership(Unknown Source)
at devmgr.v1035api01.sam.configuration.controller.ChangeControllerOwnershipDialogPanel.performCommitAction(Unknown Source)
at devmgr.v1035api01.shared.wizard.DialogPanel$NotifyBackgroundTaskAdapter.performOp(Unknown Source)
at devmgr.v1035api01.shared.AbstractTaskAdapter.run(Unknown Source)


THREAD DATA

Thread[Reference Handler,10,system]
Thread[Finalizer,8,system]
Thread[Signal Dispatcher,9,system]
Thread[Attach Listener,5,system]
Thread[Java2D Disposer,10,system]
Thread[TimerQueue,5,system]
Thread[Swing-Shell,6,system]
Thread[AWT-Shutdown,5,main]
Thread[AWT-Windows,6,main]
Thread[EventQueueMonitor-ComponentEvtDispatch,5,main]
Thread[Thread-3,5,main]
Thread[AWT-EventQueue-0,6,main]
Thread[DestroyJavaVM,5,main]
Thread[SwingWorker-pool-2-thread-1,5,main]
Thread[ChangeDetector,6,main]
Thread[PreferenceStoreChangeDetector,6,main]
Thread[LogMsgThread,6,main]
Thread[Np_Link_Monitor0,6,main]
Thread[DMVGarbageCollectorThread,6,main]
Thread[RecoveryProfile-27,6,main]
Thread[AEN-28,6,main]
Thread[RecoveryProfile-30,6,main]
Thread[AEN-31,6,main]
Thread[Timer-0,6,main]
Thread[RecoveryProfile-35,6,main]
Thread[AEN-36,6,main]
Thread[RecoveryProfile-38,6,main]
Thread[AEN-39,6,main]
Thread[Timer-1,6,main]
Thread[Timer-2,6,main]
Thread[Timer-3,6,main]
Thread[RecoveryProfile-48,6,main]
Thread[AEN-49,6,main]
Thread[Timer-4,6,main]
Thread[RecoveryProfile-53,6,main]
Thread[AEN-54,6,main]
Thread[Timer-5,6,main]
Thread[SwingWorker-pool-2-thread-2,5,main]
Thread[RecoveryProfile-69,6,main]
Thread[AEN-70,6,main]
Thread[Timer-14,6,main]
Thread[Timer-91,6,main]
Thread[Image Animator 2,3,main]

Moderator

 • 

7.7K Posts

August 27th, 2014 11:00

Hello MrRedPants,

Since you are using non-redundant setup you will have issues trying to change paths between controllers since both hosts only have a single connection to the MD3000.  What you could do if available is to get 2 more SAS cables & cable the second ports on the MD to the opposite raid controller than the host is connected to currently.  

Now if that is not an option then what you can do is to have 2 disk groups and assign the virtual disks/ Luns that are connected to each host into their own disk group.  If you are going to make each host their own disks groups then you will need to stop the I/O while you are moving the virtual disk to the new disk group so that you want have any data loss.  

Please let us know if you have any other questions.

Moderator

 • 

7.7K Posts

August 26th, 2014 10:00

Hello MrRedPants,

In most cases when you get that error it means that the host doesn’t have access to both controllers so that you can change the owner of the virtual disk between both controllers. What I would so is check & confirm that both servers have access to both controllers, as if they don’t have access to both then that is why you are getting your error. Here is a link as well to the deployment guide for the MD3000 & if you look on page 13-15 it shows you how you would want to have your system cabled for both non redundant & redundant cabling. ftp://ftp.dell.com/Manuals/all-products/esuprt_ser_stor_net/esuprt_powervault/powervault-md3000_User%27s%20Guide9_en-us.pdf

If your cabling is setup as redundant & it is still not allowing you to redistribute the virtual disk between the 2 controllers then we will need to look into your MD3000 & see why it is not allowing you to redistribute the disks.

Please let us know if you have any other questions.

August 26th, 2014 14:00

Sam

Thank you for responding! I actually read that document last night.

The setup is non-redundant.

ESX Host 1 direct connects via SAS 5e card to RAID Slot 0 on MD3000

ESX Host 2 direct connects via it's own SAS5e card to RAID Slot 1 on MD3000

When looking at vCenter, both hosts can see all of the LUNs. When we initially set it up, we added all the LUNs as datastores on vCenter and it automatically populated to the other host.

That said, on the MD3000, we have only one disk group with all the LUNs within that group. When I look at the disk group tab in the storage array profile in MDSM, I see DISK_GRP_1 which is owned by one of the RAID controller modules (in this case, by slot 1).

Today, I moved all the virtual machines to a single host that is ironically physically attached to slot 0 on the back of the MD3000 (the RAID controller interface on the left when facing the back of the machine) and things are running much more smoothly now.

So, it's all confusing.

- Can the raid controllers be assigned to a specific LUN or is it only to a disk group?

- Should we just create separate groups attached to each RAID controller and go to their respective ESX host?

I hope I explained that clearly and again, I very much appreciate any information you provide.

August 27th, 2014 12:00

Option one was my plan, however the MD3000 only has a single input on each RAID controller.

My tentative solution for the time being is I have only one host attached with both of it's SAS/5e connectors going to both RAID controller inputs. Figure 2-5. Cabling a Single Host (Single-HBA) Using Redundant Data Paths

My future solution is I'm going to see if I can acquire replacement RAID controllers with two inputs and create a redundant array that way. Similar to figure 2-10 in the manual: Cabling Two Hosts (with Single HBAs) Using Redundant Data Paths. I believe this is what your are suggesting in your first paragraph.

I also have additional SAS/5e cards and could put dual HBAs in the hosts. Not sure if that gains a lot or not.  Similar to Figure 2-9. Cabling Two Hosts (with Dual HBAs) Using Redundant Data Paths. It seems adding a second HBA is just another safety measure in case the alternate card fails.

You're final opinion on that would be great! I'm not sure I understand 2-10 and 2-11 regarding two node clusters.

Moderator

 • 

7.7K Posts

August 27th, 2014 14:00

Hello MrRedPants,

At the minimum it is best to have some redundancy so that if you were to have a controller fail that you can still have access to all your data via the second controller.  Now with that being said if you were going to keep your setup with your 2 hosts then you would want to use the cabling option 2-10.  Both figures 2-10 & 2-11 are the same with the only difference that you have a cluster service in the middle.

Please let us know if you have any other questions.

Top