Pxe Uefi Manual

16
Boot Manual For Emulex ® Adapters One Network. One Company. P004445-02A Rev. A Connect with Emulex.

Transcript of Pxe Uefi Manual

Page 1: Pxe Uefi Manual

Boot ManualFor Emulex® Adapters

One Network. One Company.

P004445-02A Rev. A Connect with Emulex.

Page 2: Pxe Uefi Manual

PXE Boot Code User Manual Page ii

Copyright © 2003-2009 Emulex. All rights reserved worldwide. No part of this document may be reproduced by any means or translated to any electronic medium without the prior written consent of Emulex.

Information furnished by Emulex is believed to be accurate and reliable. However, no responsibility is assumed by Emulex for its use; or for any infringements of patents or other rights of third parties which may result from its use. No license is granted by implication or otherwise under any patent, copyright or related rights of Emulex.

Emulex, the Emulex logo, AutoPilot Installer, AutoPilot Manager, BlockGuard, Connectivity Continuum, Convergenomics, Emulex Connect, Emulex Secure, EZPilot, FibreSpy, HBAnyware, InSpeed, LightPulse, MultiPulse, OneCommand, OneConnect, One Network. One Company., SBOD, SLI, and VEngine are trademarks of Emulex. All other brand or product names referenced herein are trademarks or registered trademarks of their respective companies or organizations.

Emulex provides this manual "as is" without any warranty of any kind, either expressed or implied, including but not limited to the implied warranties of merchantability or fitness for a particular purpose. Emulex may make improvements and changes to the product described in this manual at any time and without any notice. Emulex assumes no responsibility for its use, nor for any infringements of patents or other rights of third parties that may result. Periodic changes are made to information contained herein; although these changes will be incorporated into new editions of this manual, Emulex disclaims any undertaking to give notice of such changes.

Emulex, 3333 Susan Street Costa Mesa, CA 92626

Page 3: Pxe Uefi Manual

PXE Boot Code User Manual Page iii

Introduction.............................................................................................................. 1

Pre-OS .............................................................................................................. 1PXE Boot Process............................................................................................. 2

Linux Servers........................................................................................................... 4

RHEL 5 – PXE Remote Install Procedure.......................................................... 4

Windows Server 2003, Windows Server 2008 and Windows Server 2008 R2 ......... 7

EFI Servers ............................................................................................................. 8

Firmware Components ...................................................................................... 8Loading the driver from the EFI Shell ................................................................ 8Configuring the Emulex Network Interface Card (NIC) .................................... 11

Glossary ................................................................................................................ 13

Page 4: Pxe Uefi Manual

Boot Code User Manual Page 1

IntroductionThis manual describes using and configuring the preboot execution environment (PXE or 'pixie') to boot computers using a network interface independently of available data storage devices (such as hard disks) or installed operating systems.

This manual also provides information for the Universal Extensible Firmware Interface (UEFI) PXE option (read-only memory) ROM, loading the Emulex Universal Network Driver Interface (ELX UNDI) driver from the EFI shell and configuring the Network Interface Card (NIC).

The PXE protocol is a combination of the Dynamic Host Control Protocol (DHCP) and the Trivial File Transfer Protocol (TFTP) with subtle modifications to both. DHCP locates the appropriate boot server or servers, and TFTP downloads the initial bootstrap program and additional files.

Network booting allows you to:

• Boot diskless systems such as thin clients and dedicated systems

• Deploy software and the operating system (OS) for new systems

• Automate system maintenance, such as backups

• Automate system checking, such as virus scanning

• Ensure a secure system

Pre-OS

PXE can be used in a "pre-OS" environment. Pre-OS is the process of loading a small operating environment to perform a client management task before loading the final operating system from the local hard drive. For example, with a pre-OS you can scan the hard drive for viruses. This guarantees that the client is not infected before it starts. The Windows Deployment Services uses this to install operation systems on local disks or Byte File System (BFS) disks.

Page 5: Pxe Uefi Manual

Boot Code User Manual Page 2

PXE Boot Process

The PXE client boots up and starts up the PXE boot read-only memory (ROM). This is the boot code physically located on the network interface card (NIC) adapter.

Figure 1 shows the boot process.

1. The PXE boot ROM sends a DHCP request extended with PXE specific options (step 1).

2. The DHCP responses contain the DHCP options (DHCPOFFERs) that include the Network Bootstrap Program (NBP) filename and boot server lists(steps 2 through 5).

3. The PXE client attempts to download the specified NBP over TFTP from one of the specified boot servers (steps 6 and 7).

4. The PXE client executes the downloaded NBP (step 8).

Figure 1: PXE Boot Process

Note: If any of these steps fail, the boot process continues using the next available device in the boot sequence.

PXE Client

DHCP/ProxyDHCP Server

PXE Client

DHCP/Proxy DHCP

Service

DHCP/Proxy DHCP ServiePXE

Client

PXE Client

PXE Client

PXE Client

Boot Server

Boot Service

M/TFTP Service

DHCP Discover to Port 67Includes PXEClient Extensions

Extended DHCP Offer to port 68Includes PXE server extensions,

DHCP option tags,and Client IP address

