-
Notifications
You must be signed in to change notification settings - Fork 26
QuickStartGuide
- An installed and supported distro (CentOS-6, CentOS-7, Fedora-27, Fedora-28)
- all packages needed for booting a network client:
- DHCP server, tftp-server, PXE binaries (syslinux-tftpboot)
- systemimager packages (deb needs packaging update)
- For rpm based distro, look for oscar-release rpm in http://svn.oscar.openclustergroup.org/repos/unstable/ and install it; it'll configure the repo for you. (This repo is subject to change in the future for a SystemImager dedicated one). => example: rpm -ivh http://svn.oscar.openclustergroup.org/repos/unstable/rhel-7-x86_64/oscar-release-6.1.3-0.20180425.el7.centos.noarch.rpm
- yum -y install systemimager-server dracut-systemimager systemimager-x86_64initrd_template systemimager-common systemimager-x86_64boot-standard
-
/etc/systemimager/systemimager.conf => Check if all default values suit your needs and filesystem hierarchy.
-
DHCP
- /usr/sbin/si_mkdhcpserver => This will produce a /etc/dhcp/dhcpd.conf file. Check it and tweak it for your needs, then restart the dhcpd service on systemd: systemctl restart dhcpd.service on init.d: service dhcpd restard
-
PXE
- /usr/sbin/si_mkbootserver
-
Rsync
- si_mkrsyncd_conf
-
Systemimager parameters: => Systemimager supports multiple ways to specify parameters.
-
DHCP options traditional way, but it only supports few parameters: image-server, log-server-port, ssh-download-url, flamethrower-directory-port-base and tmpfs-staging
-
PXE cmdline just like any dracut based initramfs, systemimager supports cmdline parameters all starting with the "si." prefix. => see SystemImager imager parameters.
-
configs directory: /var/lib/systemimager/scripts/configs/ it contains files with systemimager variables similar to local.cfg except that it's not local ;-) The file is retreived once network is established. it is either specified using the si.config= PXE cmdline parameter or if a ${IMAGENAME}.conf exists in this directory, then it is read. example: see template
-
disks-layouts directory: /var/lib/systemimager/scripts/disks-layouts it contains files with disks layout in xml format. man autoinstallscript.conf for description of format. example (complex one)
-
local.cfg (deprecated but still supported) Same as above except it is read from old hard drive or from a floppy (USB stick will be supported later). example: /usr/share/doc/systemimager-server/local.cfg
-
- Using golden client and si_getimage
- Using mksiimage from systeminstaller-oscar package
- Prerequisites:
- dhcp server is up and running
- rsyncd is up and running
- an image exists in /var/lib/systemimager/images/
- a disk layout exists in /var/lib/systemimager/scripts/disks-layouts/.xml
- at least si.config= is set in pxe cmdline and a /var/lib/systemimager/scripts/configs/.conf exists and has $IMAGENAME set or si.image-name= is set in pxe cmdline
- no firwall blocks rsync and other systemimager ports
- boot the client using PXE (usually, if PXE boot is not default, pressing F12 at bios boot enables PXE boot)
in PXE menu, choose the apropriate entry you've defined. It should load systemimager imager initramfs.
- steps:
- read cmdline parameters from PXE
- runs pre-install scripts if any
- format disk
- runs main-install if one is defined or if a scrit name matches hostname
- install any mdraid or/and lvm configs in imaged system
- installs bootloader
- runs post-install scripts
- execute post imaging action (either wait, reboot, shutdown of finish booting if modules installed on client matche imager kenrel).
- steps:
- si_monitor_tk Runs this command from server to see imaging progress and see remotely what the console prints on the client being imaged.
- recreating a new systemimager boot initrd using si_mkbootpackage
