Video Screencast Help
Symantec to Separate Into Two Focused, Industry-Leading Technology Companies. Learn more.

Can't locate object method "QEMU" Error During Upgrade to 6.0.x

Created: 27 Feb 2013 • Updated: 28 Mar 2013 | 4 comments
yairz's picture
This issue has been solved. See solution.

Hi all,

 

I have a two node VCS cluster running on two KVM Virtual Machines RHEL 5.5.

VCS version is currently 5.1 SP1 RP2 and I'm trying to upgrade it to version 6.0.1.

Right after I run the installer script I get the following error:

 

[root@Hostname rhel5_x86_64]# pwd

/shared_data/VCS/dvd1-redhatlinux/rhel5_x86_64

[root@Hostname rhel5_x86_64]# ./installer

Can't locate object method "QEMU" via package "Padv::RHEL5x8664" at /shared_data/VCS/dvd1-redhatlinux/rhel5_x86_64/scripts/EDR/Padv/Linux.pm line 1061.

[root@Hostname rhel5_x86_64]#

 

Has anyone encountered such an error before?

I've contacted support and so far they have only instructed me to approach RedHat and open a ticket with them.

 

Any help will be much appreciated.

 

Thanks,

Yair

 

 

Operating Systems:

Comments 4 CommentsJump to latest comment

yairz's picture

Additionally, I forgot to mention that this happens on 6.0.2 as well.

 

Thanks,

Yair

Mark Alleyne's picture

Hello Yairz,

 

do you currently have a case open with support?  if so can you let  me know the case number as I would like to look at the explorers from the KVM virtual machines that you are tryng to upgrade VCS on.

I would also like to take a look at the installer logs if you have these.

Can you please send me the output from a dmidecode, please feel feel to email this to me directly  mark_alleyne "at" symantec.com

 

Thanks

 

mark

yairz's picture

Hi Mark,

 

I've just sent you an email to the address you specified.

Thanks,

Yair

Mark Alleyne's picture

 

Hello Yair,
 
Please find below the diff file with the corrections in place to resolve the QEMU package error message you were encountering 
 
package Padv::Linux;
 
sub detect_linux_by_dmidecode_sys {
    my ($padv, $sys) = @_;
 
    my $out = $sys->cmd("_cmd_dmidecode 2>/dev/null");
 
    my ($flag, $bios_vendor, $mfgr, $product) = ("", "", "", "");
    foreach (split(/\n+/, $out)) {
        if (/^\S/) {
            if (/^BIOS Information/) {
                $flag = "bios_info";
            } elsif (/^System Information/) {
                $flag = "system_info";
            } else {
                $flag = "other";
            }
            next;
        }
 
        if ($flag eq "bios_info") {
            $bios_vendor = $1 if (/Vendor:\s*(.*)/i);
        }
        if ($flag eq "system_info") {
            $mfgr = $1 if (/Manufacturer:\s*(.*)/i);
            $product = $1 if (/Product Name:\s*(.*)/i);
        }
    }
 
    $sys->{virtual_type} = $padv->VIRT_VMWARE if ($mfgr =~ /VMWare/i);
    $sys->{virtual_type} = $padv->VIRT_KVM . " or " . $padv->VIRT_QEMU if ($bios_vendor =~ /QEMU/i);
    $sys->{virtual_type} = $padv->VIRT_VIRTUALPC if ($mfgr =~ /microsoft/i && $product =~ /virtual machine/i);
    return;
}
 
1;
 
You can save this file as cpi_60xP1.pl and run the installer as follows:
 
Installsf –require /tmp/cpi_60xP1.pl
 
Regards
 
Mark
 
SOLUTION