support for a minimal stateless image

git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@7664 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
This commit is contained in:
jjhua 2010-09-27 08:05:51 +00:00
parent 6d1ee4a370
commit dd477ea256
8 changed files with 195 additions and 1 deletions

View File

@ -2,4 +2,4 @@
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/compilers/compilers.otherpkgs.pkglist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/pe/pe.otherpkgs.pkglist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/essl/essl.otherpkgs.pkglist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/loadl/loadl.otherpkgs.pkglist#

View File

@ -0,0 +1,35 @@
#!/bin/sh
# This script should be run as a postinstall script from genimage when
# creating minimal diskless images
# It will remove various rpms from the image that are probably not needed
# for runtime compute nodes
# Review this script carefully in case you need any of these rpms in your
# image
#
#-- $1 = install root (chroot directory for profile)
#-- $2 = OS version
#-- $3 = architecture
#-- $4 = profile name
#-- $5 = work dir (where genimage is located)
#--
#--
installroot=$1
osver=$2
arch=$3
profile=$4
workdir=$5
#uninstall the ibm-java2 and rpms pulled in by it
rpm -e --root $installroot ibm-java2-ppc64-jre.ppc64 libXp.ppc libXp.ppc64
#uninstall the rpms pulled in by LoadL_resmgr
rpm -e --nodeps --root $installroot libX11.ppc libX11.ppc64 libX11-common libXext.ppc libXext.ppc64 libXScrnSaver.ppc64 libXau.ppc libXau.ppc64 libICE.ppc64 libSM.ppc64 libXmu.ppc64 libXt.ppc64 libXtst.ppc64 libXi.ppc64 libxcb.ppc libxcb.ppc64 libstdc++.ppc libstdc++.ppc64
#uninstall the rpms pulled in by vacpp.rte
rpm -e --nodeps --root $installroot gcc.ppc64 gcc-c++.ppc64 cpp.ppc64 glibc-devel.ppc glibc-devel.ppc64 glibc-headers.ppc64 libstdc++-devel.ppc libstdc++-devel.ppc64
#uninstall rpms that should not be on a compute node
#rpm -e --root $installroot libjpeg libtiff fontconfig freetype
#uninstall yast2 rpms
#rpm -e --root $installroot yast2 yast2-bootloader yast2-kdump yast2-packager yast2-storage yast2-branding-SLES yast2-core yast2-hardware-detection yast2-ncurses-pkg yast2-perl-bindings yast2-pkg-bindings yast2-theme-SLE yast2-transfer yast2-xml yast2-ycp-ui-bindings yast2-country-data yast2-libyui yast2-ncurses yast2-storage-lib

View File

