The blades need to be configured to attempt to boot from the network before booting from the hard drive.
On the VCL management node:
wget |
---|
...
-N |
---|
...
-P |
---|
...
/etc/yum.repos.d |
---|
...
...
-N |
---|
...
-P |
---|
...
/etc/yum.repos.d |
---|
...
yum |
---|
...
clean |
---|
...
all yum |
---|
...
install |
---|
...
-y |
---|
...
xCAT |
---|
chtab key=master site.value=<management node private IP address>Set the "master" and "nameservers" keys in the site table to point to the xCAT management node's private IP address:
chtab key= |
---|
...
master site.value= |
---|
...
x.x.x.x chtab key= |
---|
...
nameservers site.value=x.x.x.x |
---|
Set the "forwarders" key in the site table to point to a DNS server:<DNS server address>
chtab key= |
---|
...
forwarders site.value=y.y.y.y |
---|
Set the "dhcpinterfaces" key in the site table to the xCAT management node's private network interface. This causes the DHCP server running on the management node to only listen on this interface:<management node private NIC>
chtab key= |
---|
...
dhcpinterfaces site.value= |
---|
...
ethX |
---|
Disable all networks detected by xCAT except the private network so that xCAT does not attempt to add unwanted information to DHCP or other services. First, dump the contents of the networks table to determine the network names created by xCAT:
tabdump networks |
---|
For each network except the private network, run the following command to set the network to disabled:
chtab netname= |
---|
...
<netname> networks.disable=1 |
---|
...
Set the nodehm table to use blade control methods:
chtab node=blade nodehm.mgt=blade |
---|
Set the noderes table to use the xnba network boot method:
chtab node=blade noderes.netboot=xnba |
---|
Set the xCAT master, TFTP, and NFS srever values to point to the xCAT management node's private IP address:
chtab node=blade noderes.xcatmaster=x.x.x.x chtab node=blade noderes.tftpserver=x.x.x.x chtab node=blade noderes.nfsserver=x.x.x.x |
---|
Set the username and password for the blade key to the credentials used to log in to the Advanced Management Module:
chtab key= |
---|
...
blade passwd.username= |
---|
...
<xcatuser> passwd.password=<xcatpassword> |
---|
Set the root password for the system key. When a Linux image is loaded via Kickstart by xCAT, this will be the root password initially set on the loaded computer:<AMM SNMPv3 password>
chtab key=system passwd.username=root passwd.password= |
---|
...
<linuxpassword> |
---|
...
...
nodeadd |
---|
...
bcamm-X groups= |
---|
...
chdef -t group amm mgt=blade
chdef -t group amm mpa=<AMM name> ip=<AMM IP address>
chtab mpa=<AMM name> mpa.username=<AMM SNMPv3 username> mpa.password=<AMM SNMPv3 password>
mm nodeadd bcamm-Y groups=mm |
---|
nodeadd vcl-X-1..vcl-X-14 groups=all,blade,compute nodeadd vcl-Y-1..vcl-Y-14 |
---|
...
groups=all,blade,compute |
---|
chtab node=compute noderes.tftpserver=<management node private IP address> noderes.nfsserver=<management node private IP address> noderes.xcatmaster=<management node private IP address>
...
For each blade, set the mp.mpa value to the AMM node name, and mp.id value to the corresponding blade slot
for i in {1..14} ; do chtab node=vcl-X-$i mp.mpa=bcamm-X mp.id=$i ; done for i in { |
---|
...
1.. |
---|
...
14} ; do chtab node= |
---|
...
vcl-Y-$i mp.mpa= |
---|
...
bcamm-Y mp.id=$i ; done |
---|
...
Set the hosts.ip value to the private IP address for each AMM and blade
chtab node=bcamm-X hosts.ip=<x.x.x.x> chtab node=vcl-X-1 hosts.ip=<x.x.x.x> ... chtab node=vcl-Y-14 hosts.ip=<x.x.x.x> |
---|
makehosts -n |
---|
...
getmacs blade -i |
---|
...
eth0 |
---|
...
makedhcp -n chkconfig dhcpd on |
---|
...
service dhcpd start
makedhcp /vcl-n.*
ddns-update-style none;
rndc-confgen -a -r /dev/urandom
makedns
makedhcp blade |
---|
...
wget -N -P /install/ |
---|
...
#copycds /install/software/$CENTOS_ISO_FILENAME
#XCAT_REF_OSIMAGE_BASE=/opt/xcat/share/xcat/install/centos
...
...
copycds /install/software/CentOS-6.5-x86_64-bin-DVD1.iso |
---|
chdef blade os=centos6.5 arch=x86_64 profile=compute |
---|
nodeset blade install |
---|
Power cycle each blade
rpower blade boot |
---|
#XCAT_REF_TMPL_PATH=$XCAT_REF_OSIMAGE_BASE/kvm.centos6.tmpl
#
#VCL_OSIMAGE_BASE=/install/custom/install/centos
#VCL_OSIMAGE_NAME=vcl-kvm
#VCL_OSIMAGE_TMPL_PATH=$VCL_OSIMAGE_BASE/$VCL_OSIMAGE_NAME.tmpl
#VCL_OSIMAGE_POSTINSTALL_PATH=$VCL_OSIMAGE_BASE/$VCL_OSIMAGE_NAME.postinstall
#
#lsdef -t osimage -z $XCAT_REF_OSIMAGE_NAME | sed "s/^[^ ]\+:/$VCL_OSIMAGE_NAME:/" | mkdef -f -z
#chdef -t osimage -o $VCL_OSIMAGE_NAME template=$VCL_OSIMAGE_TMPL_PATH
#chdef -t osimage -o $VCL_OSIMAGE_NAME postinstall=$VCL_OSIMAGE_POSTINSTALL_PATH
#lsdef -t osimage -z $VCL_OSIMAGE_NAME
#
#mkdir -p $VCL_OSIMAGE_BASE
#cp -v -f -p $XCAT_REF_TMPL_PATH $VCL_OSIMAGE_TMPL_PATH
#touch $VCL_OSIMAGE_POSTINSTALL_PATH
#ls -l $VCL_OSIMAGE_BASE
cat > /install/custom/install/centos/vcl-partitions.sh <<EOF
USB_DEV=`lsblk -b | grep disk | awk '{print $4 " " $1}' | sort | head -n 1 | awk '{print $2}'`
USB_SIZE=`lsblk -b | grep disk | awk '{print $4 " " $1}' | sort | head -n 1 | awk '{print $1}'`
HD_DEV=`lsblk -b | grep disk | awk '{print $4 " " $1}' | sort -r | head -n 1 | awk '{print $2}'`
HD_SIZE=`lsblk -b | grep disk | awk '{print $4 " " $1}' | sort -r | head -n 1 | awk '{print $1}'`
echo "USB: $USB_DEV, $USB_SIZE"
echo "HD: $HD_DEV, $HD_SIZE"
echo "part /boot/efi --fstype vfat --size=100 --ondisk=$HD_DEV" > /tmp/partitionfile
echo "part / --size 1 --grow --fstype ext4 --ondisk=$HD_DEV" >> /tmp/partitionfile
EOF
cat /install/custom/install/centos/vcl-partitions.sh
chdef -t osimage $VCL_OSIMAGE_NAME partitionfile='s:/install/custom/install/centos/vcl-partitions.sh'
lsdef -t osimage vcl-kvm
chdef vcl-n07 provmethod=install
nodeset vcl-n07 osimage=$VCL_OSIMAGE_NAME
lsdef vcl-n07
exit
rsetboot vcl-n07 net
rpower vcl-n07 boot
lsdef -t osimage -z vcl-kvm | sed "s/^[^ ]\+:/vcl-kvm-simple:/" | mkdef -f -z
chdef -t osimage -o vcl-kvm-simple template=/install/custom/install/centos/vcl-kvm-simple.tmpl
chdef -t osimage -o vcl-kvm-simple profile=vcl-kvm
nodeset vcl-n05 osimage=vcl-kvm