*addhost listening /var/log/messages to discover the DHCP discover message. (addhost.py::scanSyslogForPXEReqs)
*Node was power on and broadcast a DHCP discover.
*addhost got the DHCP discover message in /var/log/messages;
*create entries in DB and then modify the lease file. (addhost.py::scanSyslogForPXEReqs)
*addhost call its plugins, the add methods to generate the tftp configs ...etc
*Node then could get IP address through DHCP request.
*Node then could download TFTP config files.
*Node downloading kernel, images, ks files, installing, reboot, run post scripts.
*When you quite addhost, it will call all its plugins, the finished methods to sync files...etc
call customized anaconda which we hacked in initrd.
customized anaconda call nodeinstaller to preparing kickstart for standard anaconda. packages/kusu-nodeinstaller/src/bin/nodeinstaller
*Download NII
*Set Timezone
*Format disk and mount filesystems
*Prepare SSH key
*Prepare root password
*Download post scripts
call standard anaconda with the new generated kickstart file.
Image& diskless based provisioning
addhost and pxe boot steps are same with above.
The hacked init file: packages/initrd-templates/etc/imageinit.py
*Loading the required modules
*Bringing the NICs up to request an IP address
*Downloading the NII
*Configuring the NICs
*Download images and unpack it.
*Partitioning the disks (If needed)
Last edited by leiai; February 18th, 2009 at 10:36 AM.