How to use TrueSight Server Automation for PXE-based provisioning
The TrueSight Server Automation product can provision operating systems on bare metal computer systems using the Preboot Execution Environment (PXE) architecture.
The following sections provide requirements and procedures for configuring each infrastructure component, stocking the data store with operating system images, and creating system packages for the Provision Jobs. Instructions for provisioning Microsoft Windows, Linux, and ESX operating systems are included.
- Understanding the provisioning process for PXE-based provisioning
- Reviewing requirements for PXE-based provisioning
- Configuring the environment for PXE-based provisioning
- System package parameter examples
- Workspace Configuration Example
- Troubleshooting the Server Already Exists Error
- Decommissioning a Server Using BLCLI
Understanding the provisioning process for PXE-based provisioning
To provision Microsoft Windows and Linux servers, the TrueSight Server Automation system uses the Pre-boot Execution Environment (PXE) technology. This section describes the phases of provisioning with PXE.
Designed to work in conjunction with established protocols like DHCP, TFTP, and TCP/IP, this PXE-based approach to provisioning allows Intel computers to boot from a PXE-compliant Network Interface Card (NIC) and retrieve their operating system installation instructions and files over the network, instead of relying on floppy disks and CD-ROMs.
Click the thumbnail below for a full-size image depicting the provisioning process for Windows and Linux.
The following numbered steps correspond to numbers in the image shown above.
- Preparation of the target machine
Prepare all necessary cabling and install a PXE-enabled NIC card in the machine to be provisioned. Configure the machine's BIOS so it boots to network first and reboot the target machine. Ensure that both the NIC and the BIOS firmware are up-to-date.If you instead want to use UEFI for booting, perform the preparatory tasks described in Preparing-for-UEFI-booting. - Target machine broadcasts to network
The target machine broadcasts a DHCP packet with its MAC address to the network requesting an IP address for itself and the IP address of the PXE Server. - DHCP server replies
The DHCP server replies, giving the target machine an IP address. If the DHCP server and the PXE server are running on the same physical device, the DHCP server tells the target server that it is also running the PXE server. If the DHCP server and the PXE server are running on separate physical devices, the PXE server replies to the initial broadcast, letting the target server know that it is the PXE server. - Target machine contacts PXE server
Using the supplied IP address, the target machine contacts the PXE server using either a multicast or a broadcast. - PXE server checks database
Using the MAC address of the machine, the PXE server checks a database that contains server configuration information. The database provides instructions for provisioning the server. - PXE server delivers instructions for bootstrap program
Based on information obtained from the database, the PXE server responds with DHCP scope options 43, 66, and 67 (pxe menu, next-server, and file name), instructing the target to boot either from its local disk or a boot image obtained from the TFTP server. The PXE server provides the TFTP server address and location of the boot image to the target server. Target machine runs bootstrap and connects to the Application Server
The target machine boots from the boot image and contacts the TrueSight Server Automation Application Server for instructions.- Application Server checks database
Using the MAC Address of the target machine, the Application Server checks its database to obtain instructions for the target machine. - Application Server delivers provisioning instructions
Based on information obtained from the database, the Application Server sends a set of provisioning instructions, called a system package, to the target machine. - Target machine requests OS files
Using the instructions from the Application Server, the target machine requests the full operating system files from an HTTP server for Linux or an SMB server for Windows. - RSCD agent is Installed
Optionally, the RSCD agent is installed, which is necessary for managing the server with TrueSight Server Automation. A registration event occurs to enter the target machine's information into the TrueSight Server Automation system so the server can be managed from the TrueSight Server Automation Console. - Provisioning runs Batch Job for additional configuration
Optionally, the provisioning process can run a job that performs additional provisioning of the target machine. For example, a Batch Job can install and configure all necessary applications on the target machine.
Reviewing requirements for PXE-based provisioning
The following sections discuss the various requirements that must be met to implement PXE-based provisioning.
Supporting software components and dependencies
This table describes the software components in the provisioning infrastructure and their dependencies.
No further configuration is required on the file server.
You can use an existing DHCP server with some specific options defined. For information, see Configuring-a-DHCP-server-on-Windows or Configuring-a-DHCP-server-on-Linux.
For more information, see Installing-the-Microsoft-Windows-AIK-or-ADK.
System architecture required for PXE-based provisioning
The following diagram shows the three tiers of the TrueSight Server Automation infrastructure required for PXE-based provisioning.The lines in the diagram indicate the network connectivity required between the components. Each number indicates a default port, which you can modify if necessary. The number of physical servers in the middle tier varies, depending on the number of infrastructure servers available to the TrueSight Server Automation environment. The components in the middle tier of the infrastructure should be installed on more than one host computer. Typical provisioning installations allocate all components among three or four hosts. The hosts can be virtual servers. However, using a virtual server for the Application Server or the database server can result in degraded performance. Although it is possible to configure all of the middle tier components on one physical server, BMC typically does not recommend this type of configuration. Unless the server is an extremely powerful one, a one-server environment can experience performance issues. The database and the Application Server compete for resources during periods of significant activity.
Pre-installation checklist for PXE-based provisioning
For an easy and fast configuration process, prepare your environment as described in the following checklist.
Complete? | Action | Details |
---|---|---|
Determine the server architecture for your TrueSight Server Automation installation:
| ||
Prepare all infrastructure servers:
| — | |
Prepare the database:
|
| |
Ensure that port 4750 is open between the TrueSight Server Automation infrastructure servers and all hosts that have RSCD agents. RSCD agents listen on port 4750 (default). | ||
|
Hardware requirements for PXE-based provisioning
The following minimum specifications are recommended for all physical servers in the middle tier:
- 2 vCPU/2 CPU
- 4 GB RAM
- 50 GB Disk
Network connectivity for PXE-based provisioning
The servers in the PXE-based provisioning environment require network connections, either among themselves in a LAN or with a shared network. For specific connection requirements, see the diagram in the System Architecture section. The following network connections are required:
- The Application Server must have connectivity with the target devices to be provisioned.
- To prevent interactions with other PXE based solutions, establish a separate VLAN for provisioning. The VLAN must include the PXE server, DHCP, TFTP server, and the data store server. The Application Server must have access to the provisioning VLAN.
- The TrueSight Server Automation Console must have connectivity to the Application Server.
- Although not mandatory, it is useful to have access to the devices that you are provisioning, so that you can monitor progress during the provisioning process. To gain access, you can use an out-of-band solution, such as an Integrated Lights Out (ILO) or Integrated Dell Remote Access Controller (iDRAC) connection; direct physical console access; or some other method.
- To provision Windows servers, the data store must be shared using Samba or a Windows share.
Installation software required for PXE-based provisioning
The following table lists the files that you must download from the EPD site and make available to the appropriate infrastructure servers. File downloads are time-consuming. If you download all of the files first, the installation and configuration tasks progress more quickly.
Item | File name | Additional information |
---|---|---|
Application Server Installer | BSA<version>-<platform>.<xxx> | Installs the Application Server. |
RSCD Agent Installers | RSCD<version-platform>.<xxx> | Installs the RSCD agent. Download all of the agent installer files that match the operating systems for all of the following:
|
PXE/TFTP Server Installer | PXE<version>-<platform>.exe | Installs the primary provisioning component for Windows servers. For Linux servers, the PXE/TFTP Server installation is an option in the Application Server installer. |
TrueSight Server Automation Console Installer | BSACONSOLE<version>-<platform>.<xxx> | Installs the end user client software. |
db_scripts directory | BSA8<xx>-<xxx>\files\configurations\ db_scripts in BSA<version>-<platform>.zip | Contains database scripts and documentation. |
Provision-Files.zip | 8<xx>-<xxx>-provision-files.zip | Contains files for stocking the data store and generating boot image files. |
Application Server Upgrade Installer | BSA<version>- <SPnoHFno> -<platform>.<xxx> | Upgrades the Application Server, PXE server, and TFTP server to the latest service pack or hotfix. |
Console Upgrade Installer | BSACONSOLE<version>- <SPnoHFno> -<platform>.<xxx> | Upgrades the console to the latest service pack or hotfix. |
Windows AIK version 2.1 | 6001.18000.080118-1840-kb3aikl_en.iso | Installs AIK 2.1 for use with WinPE 2.x. This file is obtained from Microsoft. It is approximately 1.4 GB. Expect it to take a long time to download or transfer. |
Windows ADK version 8.1 | ADKSetup.exe | Installs ADK 8.1 for use with WinPE 5.1. This file is obtained from Microsoft. |
Windows ADK version 10 | adksetup.exe | Installs ADK 10 for use with WinPE 10. This file is obtained from Microsoft. |
OS Installation Media | (varies by OS) Obtain these files from the OS vendor websites. | Stocks the data store with the OS files for provisioning the target servers. |
Configuring the environment for PXE-based provisioning
The following table lists the configuration tasks required for PXE-based provisioning, and provides links to detailed procedures.
Configuration task | What to do |
---|---|
Configuring the database | PXE-based provisioning requires an Oracle or Microsoft SQL Server database to store the user and system objects and relationships. Requires significant computing resources. The database that supports the TrueSight Server Automation environment is typically a standalone system or a system used by other management tools. A database that is used for other applications or is otherwise heavily loaded should not contain the TrueSight Server Automation database. |
Installing agents on required components | The following components require an RSCD agent on their host computer:
See Installing-the-RSCD-agent-Windows and Installing-only-the-RSCD-agent-Linux-and-UNIX for details. |
Preparing RSCD agents for provisioning | To set up RSCD agents so that they can be installed as part of the TrueSight Server Automation provisioning process, you create an Agents directory. This directory holds the operating system-specific RSCD agent installers for unattended installations. When you create a system package for provisioning, if you check the Install RSCD agent option, the provisioning process:
In this way you can seamlessly move from provisioning servers to managing servers with TrueSight Server Automation and Network Shell. See Preparing-agents-for-provisioning for details. |
Configuring the PXE and TFTP servers | You can configure or reconfigure the PXE and TFTP servers using the PXE/TFTP Server Configuration tool or from the TrueSight Server Automation console. Configuring the PXE Server enables the TrueSight Server Automation system to communicate with a target server during provisioning in the PXE environment. You configure the TFTP Server so the TrueSight Server Automation system can communicate with it to download the bootstrap program needed to initiate the PXE provisioning process. See Configuring-the-PXE-and-TFTP-servers for specific details. |
Configuring ports | The provisioning process explicitly uses the TCP protocol, port 9831 as the SSL port. Bare metal target servers use this port to communicate back to the Application Server (the Provisioning Server).
|
Configuring DHCP on Windows | The TrueSight Server Automation provisioning process requires a DHCP server, which gives the computer being provisioned an IP address and (in a single-database environment) the location of the Application Server. In addition to standard configuration of the DHCP server, which includes defining a scope, you must set some scope options. Use the following tasks to configure the DHCP server on Windows: Adding predefined options. Adding Option 60. |
Configuring a DHCP server on Linux | The following procedure describes how to install and configure the ISC DHCP.
See Configuring-a-DHCP-server-on-Linux for additonal information. |
Installing the Microsoft Windows Automated Installation Kit (AIK) | The Microsoft Windows Automated Installation Kit (AIK) enables TrueSight Server Automation to create WinPE 2.x images that serve as a preboot environment during provisioning of Windows packages. Note: If you are not creating Windows boot images, skip this step.BMC recommends installing AIK on the same server with the PXE server; however, it is not mandatory that the PXE server and Windows AIK be on the same server. The RSCD agent must be running on the TFTP server while you are generating boot images with the TrueSight Server Automation image generator. However, during AIK installation, PXE server and TFTP server availability is not required.
|
Installing the Microsoft Windows Assessment and Deployment Kit (ADK) | The Microsoft Windows Assessment and Deployment Kit (ADK) enables TrueSight Server Automation to create WinPE 5.1 images that serve as a preboot environment during provisioning of Windows packages. WinPE5.1 and ADK 8.1 are used for creating images of newer Windows versions (such as Windows 2008 R2 and Windows 2012). To obtain the ADK setup file and instructions for installing it, see the Microsoft download page for Windows Assessment and Deployment Kit (ADK) version 8.1. |
Prepare the data store | The data store holds the OS-specific installation media required to provision servers. To use provisioning with TrueSight Server Automation, you must create, stock, share, and configure the data store. See Setting-up-and-sharing-a-data-store and Stocking-the-data-store for details. |
Configuring System Package types | The System Package Types tab lists the available system package types and lets you edit their definitions or create your own custom system package type. You can create a system package type for the following platforms:
See Configuring-system-package-types-for-Windows-and-Linux for details. |
Generating and configuring boot images | To provision Microsoft Windows and Linux machines, you must create boot image files specific to TrueSight Server Automation. To create boot images for bare metal provisioning of Microsoft Windows or Linux operating systems, see the following topics:
|
Creating the system package | To perform an unattended installation of an operating system, you must create a system package for each server configuration that you want to install. A system package contains the following types of information:
The values for system package parameters depend on your environment, the site's best practices, and individual package requirements. See the following section, System package parameter examples to get started. See Creating-a-system-package-for-Windows-and-Linux for complete details. If you are provisioning Windows operating systems, you must have a Windows License Key. Note: To install an evaluation version of Windows Server 2008 R2 (or one that uses a Multiple Activation Key), leave the License Key field blank. You can activate the license key on the target server later or you can customize the Unattend.xml file by providing the activation key. By default, the system package accepts the KMS license key. |
Enabling auto-discovery of devices | As an alternative to manually adding or importing devices into TrueSight Server Automation, you can enable automatic discovery of new devices. TrueSight Server Automation then retrieves the MAC address of any new device from the PXE server as soon as the device is powered up, and adds the device to the list of devices in the TrueSight Server Automation Console. For more information, see Enabling auto-discovery of devices. |
Creating jobs required for PXE-based provisioning | The next step in the provisioning process is to create Provision Jobs in the TrueSight Server Automation console. You can create Provision Jobs using either of these methods:
For information about creating and running Provision Jobs, see Creating-a-Provision-Job.. |
Preparing for UEFI booting | If you plan to use Unified Extensible Firmware Interface (UEFI), instead of BIOS, for booting hardware over the network during provisioning, perform several preparatory tasks to enable the use of UEFI. For more information, see Preparing-for-UEFI-booting. Note: When using UEFI booting on Linux, you cannot use a Gentoo pre-installation image, and must use the Skip Linux Pre-Install image option. As a result, auto-discovery of devices is not possible. |
System package parameter examples
The following table lists some example parameters for specific provisioning environments.
Provisioning environment | Tab name / Examples |
---|---|
Microsoft Windows Server 2003 R2 | General
Disk Partitions
Basic Configuration
Computer Settings
Post Install Configuration
Local Properties
To save the System Package, click Save in the upper left corner. |
Microsoft Windows Server 2008 R2 | General
Disk Partitions
Basic Configuration
Computer Settings
Post Install Configuration
Local Properties
To save the System Package, click Save in the upper left corner. |
Microsoft Windows Server 2012 | General
Disk Partitions
Basic Configuration
Computer Settings
Post Install ConfigurationAgent Install Options: To override the silent installation default values, provide the property names and desired values in this field. Note: No options like reboot=Supress is required for Windows server 2012. Local Properties
To save the System Package, click Save in the upper left corner.
|
Microsoft Windows Server 2012 R2 | General
Disk Partitions
Basic Configuration
Computer Settings
Post Install ConfigurationAgent Install Options: To override the silent installation default values, provide the property names and desired values in this field. Note: No options like reboot=Supress is required for Windows server 2012 and Windows server 2012 R2 Local Properties
To save the System Package, click Save in the upper left corner. |
ESX 4.0 | General
Disk Partitions
Basic configuration
Computer Settings
Local Properties
To save the System Package, click Save in the upper left corner. |
ESX 5.0 | General
Disk Partitions
Basic configuration
Computer Settings
Local Properties
To save the System Package, click Save in the upper left corner. |
Red Hat Enterprise Linux 6 or Oracle Enterprise Linux 6 | General
The System Package opens. Specify the values in the following sections. Basic Configuration
Disk Partition
Computer Settings
OS Components
Local Properties
To save the System Package, click Save. Note:
|
Workspace Configuration Example
As you develop a TrueSight Server Automation environment and the folders are populated with many objects, it quickly becomes difficult to locate specific objects. As additional users begin adding objects, the locations they choose for creating and storing those objects becomes very important. You should establish some guidelines for organizing the folders.
The following examples illustrate some guidelines for organizing objects.
- The image at the left shows an expanded Depot folder. Under Provisioning, notice the use of the Validated and Unvalidated folders. To implement this idea, users create new Depot objects in the Unvalidated folder. When the objects are validated, they move the objects to the Validated folder.
- The image at the right shows an expanded Servers folder. To organize Servers, you can define smart groups. This example shows smart groups that organize servers by OS, availability, and type.
The following example shows the attributes for defining a smart group of VMware Virtual Center servers. Some other examples of using smart groups to organize objects are: - Organize devices by type
- Organize Provision jobs by user
- Organize system packages by operating system type
Troubleshooting the Server Already Exists Error
This section describes how to fix the following error situations:
- You try to add a server to the console, but the server does not appear under the All Servers folder
- The server is not listed in the All Servers folder and when you attempt to add it, you receive the following message:
One reason for these symptoms is an unfinished or partially completed Provision Job. The partial processing registered the server but was unable to make the server name appear in the console.
To solve the issue:
- Right-click the All Servers group and select Refresh.
- If the server name does not appear in the console after a refresh, use the BMC Command Line Interface (BLCLI) to decommission the server. For more information, see the next section.
- Add the server to the console using the normal Add Server method.
Decommissioning a Server Using BLCLI
To decommission a server using the BLCLI, follow this procedure.
- Launch a command prompt.
- Type nsh.
Create an authentication profile where appserverhost name is the name of your Application Server. For example:
MYSERVER% blcred authprofile -add -profile myServiceProfile -host *appserverhost name*:9840 -type SRPSupply credentials for your profile:
MYSERVER% blcred cred -acquire -profile myServiceProfile -username *BLAdmin* -password *bladelogic*
Authentication succeeded: acquired session credentialTo test your connection to the BLCLI command interface, execute a basic command and verify that the expected result is displayed. For example, run the listAllServer command and verify that the results show all of the servers in the All Servers group on the console.
MYSERVER% blcli -v myServiceProfile -r *BLAdmins* Server listAllServers
MHR-006-BMC-001
198.18.14.24
MHR-006-VCC-001
198.18.64.6
198.18.14.72
198.18.18.39
198.18.18.43
198.18.18.10
2k8ent86_sanUse the decommissionServer command to decommission the server that you could not view or commission on the console. The expected result after issuing this command is a void serverName message. The following example shows how to decommission the server named 2k8ent86_san.
MYSERVER% blcli -v myServiceProfile -r *BLAdmins* Server decommissionServer *2k8ent86_san*
void MYSERVER%
MYSERVER%- Add the server to the console using the normal Add Server method.