Differences

This shows you the differences between two versions of the page.

Link to this comparison view

ks:kickstart [15/08/2019 17:08] (current)
andrew created
Line 1: Line 1:
 +====== Kickstart ======
  
 +
 +===== Overview =====
 +
 +
 +Kickstart provides a means of rapid, unattended deployment of the OS. The process briefly consists of:
 +
 +  * Server is booted using PXE (network boot) to syslinux provided by tftp.\\ ​
 +  * Desired image is selected from the menu screen presented to the user.\\ ​
 +  * OS is deployed to server.\\
 +  * Post-installation script makes appropriate changes to configurations and installs any additional packages requried.\\ ​
 +  * Build is complete.\\ ​
 +
 +
 +===== Server Details =====
 +
 +Kickstart is currently running on [[ops01|ops01]].
 +
 +Files can be browsed at http://​192.168.123.45/​ks
 +
 +
 +===== Directory Structure =====
 +
 +
 +^ Directory ^ Description ^
 +| /kickstart | Base directory for all Kickstart related files |
 +| | |
 +| /​kickstart/​**backup** | Contains backups and scripts |
 +| /​kickstart/​**http** | All files published by http used by Kickstart clients |
 +| /​kickstart/​**tftpboot** | PXE boot configs and files |
 +| | |
 +| /​kickstart/​**http**/​cfg | Kickstart Configuration Files |
 +| /​kickstart/​**http**/​extra | Additional scripts and packages |
 +| /​kickstart/​**http**/​extra/​scripts/​ks_post_install | Post-install scripts |
 +| /​kickstart/​**http**/​os | Repo/​OS/​Packages used for deployment |
 +| | |
 +| /​kickstart/​**tftpboot**/​isolinux| Kernel and initrd files |
 +| /​kickstart/​**tftpboot**/​msgs| Menus displayed once PXE is booted |
 +| /​kickstart/​**tftpboot**/​isolinux| Kernel and initrd files |
 +| /​kickstart/​**tftpboot**/​pxelinux.0| File used to boot syslinux PXE |
 +| /​kickstart/​**tftpboot**/​pxelinux.cfg| Names boot labels used for booting after syslinux phase |
 +
 +The following files are worthy of note:
 +^ File ^ Description ^
 +| /​kickstart/​http/​extra/​scripts/​ks_post_install/​config_server.sh | The main post-install script. Everything happens from here once the initial Kickstart build has completed and the OS is installed. |
 +| /​kickstart/​http/​extra/​scripts/​ks_post_install/​mac.db | Used during post-build to match the MAC address of the server to apply the appropriate network settings. |
 +| /​kickstart/​http/​extra/​scripts/​ks_post_install/​update_tar.sh | **IMPORTANT!!** If you make any changes to any files you MUST run this file to update the tar file the server retrieves to run all the post install scripts. |
 +
 +===== Post Install Scripts =====
 +
 +After using the *.ks kickstart file to configure the server, at the bottom of the ks file is a command to wget and extract http://​KS_SERVER/​ks/​ks_post_install.tar to /​root/​ks_post_install.
 +**config_server.sh** is run. This is the main file containing all directives which makes the following changes:
 +\\**Note the variables at the top of the script.**\\
 +  - Sets timezone to UTC
 +  - Syncs clock to internal NTP servers
 +  - Set modprobe aliases for bnx2 and be2net NICs
 +  - Set networking:
 +   - Hostname
 +   - IP Address, Netmask, Gateway
 +   - Disable IPv6
 +   - Hosts file (and additional entries only for DB servers)
 +   - /​etc/​resolve.conf
 +   - Create NIC bonding for eth0/1 (bond0) (mode=1)
 +   - DB Only: create bond1 for eth2/3 (mode=0)
 +  - Disable uncessary services (chkconfig off)
 +  - Set permissions on some system dirs to tighten security
 +  - RGS servers only: set some RGS specific OS parameters
 +  - Create users and groups where applicable: wworks, nagios, gi-hpsim with consistent GIDs and UIDs
 +  - Set .ssh dir such as SSH keys for wworks, nagios
 +  - Configure server for LDAP authentication
 +  - Set sudoers file
 +  - Set PS1 prompt, using RED colour for root, green for non-root.
 +  - Tighten sshd security and disable remote root login.
 +  - Set login prompt (issue/​banner)
 +  - Set boot resolution to 1024x768
 +  - Configure exim
 +  - Set NTP sources
 +  - Configure local yum repo
 +  - Configure Spacewalk and register server
 +  - Configure Syslog to gi-log01
 +  - For servers with HBA, add recommended QLogic/HP modprobe.conf kernel options
 +  - Configure multipath.conf with recommended HP parameters for EVA8400 or MSA P2000 G3
 +  - DB Only: Retrieve and configure Oracle binaries, set some system parameters
 +  - DB Only: Setup keyless SSH for Oracle between DB servers
 +  - Install HP Support Pack RPMs
 +  - Set VCA config and passwords (HP Version Control Agent) to gi-sma01
 +  - Configure SNMP and set traps to gi-sma01 (HP SIM)
 +  - Configure iLO:
 +    - Set/update iLO Name (also appears as Blade name in Onboard Administrator GUI)
 +    - Set/update iLO Hostname (gi-<​server>​**__i__**)
 +    - Create/set usernames/​passwords:​ gibtechops, uktechops, lvtechops
 +    - Set SNMP traps to point to gi-sma01 (HP SIM)
 +    - * Note: These run at first boot and you may lose access to iLO while it resets.
 +  - Write all logs and output to /​root/​kickstart_logs
 +  - Send email notification of server build
 +
 +
 +
 + 

ks/kickstart.txt ยท Last modified: 15/08/2019 17:08 by andrew