Fetch boot files via http instead of TFTP » History » Version 5
Alexander Chuzhoy, 12/16/2012 04:47 AM
1 | 1 | Alexander Chuzhoy | h1. Deal with updated pxeboot files without the need to deletere-download them |
---|---|---|---|
2 | |||
3 | Let's say you use a beta version of some Linux release, and although the installation tree update is easily resolved by having a soft link named "Latest" that always points to the latest tree, you still have a problem with the pxeboot files (i.e vmlinuz and initrd), as these files need to be placed under your tftp shared directory and updated to match the installation tree. |
||
4 | |||
5 | Here are the steps to deal with the described above: |
||
6 | |||
7 | 2 | Ohad Levy | # In your foreman instance, go to "Provisioning templates".Create a new template (kind: PXELinux) and have the following in the body: |
8 | 5 | Alexander Chuzhoy | ( You'll need to have the ipxe.lkrn file in your tftpboot directory. Can be downloaded from here: http://ipxe.org/download.) |
9 | 3 | Ohad Levy | <pre><code>default linux |
10 | 2 | Ohad Levy | label linux |
11 | IPAPPEND 2 |
||
12 | kernel ipxe.lkrn |
||
13 | append dhcp && chain <%25= foreman_url('gPXE') %25> |
||
14 | 1 | Alexander Chuzhoy | </code></pre> |
15 | 2 | Ohad Levy | # Make sure you have a template (kind: gPXE) with the following in the body: |
16 | 3 | Ohad Levy | <pre><code>#!gpxe |
17 | 2 | Ohad Levy | kernel <%25= "#{@host.url_for_boot(:kernel)}" %25> ks=<%25= foreman_url("provision")%25> |
18 | initrd <%25= "#{@host.url_for_boot(:initrd)}" %25> |
||
19 | boot |
||
20 | </code></pre> |
||
21 | # Make sure you have your (or default) kickstart template (kind: provision). |
||
22 | # In the association tab of the above templates select the desired "applicable operating systems". |
||
23 | # Go to "Operating Systems" and in the "Templates" tab select the respective "provision", "gPXE" and "PXELinux" templates (should be 3 templates in total). |
||
24 | # Now you can either assign the OS to some host group or simply edit some host and change its OS. |
||
25 | # That's it - verify it works! |