Skip links

VMware SRM 6.5 and Nimble SRA PERL Error

Working at a customer recently we encountered a PERL error when installing the Nimble SRA where it would not load into a new VMware Site Recovery Manager (SRM) 6.5 installation.  In addition both the Protected and Recovery Sites had the same error.

SRA Would not Load
SRA Would not Load

PERL Error Displayed

SRA command ‘queryInfo’ failed.
Cause:
Internal error: File::Spec version v48.44.56 required–this is only version v3.630.0 at E:/Program Files/VMware/VMware vCenter Site Recovery Manager/external/perl/perl/lib/File/Temp.pm line 12.
BEGIN failed–compilation aborted at E:/Program Files/VMware/VMware vCenter Site Recovery Manager/external/perl/perl/lib/File/Temp.pm line 12, <DATA> line 584.
Compilation failed in require at E:\Program Files\VMware\VMware vCenter Site Recovery Manager\storage\sra\Nimble Storage\command.pl line 34, <DATA> line 584.
BEGIN failed–compilation aborted at E:\Program Files\VMware\VMware vCenter Site Recovery Manager\storage\sra\Nimble Storage\command.pl line 34, <DATA> line 584.

 

SRM Perl Error
SRM PERL Error

 

Background

Both sites had Nimble-SRA-4.1.0.3 installed. We had previously tried Nimble-SRA-3.4.0.31 with the same result. We tried upgrading the firmware on the Nimble CS1000 Arrays but again this had no impact. To complicate matters the SRA was not yet certified by VMware Compatibility Guide  but was on the Nimble support matrix.

Cause

The problem seemed to be with the vpp.pm file on the SRM servers in 6.5 running into a locale issue.
When the SRM Server guest OS (windows) is installed with locale such as Dutch (Netherlands), the windows config you can see is such that a decimal is seen as a comma and not a full stop.

error:
“v48.44.56”:  translate 48, 44 and 46 to the ASCII representation of “0”, “,” and “8”. That would be”0,8″

The file:  C:/Program Files/VMware/VMware vCenter Site Recovery Manager/external/perl/perl/lib/File/Temp.pm line 12 shows:

——————–
use File::Spec 0.8;
——————–
Installer expects:   “0,8”

Therefore the error is:

” SRA command failed: (dr.storage.fault.CommandFailed) {
–>    faultCause = (dr.fault.InternalError) {
–>       faultCause = (vmodl.MethodFault) null,
–>       faultMessage = <unset>,
–>       reason = “File::Spec version v48.44.56 required–this is only
–> version v3.630.0 at C:/Program Files/VMware/VMware vCenter
Site Recovery Manager/external/perl/perl/lib/File/Temp.pm line 12.”

 

Resolution


Install a new guest OS with English US locale, and continue with fresh SRM install and SRA on top of it.

Another suggested solution that we didn’t test but suspect should work:
From the current SRM server, un-install SRM and SRA, change the locale to English (reboot needed) in the Administrative tab in the Region and Language, reinstall fresh SRM and SRA.

Conclusion


This was an issue as the perl library used is conflicting with the guest OS locale and as a result the SRA was making use of the SRM options.

 

 

Leave a Comment