From 8ee0f296d7565c96283f0a8158fe3010e9f676e9 Mon Sep 17 00:00:00 2001 From: Daniel Juarez <daniel.juarez.gonzalez@cern.ch> Date: Fri, 18 Mar 2022 12:10:26 +0100 Subject: [PATCH] Add manual workaround for old BIOS nodes --- docs/aims2/aims2legacyworkaround.md | 109 ++++++++-------------------- 1 file changed, 31 insertions(+), 78 deletions(-) diff --git a/docs/aims2/aims2legacyworkaround.md b/docs/aims2/aims2legacyworkaround.md index cf00935..e7f7bd0 100644 --- a/docs/aims2/aims2legacyworkaround.md +++ b/docs/aims2/aims2legacyworkaround.md @@ -1,90 +1,43 @@ # Legacy workaround -Use this workaround ONLY for systems which cannot boot using standard configuration, as of Feb 2016 this concerns following types of network cards: Mellanox Connect X-2, Chelsio T520-LL-CR, QLogic cLOM8215 +After [OTG0069753](https://cern.service-now.com/service-portal?id=outage&n=OTG0069753), legacy workaround does no longer exist. Nonetheless if you still need to save some old out of warranty nodes and be able to make them PXE boot here is what you need to do. **We hope you never have to do this**: -## Enable PXE workaround +* Identify the node's MAC addresses. If you know which one it is going to use for PXE booting, use that one only, if not, **do this for each of them**. + * You can get the MAC addresses by checking on LANDB or by checking them if it is registered on AIMS with `aims2client showhost TESTNODE --full` +* Create a `dnsmasq` conf file that matches this MAC address + * For a MAC address `FA-16-3E-C2-6A-EC` you will create `/aims_share/dnsmasq/01-fa-16-3e-c2-6a-ec.lgcy`. Note it always starts with `01-`. + * Corresponding file content will be `dhcp-mac=x86PC,fa:16:3e:c2:6a:ec` +* **Restart** `dnsmasq` service on all the AIMS hosts otherwise it will not take this configuration into account. +* Create the required PXE conf file for SYSLINUX manually. For the previous example: -Make sure your aims2 client version is at least 2.11. - -Add affected system to AIMS2: - -```bash -# aims2 addhost HOSTNAME ``` - -Enable PXE workaround: - -```bash -# aims2 pxelgcyon HOSTNAME +$ cat /aims_share/tftpboot/aims/config/bios/01-fa-16-3e-c2-6a-ec +default linux + label linux + kernel http://aims.cern.ch/aims/boot/CC79_X86_64/vmlinuz + append initrd=http://aims.cern.ch/aims/boot/CC79_X86_64/initrd ip=dhcp repo=http://linuxsoft.cern.ch/cern/centos/7.9/os/x86_64/ inst.ks=http://aims.cern.ch/aims/ks + ipappend 2 ``` -Optional: Set PXE boot target: - -```bash -# aims2 pxeon HOSTNAME TARGET -``` - -Wait until AIMS2 reloads dnsmasq configuration, this takes up to 30s. - -```bash -# aims2 showhost HOSTNAME -all - -Hostname: HOSTNAME - -Interface HWADDR: XX-XX-XX-XX-XX-XX - -PXE status: OFF - -PXE boot options: none - -PXE boot type: BIOS - -PXE boot target: none - -PXE noexpiry: N - -PXE boot legacy: Y - -Registered by: jpolok +* Confirm with the user once it has been installed then remove the configuration files you added and restart the `dnsmasq` service once again. -Registered at: 2016/02/29 07:48:28 +!!! warning + If the machine is still unable to PXE boot as it should, then it may be because it is that old that it cannot even use HTTP to download the required files. In that case you will have to do the following adaptations to the previous instructions -Enabled at: ????/??/?? ??:??:?? +* The `dnsmasq` conf file (`/aims_share/dnsmasq/01-fa-16-3e-c2-6a-ec.lgcy`) that matches the MAC address will have to have this content instead: + * `dhcp-mac=x86PClgcy,fa:16:3e:c2:6a:ec` + * This will make it use an older SYSLINUX version +* Add this line to each and every of AIMS nodes `/etc/dnsmasq.conf`: + * `pxe-service=tag:x86PClgcy,x86PC, "netboot x86PClgcy", /aims/loader/bios/pxelinux` +* **Restart** `dnsmasq` service on all the AIMS hosts otherwise it will not take this configuration into account. +* Create the required PXE conf file for SYSLINUX manually. For the previous example: -Booted at: ????/??/?? ??:??:?? - -Disabled at: ????/??/?? ??:??:?? - - -## Enable PXE workaround - alternative syntax - -Requires aims2 client version 2.13 (at least). - -```bash -# aims2 addhost --bios --lgcy --hostname HOSTNAME --name TARGET --kickstart=KSFILE [ --kopts=KSOPTS ] ``` - -## Enable PXE workaround - ai-installhost - -For systems installed using ai-installhost please add ``-mode bioslgcy` flag to the command (this is temporary until `ai-installhost` will be able to autodetect affected hardware): - -```bash -# ai-installhost --mode bioslgcy HOSTNAME.cern.ch ... +$ cat /aims_share/tftpboot/aims/config/bios/01-fa-16-3e-c2-6a-ec +default linux + label linux + kernel /aims/boot/CC79_X86_64/vmlinuz + append initrd=/aims/boot/CC79_X86_64/initrd ip=dhcp repo=http://linuxsoft.cern.ch/cern/centos/7.9/os/x86_64/ inst.ks=http://aims.cern.ch/aims/ks + ipappend 2 ``` - -## Disable PXE workaround - -The PXE workaround stays active until one of the following commands is issued: - -```bash -# aims2 pxelgcyoff HOSTNAME - -# aims2 pxeon HOSTNAME TARGET uefi - -# aims2 delhost HOSTNAME - -# aims2 addhost HOSTNAME -``` - -Installing the system or using `# aims2 pxeoff HOSTNAME` does **NOT** disable the workaround. - +* Confirm with the user once it has been installed then remove the configuration files you added and restart the `dnsmasq` service once again. -- GitLab