biolocal:Diskless

From Wiki CEINGE

Jump to: navigation, search

[edit] New diskless OS

NFS server configuration

Two volumes are available on the SAN for diskless data:

rootOSes /dev/emcpowern1 (500Gb) snapOSes /dev/emcpowerm1 (1Tb)

They are mounted on 143.225.151.72 (storagesrv2) under:

/mnt/rootOSes /mnt/snapOSes

Create the directory structure runing the command:

/root/config_os_partitions.sh oslabel
ex: /root/config_os_partitions.sh centos5sge

This script makes the directories

/mnt/rootOSes/$oslabel
/mnt/snapOSes/$oslabel
/diskless/i386/$oslabel/root
/diskless/i386/$oslabel/snapshot

and remount the /mnt directories on /diskless directories.

Note: The two paths in /mnt must be remounted through a binding mount on /diskless/i386/... paths. This is required to export the paths /diskless/i386/... according to the diskless standard.


OS creation

Rsync the installed os from an existing disk to /diskless/i386/$oslabel/root

After the copy is completed, edit the oslabel file in etc to store the new label:

echo 'centos5sge' > /diskless/i386/centos5sge/root/etc/oslabel


Export the root and snapshot directories to a new network.

echo "/diskless/i386/centos5sge/root  192.168.151.43(rw,sync,no_root_squash)" >> /etc/exports
echo "/diskless/i386/centos5sge/root 192.168.129.0/24(ro,sync,no_root_squash)" >> /etc/exports
echo "/diskless/i386/centos5sge/snapshot     192.168.129.0/18(rw,sync,no_root_squash)" >> /etc/exports
exportfs -r

Register the new rootfs and the Os by using the web interface (http://mac-web.ceinge.unina.it/servers):

  • Create a rootfs
  • Create the OS; the OS should be linked to the created rootfs selecting the corresponding checkbox in the new os interface.


Clustermanager setup

  • DHCP

Edit the file /etc/dhcpd.conf and insert a new network configuration:

                pool {
                        include "dhcpd.d/centos5sge/dhcpd.inc";
                        filename "centos5sge/pxelinux.0";
                        range 192.168.129.1 192.168.129.254;
                        }

In /etc/dhcpd.d create a new directory and the include file:

mkdir /etc/dhcpd.d/centos5sge
touch /etc/dhcpd.d/centos5sge/dhcpd.inc


  • tftserver

Create a new directory in /tftpboot/ and build the structure for the current diskless os:

mkdir /tftpboot/centos5sge
mkdir /tftpboot/centos5sge/centos5sge
cp -aR /tftpboot/linux-install/pxelinux.0 /tftpboot/linux-install/pxelinux.cfg /tftpboot/linux-install/msgs /tftpboot/centos5sge/

The /tftpboot/centos5sge/centos5sge should contain the kernel and the initrd image of the diskless os to run.


  • pxe

Configure the xml pxeos file describing the new os; write in /tftpboot/linux-install/pxelinux.cfg/pxeos.xml and in /tftpboot/centos5sge/pxelinux.cfg/pxeos.xml the tags:

<?xml version="1.0" ?>
<OperatingSystems>

<OS Anonymous="1" 
    Description="CentOS5 for SGE cluster Nodes"
    Diskless="1" Kernel="2.6.18-92.1.18.el5" 
    Kickstart="" Location="/diskless/i386/centos5sge" 
    Name="centos5sge" 
    Password="" 
    Protocol="NFS" 
    Server="192.168.151.125" 
    User=""/>

 </OperatingSystems>

Now, build the diskless directories, mounting the volumes from the nfs server config_newos.sh centos5grid 192.168.151.125

Finally, write the list of files to be included into the snapshot folders: /diskless/i386/centos5sge/snapshot/files /diskless/i386/centos5sge/snapshot/files.custom

Personal tools