Skip to main content

Add an RDM, get an error! (EqualLogic)

Google fodder.

I was able to reproduce as follows:

  1. Take a VM that's already working, shut it down (in my case, 2012 R2).
  2. Add an RDM disk (using a new controller or not, both gave the error)
  3. Try to power up the VM.

You will get an error: 38 (Function not implemented)  Goes on to talk about 'cannot open virtual disk or one of the snapshot disks it depends on' - even though no snapshots.

Thankfully, even though the Google hits were few, I figured it out.  The issue?

This is for moving our physical Veeam backup server into a VM.  For the B2D target I wanted to use an RDM that is on a different SAN than the VMs.  When I created the volume in the EqualLogic group manager I had the option of 512-byte sectors, or 4k sectors.  Figured, hey, 2012R2 can deal with 4k!

Maybe it can, but ESXi 5.5.0 (update 2b?) sure didn't.

I nuked the volume, recreated it with 512-byte sectors and it works no problem.


FWIW, the array is running the latest firmware (at time of writing, something like 7.1.2).

Error stack

** NO DESCRIPTION FOR: Drm.ExecuteVmPowerOnLRO:38 (Function not implemented)

See the error stack for details on the cause of this problem.
Time: 1/21/2015 1:47:01 PM
Target: SERVERNAME
vCenter Server: vcenterServer
Error Stack
An error was received from the ESX host while powering on VM SERVERNAME.
Failed to start the virtual machine.
Module DiskEarly power on failed.
Cannot open the disk '/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME_1.vmdk' or one of the snapshot disks it depends on.
38 (Function not implemented)

Log log log...


2015-01-21T18:30:37.529Z| Worker#0| I120: DISK: OPEN scsi0:0 '/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME.vmdk' persistent R[]
2015-01-21T18:30:37.529Z| Worker#1| A115: ConfigDB: Setting scsi0:1.redo = ""
2015-01-21T18:30:37.529Z| Worker#1| I120: DISK: OPEN scsi0:1 '/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME_1.vmdk' independent-persistent R[]
2015-01-21T18:30:37.534Z| Worker#0| I120: DISKLIB-VMFS  : "/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME-flat.vmdk" : open successful (10) size = 53687091200, hd = 6817958. Type 3
2015-01-21T18:30:37.534Z| Worker#0| I120: DISKLIB-DSCPTR: Opened [0]: "SERVERNAME-flat.vmdk" (0xa)
2015-01-21T18:30:37.534Z| Worker#0| I120: DISKLIB-LINK  : Opened '/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME.vmdk' (0xa): vmfs, 104857600 sectors / 50 GB.
2015-01-21T18:30:37.534Z| Worker#0| I120: DISKLIB-LIB   : Opened "/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME.vmdk" (flags 0xa, type vmfs).
2015-01-21T18:30:37.534Z| Worker#1| I120: FileIOErrno2Result: Unexpected errno=38, Function not implemented
2015-01-21T18:30:37.534Z| Worker#1| I120: AIOGNRC: Failed to open '/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME_1-rdmp.vmdk' : Function not implemented (260002) (0x2013).
2015-01-21T18:30:37.534Z| Worker#1| I120: OBJLIB-FILEBE : FileBEOpen: can't open '/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME_1-rdmp.vmdk' : Function not implemented (2490372).
2015-01-21T18:30:37.534Z| Worker#1| I120: DISKLIB-VMFS  : "/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME_1-rdmp.vmdk" : failed to open (Function not implemented): ObjLib_Open failed. Type 10
2015-01-21T18:30:37.534Z| Worker#0| I120: DISK: Disk '/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME.vmdk' has UUID '60 00 c2 9d 28 91 73 6a-21 aa 6e fe 71 a8 ac f1'
2015-01-21T18:30:37.534Z| Worker#0| I120: DISK: OPEN '/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME.vmdk' Geo (6527/255/63) BIOS Geo (0/0/0)
2015-01-21T18:30:37.535Z| Worker#1| I120: DISKLIB-LINK  : "/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME_1.vmdk" : failed to open (Function not implemented).
2015-01-21T18:30:37.535Z| Worker#1| I120: DISKLIB-CHAIN : "/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME_1.vmdk" : failed to open (Function not implemented).
2015-01-21T18:30:37.535Z| Worker#1| I120: DISKLIB-LIB   : Failed to open '/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME_1.vmdk' with flags 0xa Function not implemented (2490377).
2015-01-21T18:30:37.535Z| Worker#1| I120: DISK: Cannot open disk "/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME_1.vmdk": Function not implemented (2490377).
2015-01-21T18:30:37.540Z| vmx| I120: DISK: Opening disks took 13 ms.
2015-01-21T18:30:37.540Z| vmx| I120: Module DiskEarly power on failed.
2015-01-21T18:30:37.540Z| vmx| I120: VMX_PowerOn: ModuleTable_PowerOn = 0
2015-01-21T18:30:37.540Z| vmx| I120: scsi0:0: numIOs = 0 numMergedIOs = 0 numSplitIOs = 0 ( 0.0%)
2015-01-21T18:30:37.540Z| vmx| I120: Closing disk scsi0:0
2015-01-21T18:30:37.541Z| vmx| I120: DISKLIB-VMFS  : "/vmfs/volumes/5183d31c-fbe60db1-4ba4-00237d5eba3c/SERVERNAME/SERVERNAME-flat.vmdk" : closed.

