PMR 17882, service Antonio
Customer noted that export 2.7 image cannot be imported on 2.8. I verified this.
imgimport mycomputeimage.tgz
Unbundling image...
Error: The 'imagename' field is not defined in manifest.xml.
Error: The 'provmethod' field is not defined in manifest.xml.
Error: The 'profile' field is not defined in manifest.xml.
Error: The 'osvers' field is not defined in manifest.xml.
Error: The 'osarch' field is not defined in manifest.xml.
Error: Importing images with 'provemethod' is not supported. Hint: install, netboot, statelite, or raw
Is this a bug or restriction?
Yang Song,
I think we should support this support this scenario, because i think as more people move from 2.7 to 2.8, this will come up again. If it can be fixed in 2.8.3, that would be great. Otherwise, it should be fixed in 2.8.4.
In the process, please think thru and try some of the other common scenarios an admin would go thru when moving a cluster from 2.7 to 2.8. I know you can still boot a node with a 2.7 image, from a 2.8 mn. But i don't know if you can successfully manipulate a 2.7 image on a 2.8 mn, for example, add rpms to it via genimage, or copy a osimage def etc.
I have put a note at the top of the imgexport/import doc about this restriction. Please change to indicate the level of xCAT when fixed.
https://sourceforge.net/apps/mediawiki/xcat/index.php?title=Making_Images_Portable_in_xCAT
Yang Song,
Has this been looked at and the fix evaluated. I believe we wanted it fixed in 2.8.3 and it is easily to recreate.
The osimage bundle exported by xCAT 2.7 and xCAT 2.8 are different in some aspects. One significant difference is the xml structure of manifest.xml file.
take the osimage rhels6.4-ppc64-install-compute for example, the manifest.xml generated by xCAT 2.7 is:
<xcatimage>
<imagename>rhels6.4-ppc64-install-compute</imagename>
<imagetype>linux</imagetype>
<media>required</media>
<osarch>ppc64</osarch>
<osname>Linux</osname>
<osvers>rhels6.4</osvers>
<otherpkgdir>/install/post/otherpkgs/rhels6.4/ppc64</otherpkgdir>
<pkgdir>/install/rhels6.4/ppc64</pkgdir>
<pkglist>/opt/xcat/share/xcat/install/rh/compute.rhels6.ppc64.pkglist</pkglist>
<profile>compute</profile>
<provmethod>install</provmethod>
<template>/opt/xcat/share/xcat/install/rh/compute.rhels6.ppc64.tmpl</template>
</xcatimage>
and the one generated by xCAT 2.8 is:
<xcatimage>
<linuximage>
<imagename>rhels6.4-ppc64-install-compute</imagename>
<otherpkgdir>/install/post/otherpkgs/rhels6.4/ppc64</otherpkgdir>
<pkgdir>/install/rhels6.4/ppc64</pkgdir>
<pkglist>/opt/xcat/share/xcat/install/rh/compute.rhels6.ppc64.pkglist</pkglist>
<template>/opt/xcat/share/xcat/install/rh/compute.rhels6.ppc64.tmpl</template>
</linuximage>
<media>required</media>
<osimage>
<imagename>rhels6.4-ppc64-install-compute</imagename>
<imagetype>linux</imagetype>
<osarch>ppc64</osarch>
<osdistroname>rhels6.4-ppc64</osdistroname>
<osname>Linux</osname>
<osvers>rhels6.4</osvers>
<profile>compute</profile>
<provmethod>install</provmethod>
</osimage>
</xcatimage>
I can check in the fix to "imgimport" the image bundle "imgexport"ed by xCAT 2.7 on xCAT 2.8 before our 2.8.3 candidate build.
I will go thru the scenario of moving a cluster from 2.7 to 2.8 these days, might leave it as a 2.8.4 work item if failed to finish it before our 2.8.3 candidate build.
fixed in 2.8.3:
commit 72a43790874ec9918c90579544807a1a98ba0f8c
Author: immarvin yangsbj@cn.ibm.comq
Date: Thu Oct 31 01:30:57 2013 -0700
fixed in 2.9:
commit 6f1ff7a92498c26f16b1b73cfc0cfe02ff88cd39
Author: immarvin yangsbj@cn.ibm.comq
Date: Thu Oct 31 01:42:57 2013 -0700
I changed this to pending waiting for the PMR to close. pmr 17822,082,000
Customer says PMR can be closed.