Hi Jarrod,
It's working, thank you very much.
For completeness following all the details of the cluster:
1) DHCP
/etc/dhcp.cscs/dhcpd.conf calls cluster1.conf as following:
...include "/etc/dhcp.cscs/dhcp-conf-dir/cluster1.conf";...
where cluster1.conf (following your example) is now:...option user-
class-identifier code 77 = string;option client-architecture code 93 =
unsigned integer 16;
host server01.cscs.ch { hardware ethernet 90:E2:BA:A1:56:F4; # 10G
ETH0 NIC fixed-address 148.187.xxx.xxx; next-server 148.187.xxx.xxx;
supersede server.ddns-hostname = "server01"; supersede host-name =
"server01"; if option user-class-identifier = "xNBA" and option
client-architecture = 00:00 { supersede server.always-broadcast =
01; supersede server.filename = "http://${next-
server}/tftpboot/xcat/xnba/nodes/server01"; } else if option user-
class-identifier = "xNBA" and option client-architecture = 00:09 or
option client-architecture = 00:07 { supersede server.filename =
"http://${next-server}/tftpboot/xcat/xnba/nodes/server01.uefi"; } else
if option client-architecture = 00:07 { supersede server.filename =
"xcat/xnba.efi"; } else if option client-architecture = 00:00
{ supersede server.filename = "xcat/xnba.kpxe"; } else
{ supersede server.filename = ""; }}...
2) xCAT
The configuration of xCAT is the following:
chain.csv:"server01","boot","boot",,,,hosts.csv:"server01","148.187.xxx
.xxx","server01.cscs.ch",,,ipmi.csv:"server01","148.187.xxx.xxx",,,,"ro
ot","XXXXXXXX",,mac.csv:"server01","ens785f0","90:e2:ba:a1:56:f4",,node
hm.csv:"server01","ipmi","ipmi","kvm",,,,,,,,,,,nodelist.csv:"server01"
,"all,cscs","booting","06-12-2018
12:14:59",,,,,,,,,noderes.csv:"server01",,"xnba","148.187.3.22","/tftpb
oot","148.187.3.22",,,,"ens785f0",,,,,,,,,,,,nodetype.csv:"server01","r
hels7.4","x86_64","cscs_storage","rhels7.4-x86_64-install-
cscs_storage",,"osi",,
3) kickstart
As you can see from the xCAT configuration we customized the kickstart
as following:
# cat /opt/xcat/share/xcat/install/rh/cscs_storage.rhels7.x86_64.tmpl
##cmdline
lang en_US#KICKSTARTNET#
## Where's the source?# nfs --server hostname.of.server or IP --dir
/path/to/RH/CD/image##nfs --server #XCATVAR:INSTALL_NFS# --dir
#XCATVAR:INSTALL_SRC_DIR#
%include /tmp/repos
#device ethernet e100keyboard "us"
## Clear the MBR#zerombr
#this two lines below don't have any effect.... a possiblity is
removing the qla2xxx module from the initrd file#bootloader --
append="modprobe.blacklist=qla2xxx"#ignoredisk --drives=disk/by-
path/pci-*-fc-*
# Wipe out the disk#clearpart --all --drives=sda
## Customize to fit your needs#
### Partitioning ####%include /tmp/ignoredisk.ks
#XCAT_PARTITION_START#part /boot/efi --fstype=efi --size=512 --
asprimary --ondisk=sda#No RAID#/boot really significant for this sort
of setup nowadays?part /boot --size 2000 --fstype ext3 --asprimary --
ondisk=sdapart pv.01 --size 1 --grow --ondisk=sdavolgroup local pv.01
--pesize=4096logvol / --fstype=ext4 --vgname=local
--size=10000 --name=root_lvlogvol /opt --fstype=ext4
--vgname=local --size=20000 --name=opt_lvlogvol swap
--fstype=swap --vgname=local --size=10000 --name=swap_lvlogvol
/tmp --fstype=ext4 --vgname=local --size=20000
--name=tmp_lvlogvol /var --fstype=ext4 --vgname=local
--size=20000 --name=var_lv#XCAT_PARTITION_END#...
The important thing is to add "part /boot/efi --fstype=efi --size=512
--asprimary --ondisk=sda" otherwise the installation process hangs.
4) tftpboot
As expected the command "nodeset server01 osimage=rhels7.4-x86_64-
install-cscs_storage created the following 3 files:
# cat /tftpboot/xcat/xnba/nodes/durand01
#!gpxe#bootexit
# cat /tftpboot/xcat/xnba/nodes/durand01.elilo
default="xCAT"delay=0
image=/tftpboot/xcat/osimage/rhels7.4-x86_64-install-
cscs_storage/vmlinuz label="xCAT" initrd=/tftpboot/xcat/osimage/rhe
ls7.4-x86_64-install-cscs_storage/initrd.img append="quiet inst.repo=
http://148.187.3.22:80/install/rhels7.4/x86_64 inst.ks=http://148.187.3
.22:80/install/autoinst/durand01 ip=ens785f0:dhcp BOOTIF=%B"
# cat /tftpboot/xcat/xnba/nodes/durand01.uefi
#!gpxechain http://${next-server}/tftpboot/xcat/elilo-x64.efi -C
/tftpboot/xcat/xnba/nodes/durand01.elilo
Thank you again,Carmelo
On Fri, 2018-06-08 at 12:20 +0000, Jarrod Johnson wrote:
> So it has to be adaptive in the filename field for it to work.
>
> Here's an example of the omshell produced host definition of a node:
> host d3 {
> dynamic;
> hardware ethernet 08:94:ef:3f:e1:32;
> uid 08:94:ef:3f:e1:32;
> fixed-address 172.30.78.3;
> supersede server.ddns-hostname = "d3";
> supersede host-name = "d3";
> if option user-class-identifier = "xNBA" and option client-
> architecture
> = 00:00 {
> supersede server.always-broadcast = 01;
> supersede server.filename =
> "http://${next-
> server}/tftpboot/xcat/xnba/nodes/d3";
> } elsif option user-class-identifier = "xNBA" and option
> client-architecture = 00:09 or option client-
> architecture = 00:
> 07 {
> supersede server.filename =
> "http://${next-
> server}/tftpboot/xcat/xnba/nodes/d3.uefi";
> } elsif option client-architecture = 00:07 {
> supersede server.filename = "xcat/xnba.efi";
> } elsif option client-architecture = 00:00 {
> supersede server.filename = "xcat/xnba.kpxe";
> } else {
> supersede server.filename = "";
> }
> }
>
> The important part is:
> } elsif option user-class-identifier = "xNBA" and option
> client-architecture = 00:09 or option client-
> architecture = 00:07 {
> supersede server.filename = "http://${next-
> server}/tftpboot/xcat/xnba/nodes/d3.uefi";
> } elsif option client-architecture = 00:07 {
> supersede server.filename = "xcat/xnba.efi";
> }
>
> Otherwise it'll keep trying to nest itself, and at some point it
> nests
> too deeply and it's a pretty messy circumstance.
>
> Here's it written up online:
> http://ipxe.org/howto/dhcpd#pxe_chainloading
>
> Normally the xCAT dhcp.pm code does this, but if manually doing it,
> this is the expectation.
>
> Out of curiosity, if a server sent just filename, with all IP
> addresses
> set to 0.0.0.0, would that be hypothetically be considered ok to
> coexist with your other DHCP server? Want to see if my goals are
> aligned with making this particular situation easier.
>
>
> -----Original Message-----
> From: Carmelo Ponti (CSCS) <cpo...@cscs.ch>
> Reply-To: xCAT Users Mailing list <xcat-user@lists.sourceforge.net>
> To: xCAT Users Mailing list <xcat-user@lists.sourceforge.net>
> Subject: Re: [xcat-user] [External] UEFI installation problem
> Date: Fri, 08 Jun 2018 10:18:11 +0200
>
> Jarrod,
>
> on our xCAT server (Red Hat Enterprise Linux Server release 7.5) I'm
> using the official redhat DHCP server (dhcp-4.2.5-68.el7_5.1.x86_64).
> The only customization is that I don't use the xCAT
> /etc/dhcp/dhcpd.conf file but I created an other directory call
> /etc/dhcp.cscs in order to server all our dhcp client (also the ones
> not controlled by xCAT). Following an example of our configuration:
>
> # cat /etc/dhcp.cscs/dhcpd.conf
> #
> ddns-update-style none;
>
> option domain-name "cscs.ch";
> option domain-name-servers 148.187.x.x, 148.187.x.x;
>
> default-lease-time 14400; # 4 hours
> max-lease-time 86400; # 1 day
>
> log-facility local7;
>
> ##########################
> # EFI
> ##########################
> option space PXE;
> option PXE.mtftp-ip code 1 = ip-address;
> option PXE.mtftp-cport code 2 = unsigned integer 16;
> option PXE.mtftp-sport code 3 = unsigned integer 16;
> option PXE.mtftp-tmout code 4 = unsigned integer 8;
> option PXE.mtftp-delay code 5 = unsigned integer 8;
> option arch code 93 = unsigned integer 16; # RFC4578
> ##########################
> # END EFI
> ##########################
>
> subnet 148.187.1.0 netmask 255.255.255.0 {
> option routers 148.187.1.2;
> option domain-name-servers 148.187.x.x, 148.187.x.x;
> }
>
> subnet 148.187.2.0 netmask 255.255.255.128 {
> option routers 148.187.2.2;
> option domain-name-servers 148.187.x.x, 148.187.x.x;
> }
>
> ....
>
> include "/etc/dhcp.cscs/dhcp-conf-dir/cluster1.conf";
> include "/etc/dhcp.cscs/dhcp-conf-dir/cluster2.conf";
> include ...
>
> where /etc/dhcp.cscs/dhcp-conf-dir/cluster1.conf
>
> host server01.cscs.ch {
> hardware ethernet 90:E2:BA:A1:56:F4; # 10G ETH0 NIC
> fixed-address 148.187.x.x;
> filename "xcat/xnba.efi";
> next-server 148.187.x.x;
> }
>
> or /etc/dhcp.cscs/dhcp-conf-dir/cluster2.conf
>
> host servername01.cscs.ch {
> hardware ethernet 08:94:EF:5F:E0:CC;
> fixed-address 148.187.x.x;
> next-server 148.187.x.x;
> filename "pxelinux.0";
> }
>
> and so on.
>
> Unfortunately the server01 has this strange behavior.
>
> Carmelo
>
> On Thu, 2018-06-07 at 16:54 +0000, Jarrod Johnson wrote:
> > Is the external DHCP server ISC or other?
> >
> > Can you share how you tried to do the adaptive DHCPOFFER with
> > different filenames depending on the request?
> >
> > In the future, I hope to provide ProxyDHCP which would allow direct
> > DHCP OFFER control for PXE filename without imposing on addressing,
> > but for now...
> >
> > -----Original Message-----
> > From: Carmelo Ponti (CSCS) <cpo...@cscs.ch>
> > Sent: Thursday, June 07, 2018 12:09 PM
> > To: xCAT Users Mailing list <xcat-user@lists.sourceforge.net>
> > Subject: Re: [xcat-user] [External] UEFI installation problem
> >
> > Jarrod,
> >
> > On Thu, 2018-06-07 at 15:00 +0000, Jarrod Johnson wrote:
> > > Is that preceeded by a lot of the same output over and over?
> >
> > Yes, I'm seeing the same message many times
> >
> > > I see xnba downloading xnba, which should not be
> > > happening…. Dhcp
> > > should be doing a different offer…
> >
> > We are using a centralized DHCP at CSCS (not the one offered by
> > xCAT).
> > I tried to configure it to respect the xCAT rules but maybe I'm
> > doing
> > something wrong. Any advice?
> >
> > Carmelo
> >
> > > From: Carmelo Ponti (CSCS) <cpo...@cscs.ch>
> > > Sent: Thursday, June 07, 2018 10:21 AM
> > > To: xcat-user@lists.sourceforge.net
> > > Subject: [External] [xcat-user] UEFI installation problem
> > >
> > > Hello,
> > >
> > > I would like to install a intel server board S2600WT (BIOS
> > > version
> > > SE5C610.86B.01.01.0011 08/10/2015) using xcat with UEFI but I got
> > > the
> > > following error at the console:
> > >
> > > xCAT Network Boot Agent
> > > iPXE 1.0.3-131028 (d603e) -- Open Source Network Boot Firmare --
> > > http
> > > ://ipxe.org
> > > Features: HTTP HTTPS iSCSI DNS TFTP EFI
> > > net1: 90:e2:ba:a1:56:f4 using <NULL> on EFI SNP (open) [Link:up,
> > > TX:0
> > > TXE:0 RX:0 RXE:0] DHCP (net1 90:e2:ba:a1:56:f4) ...... ok Next
> > > server:
> > > 148.187.xxx.xxx
> > > Filename: xcat/xnba.efi
> > > tftp://148.187.xxx.xxx/xcat/xnba.efi ... ok Could not boot
> > > image:
> > > Error 0x7f38e002 (http:/ipxe/org/7f38e002) No more network
> > > devices
> > > Could not boot image: Error 0x7f048002 (http:/ipxe/org/7f048002)
> > > No
> > > more network devices
> > >
> > > Currently I'm using xCAT 2.13 and following the server
> > > configuration:
> > >
> > > Object name: server01
> > > arch=x86_64
> > > bmc=148.187.xxx.xxx
> > > bmcpassword=xxxxxx
> > > bmcusername=root
> > > cons=kvm
> > > currchain=boot
> > > currstate=install rhels7.4-x86_64-cscs_storage
> > > groups=all,cscs
> > > hostnames=server01.cscs.ch
> > > interface=eno1
> > > ip=148.187.xxx.xxx
> > > mac=90:e2:ba:a1:56:f4
> > > mgt=ipmi
> > > netboot=xnba
> > > nfsserver=148.187.xxx.xxx
> > > nodetype=osi
> > > os=rhels7.4
> > > postbootscripts=otherpkgs
> > > postscripts=syslog,remoteshell,syncfiles
> > > power=ipmi
> > > primarynic=eno1
> > > profile=cscs_storage
> > > provmethod=rhels7.4-x86_64-install-cscs_storage
> > > status=powering-on
> > > statustime=06-07-2018 15:49:19
> > > tftpdir=/tftpboot
> > > tftpserver=148.187.xxx.xxx
> > >
> > > dhcp is configured as following:
> > >
> > > host server01.cscs.ch {
> > > hardware ethernet 90:E2:BA:A1:56:F4; # 10G ETH0 NIC
> > > fixed-address 148.187.xxx.xxx;
> > > filename "xcat/xnba.efi";
> > > next-server 148.187.xxx.xxx;
> > > }
> > >
> > > When I ran "nodeset server01 osimage=rhels7.4-x86_64-install-
> > > cscs_storage"
> > >
> > > The following 3 files are created in /tftpboot/xcat/xnba/nodes :
> > >
> > > server01
> > > server01.elilo
> > > server01.uefi
> > >
> > > I'm suspecting a problem with the BIOS version but I'm not sure.
> > >
> > > Thank you for any advice,
> > >
> > > Carmelo Ponti
> > >
> > >
> > >
> > > --
> > >
> > > ---------------------------------------------------------------
> > > ----
> > > ---
> > >
> > > Carmelo Ponti System Engineer
> > >
> > > CSCS Swiss Center for Scientific Computing
> > >
> > > Via Trevano 131 Email: cpo...@cscs.ch<mailto:cponti@cscs.
> > > ch
> > >
> > > CH-6900 Lugano http://www.cscs.ch
> > >
> > > Phone: +41 91 610 82 15/Fax: +41 91 610
> > > 82
> > > 82
> > >
> > > ---------------------------------------------------------------
> > > ----
> > > ---
> > > ---------------------------------------------------------------
> > > ----
> > > -----------
> > > Check out the vibrant tech community on one of the world's most
> > > engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> > > _______________________________________________
> > > xCAT-user mailing list
> > > xCAT-user@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/xcat-user
> >
> > --
> > -------------------------------------------------------------------
> > ---
> > Carmelo Ponti System
> > Engineer
> > CSCS Swiss Center for Scientific Computing
> > Via Trevano 131 Email: cpo...@cscs.ch
> > CH-6900 Lugano http://www.cscs.ch
> > Phone: +41 91 610 82 15/Fax: +41 91 610 82
> > 82
> > -------------------------------------------------------------------
> > ---
> >
> > -------------------------------------------------------------------
> > -----------
> > Check out the vibrant tech community on one of the world's most
> > engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> > _______________________________________________
> > xCAT-user mailing list
> > xCAT-user@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/xcat-user
> > -------------------------------------------------------------------
> > -----------
> > Check out the vibrant tech community on one of the world's most
> > engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> > _______________________________________________
> > xCAT-user mailing list
> > xCAT-user@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/xcat-user
>
> -------------------------------------------------------------------
> -----------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> xCAT-user mailing list
> xCAT-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/xcat-user
--
----------------------------------------------------------------------
Carmelo Ponti System Engineer
CSCS Swiss Center for Scientific Computing
Via Trevano 131 Email: cpo...@cscs.ch
CH-6900 Lugano http://www.cscs.ch
Phone: +41 91 610 82 15/Fax: +41 91 610 82 82
----------------------------------------------------------------------
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
xCAT-user mailing list
xCAT-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/xcat-user