DCHP Request to installation server port 67Includes PXEClient extensions and

Other DHCP option tags

DHCP Ack reply to Port 68

Boot Service Discover to port 67 or 4011Includes PXEClient extensions and

Other DHCP option tags

Boot Service Ack reply to client source portIncludes PXEServer extensions and

Network Bootstrap Program (NBP) file name

NBP download request to TFTP port 69or MTFTP port from Boot Service Ask

NBP download to clients port

Step 1

Step 2

Step 3

Step 4

Step 5

Step 6

Step 7

Step 8

Step 9

Client executes NBP

Page 6: Pxe Uefi Manual

Boot Code User Manual Page 3

During system boot, ports that support PXE-UNDI are displayed (Figure 2).

Figure 2: Boot screen

Page 7: Pxe Uefi Manual

Boot Code User Manual Page 4

Linux Servers

RHEL 5 – PXE Remote Install Procedure

The following services must be configured to remotely install PXE:

• Network File System (NFS) server (configure a local or remote machine on which to download the installation)

• DHCP server

• TFTP server

• PXE boot server - system-config-netboot will be used to configure the PXE server

To configure these services:

1. In the directory with the installation tree, edit the NFS server configuration file vi /etc/exportfs. In the following example the /mnt/rhel5364 directory contains the RHEL 5.3 installation:

#root@localhost#vi /etc/exportfs (Add " /mnt/rhel5364 *(ro,sync) "#root@localhost#exportfs -a (reflect changes in NFS Server)

a. Edit the Linux NFS configuration Services. Type:

#root@localhost#etc/rc.d/init.d/portmap start#root@localhost#/etc/rc.d/init.d/nfslock start#root@localhost#/etc/rc.d/init.d/nfs start

b. Verify NFS Server is Running

#root@localhost#rpcinfo -p

2. Edit the DHCP Server configuration file. Type:

[root@bgpxetest ~]#vi /etc/dhcpd.conf Add the following:ddns-update-style interim; subnet 11.0.0.0 netmask 255.0.0.0 { range 11.0.0.50 11.0.0.254; default-lease-time 3600; max-lease-time 4800; option subnet-mask 255.0.0.0; option router 11.0.0.1; option domain-name "pxe_text"; option name-server 11.0.0.20; option time-offset -8; } host bg-qa-189 { next-server 11.0.0.34; (TFTP server IPAddress) hardware ethernet 00:16:88:07:03:01; fixed-address 11.0.0.189; option host-name "suse_189"; filename "pxelinux.0"; } [root@bgpxetest ~]#service dhcpd restart

Note: System-config-nfs also exports /mnt/rhel5364/

Page 8: Pxe Uefi Manual

Boot Code User Manual Page 5

3. Configure the TFTP server on Linux. Type:

Edit TFTP Server Configuration file[root@bgpxetest ~]#vi /etc/xinetd.d/tftp service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /tftpboot/ disable = no per_source = 11 cps = 100 2 flags = IPv4 } [root@bgpxetest ~]#service xinetd restart

4. Install the PXE boot server. Type:

root@bgpxetest ~]#rpm -ivh system-config-netboot-0.1.45.1-1.el5

PXE Boot Server configuration[root@bgpxetest ~]#system-config-netboot

The -------------- utility opens.

a. Click Network Install. A dialog box opens. Add the following fields:

Operating system identifier -> /tftpboot/linux-install Description -> pxeSelect protocol for installation -> NFSKickstart Server ipaddress -> 10.192.194.110Location ->/mnt/rhel5364

b. Click Apply. When prompted, click OK. Text similar to the following is displayed:

Adding PXE Hosts New -> Hostname or IPaddress ->11.0.0.34 Operating system ->/tftpboot/linux-install

c. When prompted, click Apply. When prompted, click OK.

5. Reboot the machine and press <F12> to boot from the PXE server. Pressing <F12> accesses the DHCP server IP and the Boot Linux image. A screen similar to Figure 3 is displayed.

Note: The boot order can be selected or changed from the BBS menu.

Page 9: Pxe Uefi Manual

Boot Code User Manual Page 6

Figure 3: DHCP Assignment and Bootstrap Download

Figure 4: Installation progress screen

The CD installation process resumes.

Page 10: Pxe Uefi Manual

Boot Code User Manual Page 7

Windows Server 2003, Windows Server 2008 and Windows Server 2008 R2For remote installation with PXE, a network driver for the Emulex CNA must be part of the client's installation image on the server. The current versions of Windows Server 2003, Windows Server 008 and Windows Server 2008 R2 do not include network drivers for Emulex CNA.

To add the image and installation using the driver with the Remote Installation Service Setup, select:

Start Menu > Programs > Administrative Tools > Remote Installation Services Setup.

For more information, refer to Microsoft Article ID Q246184 - "How to Add Third-Party OEM Network Adapters to RIS Installations."

In addition to the network driver for the Emulex CNA, you must configure the following services to use PXE for remote installations:

• DHCP server

• Remote Installation Services (RIS)

• Windows Deployment Server (WDS)