Comments

  1. Cheers. Just had the same issue. Saved me a lot of time.

    ReplyDelete
  2. Absolutely the same issue provisioning a load of new RDMs to Veeam VMs. Wish I had found this article yesterday!

    ReplyDelete

Post a Comment

Popular posts from this blog

DFSR - eventid 4312 - replication just won't work

This warning isn't documented that well on the googles, so here's some google fodder:


You are trying to set up replication for a DFS folder (no existing replication)Source server is 2008R2, 'branch office' server is 2012R2 (I'm moving all our infra to 2012R2)You have no issues getting replication configuredYou see the DFSR folders get created on the other end, but nothing stagesFinally you get EventID 4312:
The DFS Replication service failed to get folder information when walking the file system on a journal wrap or loss recovery due to repeated sharing violations encountered on a folder. The service cannot replicate the folder and files in that folder until the sharing violation is resolved.  Additional Information:  Folder: F:\Users$\user.name\Desktop\Random Folder Name\  Replicated Folder Root: F:\Users$  File ID: {00000000-0000-0000-0000-000000000000}-v0  Replicated Folder Name: Users  Replicated Folder ID: 33F0449D-5E67-4DA1-99AC-681B5BACC7E5  Replication Group…

Fixing duplicate SPNs (service principal name)

This is a pretty handy thing to know:

SPNs are used when a specific service/daemon uses Kerberos to authenticate against AD. They map a specific service, port, and object together with this convention: class/host:port/name

If you use a computer object to auth (such as local service):
MSSQLSVC/tor-sql-01.domain.local:1433

If you use a user object to auth (such as a service account, or admin account):
MSSQLSVC/username:1433

Why do we care about duplicate SPNs? If you have two entries trying to auth using the same Kerberos ticket (I think that's right...), they will conflict, and cause errors and service failures.

To check for duplicate SPNs:
The command "setspn.exe -X

C:\Windows\system32>setspn -X
Processing entry 7
MSSQLSvc/server1.company.local:1433 is registered on these accounts:
CN=SERVER1,OU=servers,OU=resources,DC=company,DC=local
CN=SQL Admin,OU=service accounts,OU=resources,DC=company,DC=local

found 1 groups of duplicate SPNs. (truncated/sanitized)

Note that y…

Logstash to Nagios - alerting based on Windows Event ID

This took way longer than it should have to get going...so here's a config and brain dump...

Why?
You want to have a central place to analyze Windows Event/IIS/local application logs, alert off specific events, alert off specific situations.  You don't have the budget for a boxed solution.  You want pretty graphs.  You don't particularly care about individual server states.  (see rationale below - although you certainly have all the tools here to care, I haven't provided that configuration)

How?
ELK stack, OMD, NXlog agent, and Rsyslog.  The premise here is as follows:

Event generated on server into EventLogNXlog ships to Logstash inputLogstash filter adds fields and tags to specified eventsLogstash output sends to a passive Nagios service via the Nagios NSCA outputThe passive service on Nagios (Check_MK c/o OMD) does its thing w. alerting
OMD
Open Monitoring Distribution, but the real point here is Check_MK (IIRC Icinga uses this...).  It makes Nagios easy to use and main…