The ISO also has a pxeboot_setup.sh utility that is designed to help with setting up a pxeboot server. I don’t think this is currently in the StarlingX
docs, but maybe the following will help:
controller-0:/home/sysadmin# mkdir /mnt/iso
controller-0:/home/sysadmin# mount -o loop bootimage.iso /mnt/iso
mount: /dev/loop0 is write-protected, mounting read-only
controller-0:/home/sysadmin# /mnt/iso/pxeboot_setup.sh -h
Usage: /mnt/iso/pxeboot_setup.sh -u <http base URL> [-t <tftp pxeboot directory>] or [-w <working directory>]
lab:/home/sysadmin# mkdir -p /export/pxeboot
lab:/home/sysadmin# /mnt/iso/pxeboot_setup.sh -u http://someserver:8123/nodeX -t /export/pxeboot/nodeX
Create /export/pxeboot/nodeX
The setup is complete
controller-0:/home/sysadmin#
This will extract the load from the ISO under the specific directory, and setup pxeboot kickstarts using the specified base URL.
This creates a pxeboot.cfg file in the /export/pxeboot/nodeX with install instructions to point to your server, such as:
# Serial Console submenu
label 3
menu label Serial Console
kernel vmlinuz
append initrd=initrd.img bootifonly=1 devfs=nomount inst.repo=http://someserver:8123/nodeX inst.ks=http://someserver:8123/nodeX/pxeboot_smallsystem.cfg
boot_device=sda rootfs_device=sda biosdevname=0 inst.text serial console=ttyS0,115200n8 inst.gpt security_profile=standard user_namespace.enable=1
ipappend 2
with the http server setup so that
http://someserver:8123/nodeX references /export/pxeboot/nodeX, such as with a symlink.
From: chen.dq@neusoft.com <chen.dq@neusoft.com>
Sent: Thursday, September 10, 2020 2:53 AM
To: Amit Mahajan <ebiibe82@gmail.com>; starlingx-discuss@lists.starlingx.io
Subject: [Starlingx-discuss] 答复: Regarding installation of controller-0 from PXE boot server
This may help you:
- Set the NIC for PXE server on the jumper to a static IP.
- Install and config dnsmasq:
```
$ sudo apt-get install dnsmasq
$ sudo vi /etc/dnsmasq.conf
$ sudo service dnsmasq restart
```
Example of /etc/dnsmasq.conf:
```
interface=nic_name ## NIC for PXE Server
bind-interfaces
dhcp-range=10.10.10.150,10.10.10.200 ## DHCP Range for PXE install
dhcp-boot=grubx64.efi ## StarlingX PXE boot file
enable-tftp
tftp-root=/var/lib/tftpboot/uefi ## tftp server location
### Fix PXE/OAM NIC for Test Nodes
# testnode-1
dhcp-host=12:34:56:78:90:AB,10.10.10.151
# testnode-1
dhcp-host=12:34:56:78:90:AC,10.10.10.152
Below is my configuration /etc/dnsmasq.conf:
interface=eno1
# DHCP range-leases
dhcp-range= eno1,192.168.3.50,192.168.3.100,255.255.255.0,1h
# PXE
dhcp-boot=pxelinux.0
# Gateway
dhcp-option=3,192.168.3.3
enable-tftp
tftp-root=/var/lib/tftpboot
dhcp-host=94:c6:91:a9:54:f9,192.168.3.157
sudo apt-get install apache2
systemctl start apache2.service
The attachment is a simple script I wrote, for reference only.
发件人:
Amit Mahajan <ebiibe82@gmail.com>
发送时间: 2020年9月7日
16:34:14
收件人:
starlingx-discuss@lists.starlingx.io
主题: [Starlingx-discuss]
Regarding installation of controller-0 from PXE boot server
Hi All,
Is there any documentation which can guide on setting up a StarlingX PXE boot server so that I can install controller-0 from this PXE server?
Regards,
Amit
---------------------------------------------------------------------------------------------------
Confidentiality Notice: The information contained in this e-mail and any accompanying attachment(s)
is intended only for the use of the intended recipient and may be confidential and/or privileged of
Neusoft Corporation, its subsidiaries and/or its affiliates. If any reader of this communication
is not the intended recipient,unauthorized use,forwarding, printing, storing, disclosure or copying
is strictly prohibited, and may be unlawful.If you have received this communication in error,please
immediately notify the sender by return e-mail, and delete the original message and all copies from
your system. Thank you.
---------------------------------------------------------------------------------------------------