For detailed information on deploying and managing remote installations on Windows Server 2003, Windows Server 2008 and Windows Server 2008 R2, visit Microsoft TechNet at http://technet.microsoft.com. Searching on the bulleted terms will direct you to Microsoft's wide-ranging documentation on these subjects.

Microsoft provides extensive documentation on deploying its operating systems for remote installations, and different setups may be required depending on your individual implementation. Microsoft provides step-by-step guides for its Windows Deployment Services to walk you through configuring your server, adding images, and installing an operating system. It also includes instructions for more advanced tasks like creating multicast transmissions, creating custom images, and performing an unattended installation.

Page 11: Pxe Uefi Manual

Boot Code User Manual Page 8

EFI ServersThe UEFI PXE option rom supports the following applications:

• Windows Server 2003 and 2008 Remote Installation Support (RIS)

• Redhat Enterprise Linux (32 bit)

Firmware Components

The ELX UNDI driver implements the PXE UNDI applications programming interface (API) services used by the Simple Network Protocol (SNP) driver during PXE boot and while executing a network bootstrap program (NBP). The boot hardware abstraction layer (HAL) provides the OneConnect input/output control (IOCTL) interface API for the UNDI driver.

Loading the driver from the EFI Shell

The PXE base code must be available in a UEFI platform that is required to boot a UEFI-complaint operation system in your network.

To load the driver from the EFI shell:

1. Load the driver from the EFI shell using "load drivername.efi" command.

fs0:\> load be.efi

Information similar to the following will be displayed:

load: Image fs0:\be.efi loaded at 799F0000 - Success

Emulex OneConnect OCe10100, NIC/TOE, v1.09A, Port 0

2. Type:

fs0:\> exit

The System Configuration and Boot Management Menu is displayed (Figure 5).

Page 12: Pxe Uefi Manual

Boot Code User Manual Page 9

.

Figure 5: System Configuration and Boot Management menu.

3. Select Boot Manager and press <Enter>. The Boot Manager menu is displayed.

Figure 6: Boot Manager menu

4. Select Boot From File and press <Enter>. The File Explorer window is displayed.

Page 13: Pxe Uefi Manual

Boot Code User Manual Page 10

5. Select the appropriate device from the File Explorer window and press <Enter>. NIC-bootable devices are listed by MAC address.

Figure 7: File Explorer window

Page 14: Pxe Uefi Manual

Boot Code User Manual Page 11

Configuring the Emulex Network Interface Card (NIC)

1. From the System Configuration and Boot Management menu (Figure 5 on page 9), select System Settings and press <Enter>. The System Settings menu is displayed.

Figure 8: System Settings menu

Page 15: Pxe Uefi Manual

Boot Code User Manual Page 12

2. Select Emulex NIC Configuration Utility and press <Enter>. The Emulex NIC Configuration information is displayed.

Figure 9: Emulex NIC Configuration information

3. Enable or disable the vNIC switch. All other fields are read-only.

4. Select Save and press <Enter>. Your changes are saved.

Page 16: Pxe Uefi Manual

Boot Code User Manual Page 13

GlossaryBFS - OpenEdition Byte File System. This is a directory-based file system created by IBM.

BootP - Bootstrap Protocol. Predecessor to DHCP. This protocol can be configured to allow PXE booting.

Bootstrapping - The loading of code from a disk or other storage device into a computer’s memory.

DHCP - Dynamic Host Configuration Protocol is a service provided in many networks as a method of obtaining an IP address on a network. When the DHCP server sends the client the IP address, it may also send the IP address of a TFTP server and a file to download from the TFTP server that the client should download and run.

ELX UNDI - Emulex Universal Network Driver Interface.

HAL - Hardware Abstraction Layer. A layer of programming that permits a computer operating system to communicate with a hardware device at an abstract level rather than at a specific hardware level.

NBP - Network Bootstrap Program. This is the file initially downloaded by the PXE client, and then executed to take over booting the computer.

NFS - Network File System. A distributed file system and its associated network protocol originally developed by Sun Microsystems Computer Corporation and commonly implemented in UNIX systems, although most other computer systems have implemented NFS clients and/or servers.

NIC - Network Interface Card. An I/O adapter that connects a computer or other type of node to a network.

PXE - Pre-boot eXecution Environment. PXE is a method for booting a computer over the network, without touching any physical storage on the computer (less RAM).

ROM - Read-Only Memory. Memory that can only be read, as opposed to random-access memory (RAM) which is memory that can be read and written.

SNP - Simple Network Protocol. A protocol that provides a packet-level interface to a network adapter.

TFTP - Trivial FTP (server). Trivial FTP is a scaled-down version of FTP that uses UDP packets instead of TCP packets. TFTP is used in PXE booting to obtain an NBP to run upon boot, and more often than not, additional files that the NBP would need.

UDP - User Datagram Protocol. An Internet protocol that provides connectionless datagram delivery service to applications. Abbreviated UDP, UDP over IP adds the ability to address multiple endpoints within a single network node to IP.

UEFI - Universal Extensible Firmware Interface.

WDS - Windows Deployment Services.An updated version of Remote Installation Services (RIS). Use Windows Deployment Services to deploy Windows operating systems over a network without a CD or DVD.