Anaconda kickstart options and lowlevel netboot.img input options.

Coe, Colin C. Colin.Coe at woodside.com.au
Tue Aug 22 23:29:07 UTC 2006


Hi Tom
 
No, I'm not an Anaconda coder.  There are quirks in the installer but
the issue with the swapped NICs I believe is a kernel compile config
quirk rather than an Anaconda problem.  Pity about the DHCP.
 
As I said, I'm not an Anaconda or Python coder, but what about a custom
install class?  Is this were a custom install class would be used?
Also, given your working with Power5 LPARs I can only assume you're
working with a beastie along the lines of a P595, maybe you could query
the hypervisor?  I know these are pretty locked down but...
 
Just out of curiosity, what boot method do these use (bootp/pxe/etc)?
If its PXE and you're able to use PXELINUX (I don't know if you can),
you might be able to make use of the IPAPPEND option.  Or better yet,
you could have your expect script create a symlink called the MAC
address of the NIC you want to use which points to a standard pxelinux
config file.  For example
2A:CA:30:00:40:02
 
/tftpboot/pxelinux.cfg/2a-ca-30-00-40-02 -> el4_lpar02
/tftpboot/pxelinux.cfg/el4_lpar02
 
Where el4_lpar02 would contain something like
 
label el4_lpar
        kernel el4u4/vmlinuz
        append ksdevice=eth0 ks=nfs:9.3.80.16:/export/install/ks.cfg
initrd=el4u4/initrd.img ip=9.3.22.202
method=nfs:10.240.34.254:/export/install/el4u4_x86_64
 
CC
 
 
 -----Original Message-----
From: kickstart-list-bounces at redhat.com
[mailto:kickstart-list-bounces at redhat.com] On Behalf Of Tom Miller
Sent: Wednesday, 23 August 2006 2:09 AM
To: Discussion list about Kickstart
Subject: RE: Anaconda kickstart options and lowlevel netboot.img input
options.



	
	Collin, 
	   Thanks for your reply.
	   I would love to use dhcp, this would solve all my problems
but IBM prevents me from doing that. They do not pass dhcp requests thru
the site bridges/gateways/routes so I would have to have a dhcp server
on each subnet that contained victims to install. I have 5 servers in
	Austin, one in Rochester, Mn and one in Poughkeepsie, NY and
they install 100's of systems
	a week on many different subnets. 
	 
	   I did not realize that the installer and kernel couldn't even
agree on which nic was eth0.
	Thats all the more need for anacondo and the netboot.img to deal
with mac addresses.
	 
	You don't happen to be an anaconda coder do you?
	 
	thanks
	tom
	 
	Monday, August 21, 2006 7:51 PM
	To: "Discussion list about Kickstart"
<kickstart-list at redhat.com>
	cc: 
	From: "Coe, Colin C." <Colin.Coe at woodside.com.au>
	Subject: RE: Anaconda kickstart options and lowlevel netboot.img
input   options.
	
	
	If you know the MAC addr, could you use a DHCP server with an
entry for each LPAR you want to install?  Something like:
	 
	allow booting;
	allow bootp;
	 
	...
	 
	
	group {
	        subnet 9.3.22.0 netmask 255.255.255.0 {
	                option domain-name "ibm.com";
	                option subnet-mask 255.255.255.0;
	                option broadcast-address 9.3.22.255;
	                option domain-name-servers 9.0..7.1;
	                option routers 9.3.22.1;
	        }
	        # PXE-specific configuration directives...
	        next-server 9.3.22.253;
	        filename "pxelinux.0";
	
	...
	 
	       host lpar02 {
	                hardware ethernet 2A:CA:30:00:40:02;
	                fixed-address 9.3.22.202;
	                option host-name "lpar02";
	        }
	 
	...
	}
	 
	Just a thought.
	 
	Also, if you're using EL4, beware that sometimes the NIC that
the installer decides is eth0 is not what the installed kernel thinks is
eth0.
	 
	CC

		-----Original Message-----
		From: kickstart-list-bounces at redhat.com
[mailto:kickstart-list-bounces at redhat.com] On Behalf Of Tom Miller
		Sent: Tuesday, 22 August 2006 3:06 AM
		To: kickstart-list at redhat.com
		Subject: Anaconda kickstart options and lowlevel
netboot.img input options. 
		
		
		 
		I am using a kickstart.cfg file to load power 5 lpars
via network install. I use a bootp server
		to deliver the RedHat netboot.img to the victim machine,
I set the boot-file SMS env variable to pass boot image parms to
netboot.img.  Here's what I pass:
		 
		 text ip=9.3.22.104 netmask=255.255.255.128
gateway=9.3.22.1 nameserver=9.0.7.1 ksdevice=eth0
ks=nfs:9.3.80.16:/lpars/sift22104.cfg
		This lets the netboot.img config eth0 to access the ks
file on the server. 
		 
		I have this network line in the /lpars/sift22104.cfg
kickstart file: 
		 
		network --device eth0 --bootproto static --ip 9.3.22.104
--netmask 255.255.255.128 --gateway 9.3.22.1 --nameserver 9.0.7.1
--hostname sift22104.austin.ibm.com
		 
		This works just fine and the install completes. 
		 
		I need to make this work on lpars that have never been
loaded before and these lpars can have several eth adapters so the user
will not know what order the adatpers will be configured so he can't
specify eth0 or eth1 in the options above.  I have expect code that goes
thru the SMS menus and attempts to ping the server on each eth adatper
until it finds one that is connected: I can pull the mac address for
that card and could at that point create the netboot.img boot parms line
that includes the mac address, but there is no way I can know what ethX
redhat will confgure this card as.  I tried changing the netboot.img
parms line to:
		
		 text ip=9.3.22.104 netmask=255.255.255.128
gateway=9.3.22.1 nameserver=9.0.7.1 ksdevice=eth-id-2a:ca:30:00:40:02
ks=nfs:9.3.80.16:/lpars/sift22104.cfg
		 
		and the kickstart network line to this: 
		network --device eth-id-2a:ca:30:00:40:02 --bootproto
static --ip 9.3.22.104 --netmask 255.255.255.128 --gateway 9.3.22.1
--nameserver 9.0.7.1 --hostname sift22104.austin.ibm.com
		 
		But it did not work.. I got a syntax error back from
anaconda complaining about this: 

		    self.setNetwork(id, bootProto, ip, netmask, ethtool,
device=device, onboot=onboot, dhcpclass=dhcpclass, essid=essid,
wepkey=wepkey)
		  File "/usr/lib/anaconda/installclass.py", line 332, in
setNetwork
		    dev = devices[device]
		KeyError: 'eth-id-2a:ca:30:00:40:02'
		 
		I have searched thru doc's till I am blue and can't find
out if there is some way (any correct syntax) to pass the mac address to
netboot.img and anaconda instead of the ethX name.
		 
		Dose anyone know how this can be done, is it even in the
netboot.img/anaconda code to all this and deal with the mac address? 
		This is the last thing I need to fully automate these
installs for my users with kickstart instead of using expect to fill out
all those changing install menus in text mode. 
		 
		thanks
		tom miller   IBM.
		 
		 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/kickstart-list/attachments/20060823/e829fb2c/attachment.htm>


More information about the Kickstart-list mailing list