Difference between revisions of "NetBoot server principle"

 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
[[Category:Linux]]
 +
 +
 +
 +
=Requirements=
 +
 +
To setup a PXE NetBoot infrastructure you MUST have:
 +
* [[DHCP server installation | DHCP server]]
 +
* [[TFTP server]]
 +
* [[NFS server]]
 +
 +
Optional:
 +
* [[DNS server]]
 +
* [[Samba server]]
 +
 +
  
  
 
=Overview of a NetBoot sequence=
 
=Overview of a NetBoot sequence=
  
[[File:NetBoot sequence principle.png]]
+
 
 +
[[File:NetBoot sequence principle.png|none|NetBoot sequence overview (FreeBSD (c))]]
 +
 
  
 
1. Client broadcasts a DHCPDISCOVER message.
 
1. Client broadcasts a DHCPDISCOVER message.
  
 
2. The DHCP server responds with:
 
2. The DHCP server responds with:
** the computer IP address,  
+
* the computer IP address,  
** TFTP server address (called "next-server"),  
+
* TFTP server address (called "next-server"),  
** PXE boot filename to load,
+
* PXE boot filename to load,
** NetBoot root-path values.
+
* NetBoot root-path values.
  
 
3. The client sends a TFTP request to "next-server", asking to retrieve the PXE filename.
 
3. The client sends a TFTP request to "next-server", asking to retrieve the PXE filename.
Line 18: Line 36:
  
 
5. Many things here:
 
5. Many things here:
** The client executes filename, which is in PXE format.  
+
* The client executes filename, which is in PXE format.  
** The PXE menu will be display so the user can choose which kernel to load
+
* The PXE menu will be display so the user can choose which kernel to load
** Then PXE loads the kernel.  
+
* Then PXE loads the kernel.  
** When the kernel executes, the root file system specified by root-path is mounted.  
+
* When the kernel executes, the root file system specified by root-path is mounted. If it's a diskless workstation then the client distribution will be mounted in NFS mode.
  If it's a diskless workstation then the client distribution will be mounted in NFS mode.
+
 
  
  
  
 +
=Diskless NetBoot=
  
=Requirements=
+
The following picture describes the same thing as before in the sequential order:
 +
 
 +
[[File:NetBoot overview step by step.png|none|NetBoot overview step by step]]
 +
 
 +
 
 +
Note that you have to prepare the image before being able to boot on it. ^^
 +
 
 +
 
 +
 
 +
=Installation steps=
 +
 
 +
1. First you need to setup a '''DHCP and DNS''' server.
 +
 
 +
 
 +
2. Then you'll need to setup a '''TFTP server''' and setup some kernels for NetBoot
 +
 
 +
 
 +
3. Setup a '''NFS server'''
 +
 
 +
 
 +
4. Create a '''NFS image'''
  
As you can see on the previous picture, a '''DHCP server + TFTP server''' are mandatory.
 
  
 +
5. Reference the NFS image into the TFTP server
  
It's also good to have a '''DNS server''' to use names instead of IP @.
 
  
 +
6. Run the image ! ;)
  
  
Line 40: Line 79:
 
=References=
 
=References=
  
The overview picture comes from the FreeBSD forum: http://www.nl.freebsd.org/doc/handbook/network-diskless.html
+
The 1st overview picture comes from the FreeBSD forum: http://www.nl.freebsd.org/doc/handbook/network-diskless.html

Latest revision as of 14:47, 21 August 2014



Requirements

To setup a PXE NetBoot infrastructure you MUST have:

Optional:



Overview of a NetBoot sequence

NetBoot sequence overview (FreeBSD (c))


1. Client broadcasts a DHCPDISCOVER message.

2. The DHCP server responds with:

  • the computer IP address,
  • TFTP server address (called "next-server"),
  • PXE boot filename to load,
  • NetBoot root-path values.

3. The client sends a TFTP request to "next-server", asking to retrieve the PXE filename.

4. The TFTP server responds and sends filename to client.

5. Many things here:

  • The client executes filename, which is in PXE format.
  • The PXE menu will be display so the user can choose which kernel to load
  • Then PXE loads the kernel.
  • When the kernel executes, the root file system specified by root-path is mounted. If it's a diskless workstation then the client distribution will be mounted in NFS mode.



Diskless NetBoot

The following picture describes the same thing as before in the sequential order:

NetBoot overview step by step


Note that you have to prepare the image before being able to boot on it. ^^


Installation steps

1. First you need to setup a DHCP and DNS server.


2. Then you'll need to setup a TFTP server and setup some kernels for NetBoot


3. Setup a NFS server


4. Create a NFS image


5. Reference the NFS image into the TFTP server


6. Run the image ! ;)



References

The 1st overview picture comes from the FreeBSD forum: http://www.nl.freebsd.org/doc/handbook/network-diskless.html