PXE Plugin

Skip to end of metadata
Go to start of metadata

Plugin Information

Plugin ID pxe Changes In Latest Release
Since Latest Release
Latest Release
Latest Release Date
Required Core
Dependencies
1.5
Feb 02, 2010
1.322
Source Code
Issue Tracking
Maintainer(s)
Subversion
Open Issues
n/a (id: kohsuke)
Usage Installations 2013-Apr 65
2013-May 71
2013-Jun 73
2013-Jul 73
2013-Aug 68
2013-Sep 69
2013-Oct 69
2013-Nov 65
2013-Dec 67
2014-Jan 69
2014-Feb 72
2014-Mar 66

This plugin enhances Jenkins to support network-booting PCs for rapid, hands-free installations of various OSes, thereby making new slave installations easier.

More specifically, this plugin adds the TFTP service and proxy DHCP service to Jenkins. These two combinations enable PCs on the same network to network boot (also known as PXE boot) and install OSes such as Linux, Solaris, and Windows.

This plugin assumes that your network already has a functioning DHCP server, running on a computer different from Jenkins master.

Set up

Download the *.iso files for OSes that you want to install. Currently, the following OSes are supported. See the respective page for what ISO file you need.

Place those ISO files on the Jenkins master, and tell Jenkins where they are. Go to "Manage Jenkins" > "Network Slave Installation Management" > "Configure":

Configure Jenkins about the additional configuration information. This is necessary because TFTP and DHCP services require the root privilege on Unix.

Installing PCs

Put a PC on the same network as the Jenkins master (IOW, topology-wise close enough so that broadcast UDP packets from PCs get to Jenkins), and boot from network (on most PCs, this is done by pressing F12 during the BIOS POST screen.)

If pressing F12 doesn't help
Some BIOS has a separate configuration entry to enable/disable PXE boot. Some BIOS requires you to tweak boot priority list to boot from network. If your PC can't seem to boot from network, go into BIOS set up, and look for keywords like 'PXE', 'LAN', 'boot priority', 'boot device', etc.
Installing PCs on the remote network
If your PCs to be network booted are located in a different network, run "java -jar hudson-proxy-service-jar-with-dependencies.jar UrlOfJenkins" on a computer in the same network as the new PC to have it relay the request.

Once the network boot menu appears. Choose the OS that you want to install.

Depending on the OSes, you can choose to install interactively or automatically. The interactive installation option can be convenient for installing PCs for use outside Jenkins.

If you choose automatic installation, PCs will install itself and reboot by itself.

Future Work

  • Documenting Windows auto installation
  • Advanced mode that lets people specify the full kickstart/preseed/ai-manifest files
  • Automatically register newly installed PCs as Jenkins slaves
  • OS support is extensible. Contributions of new OS types are welcome.

Changelog

Version 1.5 (Feb 2 2010)
  • Supported booting OracleVM Server.
  • Supported booting VMWare ESXi.
Version 1.4 (Jan 9 2010)
  • Allow override of root URL with hudson.plugins.pxe.PXE.rootURL system property.
Version 1.3 (Sep 3 2009)
  • Ubuntu installer exposes more configuration options now.
  • DHCP proxy service can now selectively respond to requests, allowing multiple network boot services to co-exist.
Version 1.2 (May 15 2009)
  • Added Parted Magic support for disk re-partitioning
  • Updated Ubuntu preseeding file to work with 9.04.
Version 1.1 (May 10 2009)
  • Corrected typo
Version 1.0 (May 3 2009)
  • Initial version

Labels

Edit
plugin-cluster plugin-cluster Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

Add Comment