Hi Jonathan, Yes, I definitely think that would cause a problem. This is jogging my memory because I think that when the new Genesis boot loader was rolled out in the first version of xCAT that supported it that I faced a similar problem. I had assumed that only Genesis was needed but xNBA is still used an an intermediate image even if it is no longer the final image. I will check my yum repos as soon as I can - but by some unfortunate coincidence I just discovered that YUM is not working since our RHEL license expired three days ago (unbeknownst to me until 10 minutes ago). Do you have xCAT-genesis-x86_64 and elilo-xCAT? You may even have to pull xNBA images from an older install(?) and then run mknb to build the images.
I remember downloading the tarred files with the RPM manually and creating a local repo for xCAT. Whenever I get YUM back I'll give you more specifics if I can. -Josh On Tue, Jan 21, 2014 at 1:54 PM, Jonathan Mills <[email protected]> wrote: > Josh, > > I don't doubt that you're on to something. But if this is the case, it > means my systems are missing some files, namely: > > /tftpboot/xcat/nbk.x86_64 > /tftpboot/xcat/nbfs.x86_64.gz > > Can you tell me what RPM installed those files on your system? They > don't exist on mine, and even a 'yum provides' doesn't find them. > > > On 01/21/2014 11:51 AM, Josh Nielsen wrote: >> Hi Jonathan, >> >> It is my understanding, from extensive debugging and notes that I have >> taken about the xCAT netbooting process in the past, that xCAT uses a >> two-stage image deployment method. It will first come up with a more >> "generic" boot image (normally xnba or sometimes yaboot) which - when it >> contacts the xCAT headnode (or the node handling DHCP requests) - the >> headnode will then recognize the current image on the client that is >> sending requests to DHCP for further boot instructions, and will tell >> the client to then load another image based on the subnet and image type >> it is currently using. For example my headnode's /etc/dhcpd.conf file >> has an entry that looks like this: >> >> hared-network eth0 { >> subnet 10.20.0.0 netmask 255.255.0.0 { >> max-lease-time 43200; >> min-lease-time 43200; >> default-lease-time 43200; >> next-server 10.20.0.1; >> option log-servers 10.20.0.1; >> option ntp-servers 10.20.0.1; >> option domain-name "xxxxxxxxx"; >> option domain-name-servers 10.20.0.1; >> if option user-class-identifier = "xNBA" and option >> client-architecture = 00:00 { #x86, xCAT Network Boot Agent >> always-broadcast on; >> filename = "http://10.20.0.1/tftpboot/xcat/xnba/nets/10.20.0.0_16"; >> } else if option user-class-identifier = "xNBA" and option >> client-architecture = 00:09 { #x86, xCAT Network Boot Agent >> filename = >> "http://10.20.0.1/tftpboot/xcat/xnba/nets/10.20.0.0_16.uefi"; >> } else if option client-architecture = 00:00 { #x86 >> filename "xcat/xnba.kpxe"; >> } else if option vendor-class-identifier = "Etherboot-5.4" { #x86 >> filename "xcat/xnba.kpxe"; >> } else if option client-architecture = 00:07 { #x86_64 uefi >> filename "xcat/xnba.efi"; >> } else if option client-architecture = 00:09 { #x86_64 uefi >> alternative id >> filename "xcat/xnba.efi"; >> } else if option client-architecture = 00:02 { #ia64 >> filename "elilo.efi"; >> } else if substring(filename,0,1) = null { #otherwise, provide >> yaboot if the client isn't specific >> filename "/yaboot"; >> } >> range dynamic-bootp 10.20.200.254 10.20.254.254; >> } # 10.20.0.0/255.255.0.0 <http://10.20.0.0/255.255.0.0> subnet_end >> >> So if it boots with the xNBA image it then directs it to the >> http://10.20.0.1/tftpboot/xcat/xnba/nets/10.20.0.0_16 which has the >> genesis boot instructions in it: >> >> #!gpxe >> imgfetch -n kernel >> http://${next-server}/tftpboot/xcat/genesis.kernel.x86_64 quiet >> xcatd=10.20.0.1:3001 <http://10.20.0.1:3001> BOOTIF=01-${netX/machyp} >> imgfetch -n nbfs http://${next-server}/tftpboot/xcat/genesis.fs.x86_64.gz >> imgload kernel >> imgexec kernel >> >> So first it boots with xnba (first stage of boot), it contacts the DHCP >> server which gives it a "next-server" option of itself (saying to the >> client: request the next image from me - the headnode - again), and then >> gives it a boot file with instructions for the next image, then it >> executes it and finally loads genesis. You will also notice that the >> very last options (if it matches nothing else) is yaboot, which is >> another generic image, which will in turn probably request the next >> image. Try watching your log for the tftp daemon messages to see what is >> being sent. >> >> I wonder if you are having problems at the first stage DHCP redirecting >> stage though. Check your options statements in /etc/dhcpd.conf to see >> where it is directing xNBA images. >> >> Regards, >> Josh Nielsen >> >> >> On Tue, Jan 21, 2014 at 10:26 AM, Jonathan Mills <[email protected] >> <mailto:[email protected]>> wrote: >> >> Wang, >> >> Thank you for your response. I did some digging and here is what I >> found. >> >> cat /tftpboot/xcat/xnba/nets/10.100.0.0_24 >> #!gpxe >> imgfetch -n kernel >> http://${next-server}/tftpboot/xcat/genesis.kernel.x86_64 quiet >> xcatd=10.100.0.1:3001 <http://10.100.0.1:3001> BOOTIF=01-${netX/machyp} >> imgfetch -n nbfs >> http://${next-server}/tftpboot/xcat/genesis.fs.x86_64.lzma >> imgload kernel >> imgexec kernel >> >> >> >> cat /tftpboot/pxelinux.cfg/0A6400 >> DEFAULT xCAT >> LABEL xCAT >> KERNEL xcat/nbk.x86_64 >> APPEND initrd=xcat/nbfs.x86_64.gz quiet xcatd=10.100.0.1:3001 >> <http://10.100.0.1:3001> >> >> >> >> So, clearly, those things don't match up. That strikes me as an xCAT >> issue, but nevermind. I manually modified /tftpboot/pxelinux.cfg/0A6400 >> to make it look like: >> >> DEFAULT xCAT >> LABEL xCAT >> KERNEL xcat/genesis.kernel.x86_64 >> APPEND initrd=xcat/genesis.fs.x86_64.lzma quiet >> xcatd=10.100.0.1:3001 <http://10.100.0.1:3001> >> BOOTIF=eth0 >> >> >> (It is safe, in this case, to designate BOOTIF as 'eth0' -- with Cisco >> UCS hardware, and using vNICs, the first interface will always show up >> in Linux as eth0 -- at least, that is my experience). >> >> After this change, I was indeed able to PXE boot the first node, and I >> was hopeful that node discovery would then take place. However, this >> still did not occur. On console, I dug into the running genesis image >> on the first node, and I found that it had no ethernet interfaces >> whatsoever, because the genesis kernel has no driver support for Cisco >> UCS hardware. >> >> For example, this is the ethtool output of a Cisco UCS vNIC: >> >> [root@ncsu-hn nets]# ethtool -i eth0 >> driver: enic >> version: 2.1.1.39 >> firmware-version: 2.0(4b) >> bus-info: 0000:06:00.0 >> supports-statistics: yes >> supports-test: no >> supports-eeprom-access: no >> supports-register-dump: no >> supports-priv-flags: no >> >> >> You can see it requires the 'enic' kernel module, usually located at: >> /lib/modules/`uname -r`/kernel/drivers/net/enic/enic.ko >> >> This module isn't found within the genesis image, so the node PXE boots, >> and then can do no more. Node discovery fails. >> >> On 01/20/2014 09:19 PM, Xiao Peng Wang wrote: >> > xCAT is using genesis (an xCAT customized pxe tool) to function the >> > discovery process. The configuration for genesis is put in >> > /tftpboot/xcat/xnba/nets/ for a specific network. Could you check >> your >> > specific xnba configuration file for your deployment network has been >> > put in /tftpboot/xcat/xnba/nets/? >> > >> > The prerequisite for booting of genesis is to make the node has a >> > dynamic IP address. Did you configure the dynamic IP range for your >> > deployment network? Could you take a look of your syslog to see >> whether >> > the node has sent out dhcp request and what did your dhcp server >> replied >> > to them? >> > >> > Thanks >> > Best Regards >> > >> ---------------------------------------------------------------------- >> > Wang Xiaopeng (王晓朋) >> > IBM China System Technology Laboratory >> > Tel: 86-10-82453455 >> > Email: [email protected] <mailto:[email protected]> >> > Address: 28,ZhongGuanCun Software Park,No.8 Dong Bei Wang West Road, >> > Haidian District Beijing P.R.China 100193 >> > >> > Inactive hide details for Jonathan Mills ---2014/01/19 06:24:02---I'm >> > running xCAT 2.8.3 and CentOS 6.4 atop of Cisco UCS-C harJonathan >> Mills >> > ---2014/01/19 06:24:02---I'm running xCAT 2.8.3 and CentOS 6.4 >> atop of >> > Cisco UCS-C hardware. I'm attempting to do a sequent >> > >> > From: Jonathan Mills <[email protected] <mailto:[email protected]>> >> > To: xCAT Users Mailing list <[email protected] >> <mailto:[email protected]>>, >> > Date: 2014/01/19 06:24 >> > Subject: [xcat-user] Frustrating time with sequential node discovery >> > >> > >> ------------------------------------------------------------------------ >> > >> > >> > >> > I'm running xCAT 2.8.3 and CentOS 6.4 atop of Cisco UCS-C >> hardware. I'm >> > attempting to do a sequential nodediscovery. I've pre-populated the >> > nodelist table with the nodenames, so I shouldn't need to do anything >> > more than >> > >> > nodediscoverystart noderange=node[1-15] >> > >> > However, none of the nodes ever gets discovered. >> > >> > Digging deeper, it seems that none of them ever successfully PXE >> boot at >> > all. They should be PXE booting off of the genesis netboot image and >> > speaking back to the xcatmaster, correct? >> > >> > When I run 'mknb x86_64', it populates /tftpboot/pxelinux.cfg with >> > entries to non-existent netboot images. Watch: >> > >> > [root@ncsu-hn ~]# rpm -qf /opt/xcat/sbin/mknb >> > xCAT-client-2.8.3-snap201311122316.noarch >> > [root@ncsu-hn ~]# mknb x86_64 >> > Creating genesis.fs.x86_64.lzma in /tftpboot/xcat >> > [root@ncsu-hn ~]# cd /tftpboot/pxelinux.cfg/ >> > [root@ncsu-hn pxelinux.cfg]# ls >> > 0A6400 0A6500 0A6600 7F 98300D 98300DE6 98300DE7 C0A86B >> > [root@ncsu-hn pxelinux.cfg]# cat * >> > DEFAULT xCAT >> > LABEL xCAT >> > KERNEL xcat/nbk.x86_64 >> > APPEND initrd=xcat/nbfs.x86_64.gz quiet xcatd=10.100.0.1:3001 >> <http://10.100.0.1:3001> >> > DEFAULT xCAT >> > LABEL xCAT >> > KERNEL xcat/nbk.x86_64 >> > APPEND initrd=xcat/nbfs.x86_64.gz quiet xcatd=10.101.0.1:3001 >> <http://10.101.0.1:3001> >> > DEFAULT xCAT >> > LABEL xCAT >> > KERNEL xcat/nbk.x86_64 >> > APPEND initrd=xcat/nbfs.x86_64.gz quiet xcatd=10.102.0.1:3001 >> <http://10.102.0.1:3001> >> > DEFAULT xCAT >> > LABEL xCAT >> > KERNEL xcat/nbk.x86_64 >> > APPEND initrd=xcat/nbfs.x86_64.gz quiet xcatd=127.0.0.1:3001 >> <http://127.0.0.1:3001> >> > DEFAULT xCAT >> > LABEL xCAT >> > KERNEL xcat/nbk.x86_64 >> > APPEND initrd=xcat/nbfs.x86_64.gz quiet xcatd=152.48.13.3:3001 >> <http://152.48.13.3:3001> >> > DEFAULT xCAT >> > LABEL xCAT >> > KERNEL xcat/nbk.x86_64 >> > APPEND initrd=xcat/nbfs.x86_64.gz quiet >> xcatd=152.48.13.230:3001 <http://152.48.13.230:3001> >> > DEFAULT xCAT >> > LABEL xCAT >> > KERNEL xcat/nbk.x86_64 >> > APPEND initrd=xcat/nbfs.x86_64.gz quiet >> xcatd=152.48.13.231:3001 <http://152.48.13.231:3001> >> > DEFAULT xCAT >> > LABEL xCAT >> > KERNEL xcat/nbk.x86_64 >> > APPEND initrd=xcat/nbfs.x86_64.gz quiet >> xcatd=192.168.107.10:3001 <http://192.168.107.10:3001> >> > [root@ncsu-hn pxelinux.cfg]# cd ../xcat/ >> > [root@ncsu-hn xcat]# ls -la >> > total 21528 >> > drwxr-xr-x 4 root root 4096 Jan 17 13:06 . >> > drwxr-xr-x. 7 root root 4096 Jan 18 22:02 .. >> > -rwxr-xr-x 1 root root 242929 Jan 15 2012 elilo-x64.efi >> > -rw-r--r-- 1 root root 17573621 Jan 18 22:03 genesis.fs.x86_64.lzma >> > -rwxr-xr-x 1 root root 3986608 Aug 9 06:29 genesis.kernel.x86_64 >> > drwxr-xr-x 3 root root 4096 Jan 17 13:06 osimage >> > drwxr-xr-x 3 root root 4096 Dec 23 07:42 xnba >> > -rw-r--r-- 1 root root 139200 Oct 28 16:16 xnba.efi >> > -rw-r--r-- 1 root root 74792 Oct 28 16:16 xnba.kpxe >> > >> > >> > >> > As you can see....it ought to be netbooting the genesis kernel, but >> > instead all my pxelinux.cfg/* files are instructing clients to >> boot the >> > non-existent "nbk.x86_64" image. >> > >> > Your advice is appreciated. >> > >> > -- >> > Jonathan Mills >> > Systems Administrator >> > Renaissance Computing Institute >> > UNC-Chapel Hill >> > >> > >> >> ------------------------------------------------------------------------------ >> > CenturyLink Cloud: The Leader in Enterprise Cloud Services. >> > Learn Why More Businesses Are Choosing CenturyLink Cloud For >> > Critical Workloads, Development Environments & Everything In Between. >> > Get a Quote or Start a Free Trial Today. >> > >> >> http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk >> > _______________________________________________ >> > xCAT-user mailing list >> > [email protected] >> <mailto:[email protected]> >> > https://lists.sourceforge.net/lists/listinfo/xcat-user >> > >> > >> >> -- >> Jonathan Mills >> Systems Administrator >> Renaissance Computing Institute >> UNC-Chapel Hill >> >> >> ------------------------------------------------------------------------------ >> CenturyLink Cloud: The Leader in Enterprise Cloud Services. >> Learn Why More Businesses Are Choosing CenturyLink Cloud For >> Critical Workloads, Development Environments & Everything In Between. >> Get a Quote or Start a Free Trial Today. >> >> http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk >> _______________________________________________ >> xCAT-user mailing list >> [email protected] <mailto:[email protected]> >> https://lists.sourceforge.net/lists/listinfo/xcat-user >> >> > > -- > Jonathan Mills > Systems Administrator > Renaissance Computing Institute > UNC-Chapel Hill > > ------------------------------------------------------------------------------ > CenturyLink Cloud: The Leader in Enterprise Cloud Services. > Learn Why More Businesses Are Choosing CenturyLink Cloud For > Critical Workloads, Development Environments & Everything In Between. > Get a Quote or Start a Free Trial Today. > http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk > _______________________________________________ > xCAT-user mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/xcat-user ------------------------------------------------------------------------------ CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk _______________________________________________ xCAT-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/xcat-user
