XD10118 Deploy ESX - The Ultimate Guide
XD10118 Deploy ESX - The Ultimate Guide
1.0 Introduction
1.1 Reading this Document 1.2 Overview 1.3 Definitions 1.3.1 What is Microsoft Windows Deployment Service (WDS)? 1.3.2 What is the Microsoft Windows Automated Installation Kit? 1.3.3 What is the Preboot Execution Environment? 1.3.4 What is a ks.cfg File? 1.3.5 What are the initrd.img and vmlinuz Files?
4
4 4 4 4 4 4 4 5
5
5 5 5
7
7 8
8
8 8 9 9 10 10 10
11
11 11 12 13 13 13 13 14 14 14 14 14 15
16
16 17 17 18 18 19 19 19
Appendix A
A1 Using DHCP Reservations to Allocate IP Addresses to ESX Hosts A2 Sample Code A2.1 Create a vSwitch A2.2 Delete a vSwitch A2.3 Create a Port Group A2.4 Delete a Port Group
20
20 22 22 22 22 22
A2.5 Configure a VLAN ID for a Specific Port Group A2.6 Remove a VLAN ID for a Specific Port Group on a vSwitch A2.7 Configure a VLAN ID for all Port Groups on a vSwitch A2.8 Remove a VLAN ID for all Port Groups on a vSwitch A2.9 Link a Network Adaptor to a vSwitch A2.10 Un-link a Network Adaptor from a vSwitch A2.11 Configure a Logon Message (for SSH Connections) A2.12 Configure MOTD Message A2.13 Configure Firewall A2.14 Permit Root Logon via SSH A2.15 Add a Local Account A2.16 NTP Configuration
22 22 22 23 23 23 23 24 24 24 25 25
26
26 26 27 27 28 28 29 30 30 30 31 31 31 31
1.0 Introduction
1.1 Reading this Document
The following standards are used throughout this document. To view the embedded videos, Acrobat 6.0 or higher is required, and may require installation of the Adobe Flash plugin. 1. Sample text
# Sample text
Indicates an action is required, eg: install or configure a component An example, used to illustrate a concept
1.2 Overview
This e-book discusses scripted builds for VMware ESX Server, including optional usage of Microsoft WDS server to deploy a scripted ESX build using PXE boot. Whilst many resources for VMware ESX Server deployment already exist, this guide delves much deeper into scripted technologies, which allow automated provisioning with flexible scripted builds. Although this guide has been written with a focus on ESX4, ESX3.5 is also covered. The e-book also documents the Xtravirt build methodology. This is a custom approach which has enabled many of our customers to rapidly provision ESX servers to a consistent and standardised level. The following table outlines each chapter and its purpose and context.
Chapter Description E-book overview and key definitions Manual tasks to create an automated deployment environment Run scripts provided with e-book to configure the automated deployment environment How to use ks.cfg files for scripting, and steps to take for a basic configuration Examples of advanced scripting for ks.cfg files Explanation of an Xtravirt build methodology and how to apply it
Key scripts are provided in the correct file format within a downloadable iso rather than copy/pasting from the e-book. Information about use of the .iso is provided in Chapter 3. The concepts in this book are discussed at an advanced level and assumes the reader has experience of VMware ESX Server, and familiarity of scripting and Microsoft WDS.
Installation Kit (WAIK) is a collection of tools written by Microsoft. The tools are provided to aid customers deploying Windows. The toolkit provides tools to create and edit images, the Windows Pre-installation Environment (Windows PE), the Windows System Image Manager and many more.
1.3 Definitions
1.3.1 What is Microsoft Windows Deployment Services (WDS)?
Windows Deployment Services (WDS) is a network-based installation technology provided by Microsoft. It is the successor of Microsofts legacy Remote Installation Services (RIS). WDS aids customers in deploying Windows Vista, Windows Server 2008, Windows 2003 Server and Windows XP. WDS deploys disked based images using the proprietary Microsoft WIM format. WDS utilizes PXE boot, resulting in images which can be deployed rapidly to multiple machines simultaneously. WDS is a role included in all editions of Windows Server 2008 and was added to Windows 2003 Server with the introduction of Service Pack 2. It is also shipped within the free of charge Microsoft WAIK toolkit.
The appendices in this book also provide additional scripting samples and manual configurations should the reader choose not to use the automation scripts provided.
2.2 Pre-requisites
Three virtual machines are required to be created before proceeding. The specifications for the 3 virtual machines are outlined in tables within Section 2.3. All VMs should be created at this point. VM 3 will be the target for the scripted deployment.
Name Hardware Compatibility Guest Operating System Role(s) IP Address Subnet Mask DNS & Gateway Memory Hard Disk 1 Hard Disk 2
win2k302 Workstation 7 Windows 2003 Server R2 (with SP2) Windows WDS and IIS FTP Server 192.154.30.2 255.255.255.0 192.154.30.1 384MB 40GB Operating System (not pre-allocated) 40GB for WDS and FTP repositories (not pre-allocated) Note: This must have the Windows drive letter E: assigned
Automated Installation Kit (Microsoft WAIK). Note that all IP addresses referred to in this document are based on the scenario outlined. You may require or choose to use alternative IP addressing. Next Steps 1. Install VMware Workstation on a PC 2. Create and configure VMs win2k301, win2k302 & esxtest - see Tables 2-1, 2-2, 2-3 3. Ensure that the pre-requisite software for win2k302 is installed before proceeding further, or subsequent steps will fail For the esxtext VM(Table 2-3), the VMNET switch should be a host only connection. For this scenario the connection should not be running any DHCP services provided by VMware Virtual Networking and should be confirmed before proceeding. If DHCP is enabled on the virtual network then it should be disabled as VM1 (win2k301) will be providing DHCP. The status of any VMNET can be checked in the VMware Virtual Network Editor.
Connected to host only VMNET 1 Yes Microsoft Dot Net Framework 2.0, Microsoft MSXML 6 (provided in learning_materials.iso) Microsoft WAIK toolkit (download the latest version from Microsoft)
Name Hardware Compatibility Guest Operating System Role(s) IP Address Subnet Mask DNS & Gateway Memory Hard Disk CD/DVD Network Adaptor Processors Domain Member Table 2-3: Virtual Machine 3 - esxtest
esxtest Workstation 7 VMware ESX / ESX Server 4.0 ESX Server (deployed via scripted build) <assigned by DHCP> <assigned by DHCP> <assigned by DHCP> 2048MB 40GB (not pre-allocated) Connected Connected to host only VMNET 1 No
Once complete, the PXE boot environment, FTP deployment repository and initial PXE boot menu will have been configured. ESX 3.5 and ESX 4.0 files are copied to the FTP repository location. Note: The above tasks can be carried out manually if you do not wish to use the scripts. The manual process can be found in Appendix B.
2. Copy the CD contents to the root of the E: drive. 3. Once copied, disconnect the learning_ materials.iso and connect the CD to the Windows 2003 Standard Server R2 (with SP2) ISO CD 1 (not provided). 4. Open a command prompt by entering cmd.exe from the Start -> Run dialogue 5. Change the working directory to the E: drive and then enter the following command (typed as one line - refer Figure 3-2):
cscript.exe 1_Install_Deployment_ Server.vbs
The APPEND line passes commands and syntax to the Kernel during boot. These include the following:
initrd esx text ks ksdevice=eth0
specifies the boot image to use installer boots in text mode location of ks.cfg file specifies which physical NIC to use as service console during installation
Powering on the esxtest VM and selecting the ESX 3.5 Scripted (ks.cfg) option will initiate a semi-unattended installation of ESX 3.5 (you will be prompted for network and disk information). Note: If the PXE boot fails, ie: no menu displayed, ensure that the WDS services are running correctly on the win2k302 VM.
An option needs to be provided so that during the PXE boot process a user can select the scripted installation method. The next steps show how to add an additional item to the boot menu. Note: The PXE boot menu is stored in a file called default, located in E:\ remoteinstall\Boot\x86\pxelinux. cfg\
Next Steps 1. Edit the default file using WordPad or similar. Add the following text to the end of the file. Entries are single continuous lines where shown wrapped.
LABEL ESX35A MENU LABEL ESX3.5 Scripted (KS.CFG) KERNEL linux/vmlinuz-esx35 APPEND initrd=linux/ initrd-esx35.img esx text ks=ftp://192.154.30.2/esx35/ ks.cfg ksdevice=eth0
The LABEL tag provides a unique name for this menu item. The MENU LABEL tag specifies the text that the user sees on the menu during the PXE boot process. The KERNEL tag specifies which Kernel to boot when this item is selected. In this case this is the ESX 3.5 kernel file copied during the scripted configuration process.
# Specify Timezone timezone --utc Europe/London # Tell the installer to automatically reboot after the install is complete reboot # Configure the root Password (can be optionally encrypted) rootpw xtravirt # Configure Network to obtain IP address and information from DHCP server network --bootproto=dhcp %pre %post
10
The script in Example 4-2 provides enough information for a partially automated installation of ESX4. However, there are a number of other optional entries which can provide additional configuration.
The root password can be encrypted in the ks.cfg file so that it cannot be read. The encrypted password can be generated from an ESX console - refer http://xtravirt.com/ xd10083. However, if you do not have an installation of ESX, there is a free MD5 password generator utility which can create an encrypted password. The utility runs on Windows systems and can be downloaded from http://xtravirt.com/xd10097.
Figure 4-1: If ESX hosts require a static IP address, then multiple ks.cfg files are typically needed
# configure Network to use static IP address, DNS and provide hostname Network static device=vmnic0 ip=192.154.30.200 gateway=192.154.30.1 nameserver=192.154.30.1 hostname=esxtest
An option is required during the PXE boot process to allow a user to select the scripted installation. To do this we add an additional item to the boot menu. Note: The PXE boot menu is stored in a file called default, located in E:\ remoteinstall\Boot\x86\pxelinux. cfg\ Next Steps 1. Edit the default file using WordPad or similar. Add the following text to the end of the file. Entries are single continuous lines where shown wrapped.
LABEL ESX40A MENU LABEL ESX4.0 Scripted (ks. cfg) KERNEL linux/vmlinuz-esx40 APPEND initrd=linux/ initrd-esx40.img text ks=ftp://192.154.30.2/esx40/ ks.cfg mem=512M url=ftp://192.154.30.2/esx40
When using static IP addresses it soon becomes apparent that a ks.cfg file is required per server - see Figure 4-1. However there are alternative scripting techniques that can be used to counter this, and will be covered in later sections. The ESX and Virtual Center installation guide from VMware lists compatible ks.cfg scripting commands.
The LABEL tag provides a unique name for this menu item. The MENU LABEL tag specifies the text that the user sees on the menu during the PXE boot process. The KERNEL tag specifies which Kernel
11
to boot when this item is selected. In this case this is the ESX 4 kernel file copied during the scripted configuration process. The APPEND line passes commands and syntax to the Kernel during boot. These include the following:
initrd esx text ks mem url
Specifies the boot image to use Installer boots in text mode Location of ks.cfg file Memory to allocate to the installer Path to the ESX 4.x installation files (RPMS)
Powering on the esxtest VM will now display a new PXE boot menu item. When selected an unattended installation of ESX 4 will begin.
The %pre section instructions are executed prior to loading the operating system on the host server. Due to this, only a handful of commands can be executed. Although this may seem limited, the %pre section is actually very useful.
Any command in the %pre section is executed before all other instructions in the ks.cfg file. Commands in the %post section are read and carried out after all other commands in the ks.cfg have been executed. Note: The location of the %pre and %post sections must be at the end of all other instructions in the ks.cfg file.
When host1 is PXE booted using this method, the PXE boot menu appears, and provides an option to select the ESX4.0 Scripted (ks.cfg) option. Pressing the tab key displays a line of text beneath the menu. This is the command line that is going to be executed by the installer as seen in Figure 5-2. All commands passed to the installer are automatically and temporarily stored in a file called /proc/cmdline. By simply typing commands on to the end of this line, further instructions can be passed to the installer. These can then act as a trigger for considerable installation configuration automation.
12
For example, adding the following command to the existing line - see Figure 5.2.
myop_name=host1
When the administrator presses enter the installer starts the installation process. After processing the ks.cfg file it proceeds to execute the instructions in the %pre section. The instructions in the %pre section read all of the command line parameters. If a parameter was passed called myop_name as in the example, then it checks the value to see if it is equal to host1.
if [[ $myop_name = host1 ]]; then
If the value matches, a string of text is written to a file called xtravirt.network located in /tmp
>> /tmp/xtravirt.network
Example 5-4: Code snippet of output to /tmp file (refer Example 5-1)
Note: --hostname=host1 entry can be a FQDN if required, e.g. host1. xtravirt.lab The string of text contains the ks.cfg networking script with all required syntax to set hostname, IP address, subnet mask, gateway and DNS server address. If the value is anything other than host1 then a different string is written to the file, configuring the host to use DHCP to obtain IP information.
else echo network --bootproto=dhcp >> /tmp/xtravirt.network fi
This instructs the installer to read the contents of the /tmp/xtravirt.network file and execute them. The %pre section can easily be amended to take in to account multiple hosts by adding further information as per Example 5-8. This %pre script contains entries for 2 different hosts: host1 and host2. Naturally this method can be scaled to as many hosts as needed, up to several hundred or more and only ever require one ks.cfg file, albeit a potentially long one. Reducing the configuration to a single ks.cfg for many hosts reduces management and complexity of ESX server deployments as well as deployment times.
%pre < /proc/cmdline sed s/ /\n/g | grep ^myop_name > /tmp/boot_ parameters . /tmp/boot_parameters if [[ $myop_name = host1 ]]; then echo network --bootproto=static --device=vmnic0 --ip=192.154.30.100 --gateway=192.154.30.1 --netmask=255.255.255.0 --nameserver=192.154.30.1 --hostname=host1 >> /tmp/xtravirt. network elseif [[ $myop_name = host2 ]]; then echo network --bootproto=static --device=vmnic0 --ip=192.154.30.101 --gateway=192.154.30.1 --netmask=255.255.255.0 nameserver=192.154.30.1 --hostname=host2 >> /tmp/xtravirt. network else echo network --bootproto=dhcp >> /tmp/xtravirt.network fi
Additional command line instructions can be used in this manner to further refine scripted installations providing greater levels of managed flexibility.
Example 5-5: Code snippet of default DCHP configuration (refer Example 5-1)
The ks.cfg instructions outside of the %pre and %post sections are then executed. In this scenario the ks.cfg file default networking section has been amended. Originally the ks.cfg file had the following
Advert
13
The following sub-sections outline how the %post section could be used historically with ESX 3.x installations, and how this has been improved upon with ESX 4.x.
specific commands) have completed. In Windows terms it is similar to placing commands in the Start-up folder on the Windows start menu.
Example 5-9: Code snippet of %post rc.local backup/copy (refer Figure 5-4)
The rc.local file is located in the /etc/rc.d folder. It is copied to the same location, in this example appending .sav to the end of the filename.
Example 5-10: Code snippet of %post Section B - writing next instructions (refer Figure 5-4)
The Linux cat command is used to write information in to the rc.local file. The >> symbols mean that all text from this point onwards will be appended to the rc.local file. Text will continue to be written until it reaches the text EOF1. The mkdir (make directory) command is used to create two subfolders under the /tmp folder, one
14
called script the other called mount. The esxcfg-firewall command is run to enable the smbClient exception. This will allow smb traffic to pass through the firewall. Next, the Linux mount command is used to mount (or in Windows terms, map a network drive) the postbuild folder, on 192.154.30.250 to the /tmp/mount folder on the host. A username and password are specified to authenticate with the target device. Finally, the contents of the mounted folder, /tmp/mount/ are copied to the local host under /tmp/script/. Within the folder is the file postinst01.sh.
Configure NTP Configure VMotion Add local user accounts Configure network policies Configure login banners Install and configure 3rd party hardware agents
Example 5-11: Code snippet of %post Section C - set execute permissions to instructions (refer Figure 5-4)
The Linux chmod command is used to mark the contents of the script folder as executable. This includes the postinst01. sh file.
Most commands that can be executed at the ESX console can be used in the postinst01.sh script. As always, building a non-production ESX host and then testing out commands at the console is advisable before deploying to a live environment. Common tasks that can be carried out by the postinst01.sh script may include the following: Configure firewall rules (inbound / outbound exceptions) Configure networking (virtual switches, port groups, vlans, hostname, DNS)
Example 5-12: Code snippet of %post Section D - set instructions to run upon next reboot (refer Figure 5-4)
Figure 5-5: The complete build process including %pre, %post and postinst01.sh script
15
# Accept the ESX License Agreement accepteula # Configure authentication for the host - enable shadown password file and MD5based passwords authconfig --enableshadow --enablemd5 # Configure the bootloader - set the location to be the Master Boot Record of the disk bootloader --location=mbr # Remove all partitions on the first disk and overwrite existing VMFS partition clearpart --firstdisk --overwritevmfs # Partitioning Section - create partitions of sizes and types part /boot --fstype=ext3 --size=2000 --onfirstdisk part storage1 --fstype=vmfs3 --size=10000 --grow --onfirstdisk part None --fstype=vmkcore --size=100 --onfirstdisk # Create the vmdk on the cos vmfs partition. virtualdisk cos --size=5000 --onvmfs=storage1 # Partition the virtual disk. part / --fstype=ext3 --size=3040 --grow --onvirtualdisk=cos part swap --fstype=swap --size=256 --onvirtualdisk=cos # Allow all incoming connections via the firewall firewall --allowIncoming # Specifies the type of installation - URL = network install, network path to install files install url ftp://192.154.30.4/esx40 # Specify Keyboard Layout keyboard uk # Specify Timezone timezone --utc Europe/London # Tell the installer to automatically reboot after the install is complete reboot # Configure the root Password (can be optionally encrypted) rootpw xtravirt # Obtain networking settings from the /tmp/xtravirt.network file %include /tmp/xtravirt.network %pre < /proc/cmdline sed s/ /\n/g | grep ^myop_name > /tmp/boot_parameters . /tmp/boot_parameters if [[ $myop_name = host1 ]]; then echo network --bootproto=static --device=vmnic0 --ip=192.154.30.100 --gateway=192.154.30.1 --netmask=255.255.255.0 nameserver=192.154.30.1 --hostname=host1 >> /tmp/xtravirt.network else echo network --bootproto=dhcp >> /tmp/xtravirt.network fi %post # Create vSwitch (vswitch1), create a portgroup (LAB), connect nic1 to it esxcfg-vswitch -a vSwitch1 esxcfg-vswitch A LAB vSwitch1 esxcfg-vswitch -L vmnic1 vSwitch1
interpreter you wish to use for each statement. Errors generated from incorrect statements in %post section can be configured to be ignored or have the script stop processing if an error is found. For specific information on the %post section, see the VMware ESX and vCenter Server Installation Guide. Although the %pre section executes prior to ESX package installation, the %pre section can execute statements for Bash and Python. Perl is not supported natively.
For the purposes of this scenario, the following assumptions are made The only unique information per host is as follows: Disk partitioning requirements Hostname Service console IP address, netmask, nameserver, gateway
16
Each host requires a host.cfg file. This file contains the unique footprint for each host. The host.cfg file contains the following information: Disk partitioning requirements Hostname Service console IP address, netmask, nameserver, gateway
Additionally each ESX host requires a host.vmotion file which contains VMotion configuration information for each host. Note: The Xtravirt Build Method is aimed at ESX 4 installations. ESX 3 can be catered for, but is not covered in this document.
6.1 Demonstration
This section is a pre-cursor to the detailed explanation in Section 6.2 and is used to demonstrate the solution over 3 embedded videos in this e-book. To ensure consistency when creating new host configuration files, we wrote a utility to prompt the administrator for key information - hostname, service console IP address and VMotion IP address - see Video 6-1. Once a unique host.cfg file and host VMotion file have been created by the utility, the target server can be PXE booted. At the Xtravirt installation menu the hostname of the target buildserver displays. An unattended build process then initiates - see Video 6-2. All common configurations are carried out by various scripts which execute at this time. Once the server has completed configuration it reboots and the ESX Operating System loads. The only configuration task carried out by the scripted installation process at this point is to enable VMotion. VMotion cannot be correctly configured during the previous boot stage as specific modules are not available. Once the server has finished booting, a connection to the host can be made. The configuration performed by the scripted install can be viewed in Video 6-3.
Video 6-2: Installation Demonstration Video 6-1: Installer Utility Demonstration
Note: To enlarge the video, adjust the zoom from the Adobe PDF View menu.
17
The files are all hosted in a folder structure in the FTP repository. The xtravirtmethodks.cfg file is stored in the root of the esx40 folder for simplicity. The individual hostx.cfg files are stored in the hostcfgs folder, which is a subfolder of esx40. The post configuration files are stored in the postcfgs folder, which is also a subfolder of the esx40 folder.
Video 6-3: vMotion Configuration
18
line with the networking information and hostname there will be a reduced risk of error. Many hosts will often utilize the same gateway, netmask and nameservers. This means that the information required to add an additional host in to the method is often only hostname and IP address. The xtravirtmethodks.cfg file is composed of 4 main parts - see Figure 6-2:
%pre Common Host specific kickstart commands %post scripts
Carries our tasks that are required to make the build process work Contains kickstart commands to be processed Runs the specific hostx. cfg file Calls each individual post configuration script file
When the xtravirtmethodks.cfg file is processed, the sections are executed in order.
Sets the keyboard to UK layout (change this to your own regional setting) Sets the time zone to UTC Europe / London (change this to your own timezone) Tells the installer to reboot when completed Configures root password to xtravirt - change password as required
Once the common section has completed, the %include script host.cfg located at /tmp/xtravirtscripts/host.cfg is executed.
19
Next Steps 1. Open a command prompt window 2. Change directory to E:\ftp_deployment\ esx40\hostcfgs\ 3. Run the following command: cscript.exe newconfig.vbs
Figure 6-3: Sequential Execution of the xtravirtmethodks.cfg File
4. When prompted, enter the hostname, service console IP address and VMotion IP address
%include /tmp/xtravirtscripts/ vmotion.cfg. Creates a file to run after the next reboot to enable VMotion
Once complete, simply boot the new ESX host using PXE and select the scripted installation option, providing the hostname. Next Steps 1. PXE boot the host that you wish to build 2. At the PXE menu highlight the ESX4.0 (Xtravirt Method) option, press tab and enter name=your_hostname, where your_hostname is the hostname you entered previously. 3. Press Enter
The new host will now run the Xtravirt build method applying the unique information you provided, eg: hostname, service console IP address, VMotion IP and any other customizations. Note: If an incorrect hostname is found then the installation will fail.
20
Appendix A
A1 Using DHCP Reservations to Allocate IP Addresses to ESX Hosts
DHCP reserved IP addresses are distributed to hosts based on an IP to MAC address relationship. A reservation for a physical server is created in the DHCP scope by providing the MAC address of the network adaptor and the IP address you wish to assign. With ESX we assign the IP address to the service console, so the reservation actually needs to be created using the MAC address of vswif0. It is not possible to specify the MAC address for vswif0 as part of the scripted build process. The MAC address is created by the ESX installer during the installation process. The reservation will need to be created post installation. This introduces a two stage process.
Figure A-1: Using DHCP reservations requires a staged approach to allocating the final IP address
During stage 1, the ESX host boots up and obtains a free IP address on a lease from the DHCP server. The IP address is chosen from the scope range. The server will build using this assigned IP address. Once the server is built, the administrator can logon to the ESX console and obtain the MAC address for vswif0. Note: The ifconfig vswif0 command can be used to obtain the MAC address
21
Once the vswif0 MAC address has been obtained a reservation can be created in the DHCP scope. Once the reservation is created, reboot the ESX host to obtain the allocated IP address.
This two stage process may seem long winded. However, it has multiple benefits: Centralised control of the hosts IP address, subnet mask, gateway address and DNS address. If a static IP address is allocated through the KS.CFG file, multiple files need to be edited in the console (or alternatively through the GUI) to change it (as well as DNS, gateway and subnet mask information). To change any information with this method, simply update the reservation and reboot the host Centralised recorded information of IP addresses for each ESX host (within the DHCP console)
Note: If this method is used, the host will be built with a name of localhost. A further script could be run to change the name of the host which could be called from the %post section of the KS.CFG file.
22
23
24
Warning: Allowing remote SSH access in a production environment should not be enabled. A separate account should be used to connect, then where applicable SUDO or SU commands should be used to elevate privileges if required.
25
26
3.
2.
27
3.
4. 5. 6. 7.
Open the Internet Information Services (IIS) Manager from Administrative Tools From under the FTP sites folder, stop the default FTP site and delete it. Right-click FTP Sites and select New -> FTP site Create a new FTP site with the following details:
Description: ftp deployment point IP: All Unassigned, port 21 Do not isolate users Path: E:\ftp_deployment Read permissions
8.
4.
In the Windows Deployment Services console, right-click Boot Images and add the winpe_basic.wim file, located in the C:\ ebook_disk folder.
28
5. Right-click the server and select Properties. From the Advanced tab, ensure the following is enabled
Yes, I want to authorize the Windows Deployment Services server in DHCP
From the Windows Deployment Services console, select the server, right-click and select Properties. From the Boot tab, amend the Default boot program to point to the Boot\x86\pxelinux.0 file.
29
Figure B-5: Configuring the default boot programs in the WDS console
Ensure that you can browse via FTP to the E:\ftp_deployment folder.
Figure B-6: Ensure ftp browsing to the distribution point works fine
30
The ESX installation process will start. Follow the installation wizard using the following details when prompted Installation Method: FTP Configure TCP/IP: Use dynamic IP configuration (BOOTP/DHCP) FTP site name: 192.154.30.100 Red Hat directory: esx35/ Follow the installation wizard to install ESX 3.5 on your test server
31
MENU LABEL ESX3.5 Scripted (KS.CFG) KERNEL linux/vmlinuz-esx35 APPEND initrd=linux/initrd-esx35.img esx text ks=ftp://192.154.30.2/esx35/ks.cfg ksdevice=eth0
Note: Ensure your KS.CFG file specifies the URL to the ESX35 installation files.
LABEL ESX4A MENU LABEL ESX4.0 Scripted (KS.CFG) KERNEL linux/vmlinuz-esx4 APPEND initrd=linux/initrd-esx40.img text ks=ftp://192.154.30.4/ esx40/ks.cfg mem=512M url=ftp://192.154.30.4/esx40
Note: Ensure the ks.cfg file specifies the URL to the ESX40 installation files.
Example: install url ftp://192.154.30.4/esx40