@ -0,0 +1,31 @@
./boot*
./usr/share/wallpapers/RHEL6/contents/images*
./usr/include*
./usr/lib/locale*
./usr/lib64/perl5/Encode/CN*
./usr/lib64/perl5/Encode/JP*
./usr/lib64/perl5/Encode/TW*
./usr/lib64/perl5/Encode/KR*
./lib/kbd/keymaps/i386*
./lib/kbd/keymaps/mac*
./lib/kdb/keymaps/include*
./usr/local/include*
./usr/local/share/man*
./usr/share/man*
./usr/share/cracklib*
./usr/share/doc*
./usr/share/doc/packages/cyrus-sasl/doc*
./usr/share/gnome*
./usr/share/i18n*
./usr/share/info*
./usr/share/locale/*
+./usr/share/locale/en_US*
+./usr/share/locale/C*
./usr/share/man*
./usr/share/omf*
./usr/share/vim/site/doc*
./usr/share/vim/vim72/doc*
./usr/share/zoneinfo*
./var/cache/man*
./var/lib/yum*

View File

@ -0,0 +1,28 @@
# OS packages that are useful for all IBM HPC products
#INCLUDE:/opt/xcat/share/xcat/netboot/rh/compute.rhel6.ppc64.pkglist#
xinetd
rsh
rsh-server
compat-libstdc++-33.ppc
compat-libstdc++-33.ppc64
libXmu.ppc64
libXtst.ppc64
libXp.ppc64
libXp.ppc
libXScrnSaver.ppc64
at.ppc64
#gcc
#gcc-c++
libgcc.ppc
libgcc.ppc64
libstdc++.ppc
libstdc++.ppc64
libstdc++-devel.ppc
libstdc++-devel.ppc64
glibc-devel.ppc
glibc-devel.ppc64

View File

@ -0,0 +1,10 @@
# Sample exlude list for building a diskless RHEL6 PPC64 image
#INCLUDE:/opt/xcat/share/xcat/netboot/rh/compute.exlist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/min-IBMhpc.rhel6.ppc64.exlist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/compilers/compilers.exlist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/essl/min-essl.exlist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/gpfs/min-gpfs.exlist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/loadl/min-loadl.exlist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/pe/pe.exlist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/rsct/min-rsct.exlist#

View File

@ -0,0 +1,17 @@
# Sample otherpkgs pkglist for installing all IBM HPC products in a
# RHEL6 PPC64 minimal diskless image
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/compilers/min-compilers.otherpkgs.pkglist#
# NEW_INSTALL_LIST
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/gpfs/min-gpfs.otherpkgs.pkglist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/pe/pe.otherpkgs.pkglist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/essl/essl.otherpkgs.pkglist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/loadl/loadl.otherpkgs.pkglist#
# For full-disk (stateful) images EDIT below to use rsct.otherpkgs
# For diskless
# rpms are installed with postinstall script
#do not INCLUDE:/opt/xcat/share/xcat/IBMhpc/rsct/rsct.otherpkgs.pkglist#

View File

@ -0,0 +1,12 @@
# Sample package list for installing all IBM HPC products in a
# RHEL6 ppc64 minimal diskless image
#not INCLUDE:/opt/xcat/share/xcat/netboot/rh/compute.rhel6.ppc64.pkglist#
#INCLUDE:/opt/xcat/share/xcat/IBMhpc/min-IBMhpc.rhel6.ppc64.pkglist#
#not INCLUDE:/opt/xcat/share/xcat/IBMhpc/compilers/min-compilers.pkglist#
#not INCLUDE:/opt/xcat/share/xcat/IBMhpc/essl/min-essl.pkglist#
#not INCLUDE:/opt/xcat/share/xcat/IBMhpc/pe/min-loadl.pkglist#
#not INCLUDE:/opt/xcat/share/xcat/IBMhpc/pe/min-pe.pkglist#
#not INCLUDE:/opt/xcat/share/xcat/IBMhpc/rsct/rsct.pkglist#

View File

@ -0,0 +1,61 @@
#!/bin/sh
# Sample postinstall script for building a diskless SLES11 PPC64 image
# with all IBM HPC products
#
#-- this script is run after all packages from $profile.pkglist are installed
#--
#-- it gets these arguments:
#--
#-- $1 = install root (chroot directory for profile)
#-- $2 = OS version
#-- $3 = architecture
#-- $4 = profile name
#-- $5 = work dir (where genimage is located)
#--
#--
installroot=$1
osver=$2
arch=$3
profile=$4
workdir=$5
hpc=/opt/xcat/share/xcat/IBMhpc
otherpkgs=/install/post/otherpkgs/$osver/$arch
# Run default postinstall shipped with xcat
/opt/xcat/share/xcat/netboot/rh/compute.rhel6.ppc64.postinstall $1 $2 $3 $4 $5
# Run general IBMhpc postinstall script
$hpc/IBMhpc.rhel.postinstall $1 $2 $3 $4 $5
# Run script to install gpfs updates
installroot=$installroot NODESETSTATE=genimage $hpc/gpfs/gpfs_updates
# Run script to update GPFS mmsdrfs file in the image
installroot=$installroot $hpc/gpfs/gpfs_mmsdrfs
# Run script to accept compiler license
installroot=$installroot NODESETSTATE=genimage $hpc/compilers/compilers_license
# Run script to install PE and accept license
installroot=$installroot pedir=$otherpkgs/pe NODESETSTATE=genimage $hpc/pe/pe_install
# Run script to install ESSL and PESSL rpms
installroot=$installroot essldir=$otherpkgs/essl NODESETSTATE=genimage $hpc/essl/essl_install
# Run script to accept LoadLeveler license, install product rpms,
# and do some config
installroot=$installroot loadldir=$otherpkgs/loadl NODESETSTATE=genimage $hpc/loadl/loadl_install
# Run script to install RSCT rpms
installroot=$installroot rsctdir=$otherpkgs/rsct NODESETSTATE=genimage $hpc/rsct/rsct_install
#clean up
$hpc/min-IBMhpc.rhel6.cleanup $1 $2 $3 $4 $5