# Operating Systems Installation
- Standard network setup - network without VLANs
- Advanced network setup - network with multiple VLANs
- Troubleshooting PXE Boot Issues
- Known issues
- Not configured to listen on any interfaces! You must declare at least one subnet for your NIC interface
- After starting the OS installation, the server does not enter the PXE mode
- After starting the OS installation, the server enters the PXE mode but the IP address is not assigned by the DHCP server
- After starting the OS installation, the server enters the PXE mode and the IP address is assigned but the installation does not begin
- PXE Error: No Configuration Methods Succeeded
- PXE Error: ARP Timeout
- Enforcing UEFI Boot During Installation
- Provisioning servers
- Provisioning subnets
The extension allows you to automate the process of installing and configuring operating systems on dedicated servers. It is one of the remote agent components and can work only with this remote agent.
# Standard network setup - network without VLANs
No special router configuration is required for the standard network setup without a VLAN.
- Make sure that no DHCP servers are active on the network as they may interfere with the provisioning process.
- Check if Spanning Tree Protocol is enabled on switches.
- Verify if portfast is enabled on switch ports connected to servers (not on ports that connect to other switches).
Enabling the portfast feature:
Switch2> enable
Switch2# configure terminal
Switch2(config)# spanning-tree portfast default
Do not configure portfast by default if some of the ports are connected to other switches instead of servers. In this case, you need to set up portfast on each port individually. If the switch does not support portfast, check if it has the Rapid STP protocol or you can disable STP completely.
# Advanced network setup - network with multiple VLANs
If you have multiple VLANs, you need to configure the router or L3 switch so that DHCP requests from foreign VLANs are forwarded to the IP address of the EasyDCIM remote agent installation.
For example:
ip helper-address 10.20.30.40
10.20.30.40 - IP address of the EasyDCIM remote agent
In case of doubt, please check your router manual for more information about "DHCP relaying" or "Broadcast forwarding".
# Troubleshooting PXE Boot Issues
# Step 1: Verify PXE Boot Mode
Before proceeding with further troubleshooting, ensure that your device automatically enters PXE boot mode when the server starts. You can verify this using one of the following methods:
- KVM Console: Access the server remotely via IPMI/iDRAC/iLO/KVM-over-IP and observe the boot process.
- Physical Observation: If you are on-site in the data center, monitor the boot sequence directly from the server’s screen.
If PXE boot is not enabled, enter the BIOS/UEFI settings and configure the boot order to prioritize PXE boot over other devices.
# Step 2: Check for DHCP IP Assignment
Once you confirm that the server is booting in PXE mode, check whether it receives an IP address from the DHCP server. If the device enters PXE boot mode but does not get an IP address, this suggests a network-related issue.
To diagnose the problem, start by monitoring DHCP traffic on the remote agent server.
# Step 3: Monitor DHCP Traffic
On the remote agent server, install tcpdump and start monitoring DHCP traffic:
apt-get install tcpdump
tcpdump -n -i any udp port 67 or udp port 68
- Port 67 – Used by the DHCP server to send responses.
- Port 68 – Used by the DHCP client (your PXE-booting server) to send requests.
This command will capture DHCP requests and responses, helping you determine whether the PXE client’s requests are reaching the DHCP server.
# Step 4: Analyzing DHCP Logs
After running tcpdump, review the output logs.
If you do NOT see any DHCP traffic related to the MAC address of your server:
- This indicates that DHCP requests are not reaching the remote agent server.
- Switch Misconfiguration: The switch may not be correctly forwarding DHCP requests.
- VLAN Issues: Ensure that the PXE client and DHCP server are on the same VLAN or that DHCP relay is properly configured.
- DHCP Snooping or Firewall Blocking: Check if DHCP snooping, firewall rules, or ACLs are preventing DHCP communication.
# Step 5: Resolving Network Configuration Issues
If tcpdump does not capture any DHCP traffic, follow these steps to troubleshoot network settings:
Check Switch Configuration:
- Verify that the correct VLAN is assigned to the PXE client.
- Ensure DHCP relay (IP Helper Address) is properly configured if the DHCP server is on a different subnet.
- Disable DHCP snooping if it is incorrectly blocking requests.
- Enable portfast on the switch port connected to the remote agent server,
- Enable portfast on the switch port connected to the test server where the operating system is going to be installed,
- Add all required subnets on which the DHCP server will operate during the remote agent configuration.
Verify Firewall and Security Settings:
- Ensure no firewall rules are blocking UDP traffic on ports 67 and 68.
- If using iptables, check for any DROP rules related to DHCP:
- If using firewalld, check for active rules:
Test with a Different PXE Client:
- If possible, test PXE boot with a different server to rule out hardware-specific issues.
# Step 6: Verify PXE Boot Process
Once DHCP issues are resolved, reboot the server and monitor the PXE boot process:
- The server should receive an IP address from the DHCP server.
- The PXE bootloader should download the boot file from the TFTP server.
- The system should proceed to load the operating system installation process.
# Known issues
The OS installer is universal and uses well-known network protocols. In most cases, encountered problems are connected to the correct configuration of the switch or provisioning server in EasyDCIM.
# Not configured to listen on any interfaces! You must declare at least one subnet for your NIC interface
Please go to the “Provisioning Subnets” section and configure the appropriate subnets within which the DHCP server will run. Please note that the DHCP server requires at least one subnet for its NIC interface in the system. For example, our remote agent (that is the DHCP server) works on the enp0s8 interface with the IP address 192.168.56.2. Therefore, you must add a subnet in the ′Provisioning Subnets′ section corresponding to this address, e.g. 192.168.56.0/24: Provisioning Subnets
# After starting the OS installation, the server does not enter the PXE mode
Make sure that the BIOS and firmware of the device are up to date. Additionally, verify if PXE booting is enabled in BIOS settings. If your device is running in the UEFI mode, the reboot mode should be set to IPMI UEFI.
# After starting the OS installation, the server enters the PXE mode but the IP address is not assigned by the DHCP server
Make sure that the subnets within which the DHCP server should operate are defined in the Provisioning Subnets section. You must declare at least one subnet there for the parent network interface of the remote agent. You can define an unlimited number of subnets within which the DHCP server should run.
# After starting the OS installation, the server enters the PXE mode and the IP address is assigned but the installation does not begin
In most of these cases, the problem lies in the wrong switch configuration. If your devices are in the same subnet as the remote agent, you do not need additional switch configuration. If the main IP address of the device is in a different subnet then you need to configure the proper forwarding of DHCP requests to the remote agent.
# PXE Error: No Configuration Methods Succeeded
By default, the operating system installer is based on the “undionly.kpxe“ bootloader which is universal for the vast majority of dedicated servers. In case of this problem, you can try to change the bootloader in the network settings of the device.
# PXE Error: ARP Timeout
In order for the operating system installer to work properly, you need to:
- enable portfast on the switch port connected to the remote agent server,
- enable portfast on the switch port connected to the test server where the operating system is going to be installed,
- set the switch configuration to forward DHCP requests to the remote agent server,
- add all required subnets on which the DHCP server will operate during the remote agent configuration.
# Enforcing UEFI Boot During Installation
In most modern operating systems, UEFI booting is required for a successful installation. Some servers may require changes in the BIOS settings to enable UEFI boot mode.
The first step is to configure the server's BIOS to operate in UEFI mode. Keep in mind that network cards should also be set to UEFI boot mode, if your BIOS supports this option. In most cases, setting the entire boot process to UEFI is sufficient.
Next, you need to define the reboot method in the device's network settings. This can be done in the Reboot Method field within the device's network configuration. The IPMI (UEFI) option will enforce an IPMI reboot to boot into PXE mode.
For more details on this configuration, refer to the official documentation: Device Configuration
# Provisioning servers
This section allows you to add provisioning servers used to automatically install operating systems using a remote agent. More information on installing operating systems can be found here: Remote Provisioning Submodule
Each provisioning server can be assigned to more than one location and have its own installation templates. In order to add a new operating system, you need to find and use the "Add OS Provisioning Server" option in the action menu. The form includes the following fields:
- Server Name – name, it can be any name that will allow to distinguish the provisioning server
Next, you will be redirected to the advanced configuration view that includes below described fields:
- Use In Locations – locations in which the provisioning server will be active
- Remote Agent – the remote agent you want to use
- Reboot Method – device restart method
- Manual – manual restart of the device by an administrator
- IPMI – device restart using IPMI and automatically entering the PXE mode
- IPMI (UEFI) – device restart using the IPMI protocol with forced UEFI boot mode
- PDU – reset of the PDU outlet assigned to the device (for APC and Raritan devices)
- Nameserver 1 – the first default name server
- Nameserver 2 – the second default name server
- Rescue Template – selection of the template which will be used for rescue mode
- Reinstall Template – selection of the template which will be used for reinstallation, during e.g. service termination
- Bootloader – the default boot file
- [IPMI] Move To The Provisioning VLAN – whether the device’s network interface should be moved to the provisioning VLAN during the OS installation process
Client-facing installation emails are managed globally in Settings → Notifications → Email Templates. Administrator delivery should be configured through Settings → Notifications and the selected notification streams, rather than per provisioning server.
Once the provisioning server is successfully configured, you will need to define the subnets for the DHCP and TFTP servers to work.
# Provisioning subnets
In the next step, go to the "Provisioning Subnets" section and configure the appropriate subnets within which the DHCP server will run. Please note that the DHCP server requires at least one subnet for its NIC interface in the system. For example, our remote agent (that is the DHCP server) works on the enp0s8 interface with the IP address 192.168.56.2. Therefore, you must add a subnet in the ′Provisioning Subnets′ section corresponding to this address, e.g. 192.168.56.0/24.
The basic configuration involves adding at least one subnet for your NIC interface. The DHCP server can house an unlimited number of subnets and currently, it provides support for IPv4.
# Integration with the IP Address Management For EasyDCIM extension
IPAM integration replaces the local Provisioning Subnets list with IPv4 subnets selected from the IP Address Management extension. When this mode is enabled, the DHCP configuration for the remote agent is generated from IPAM subnets instead of manually added provisioning subnets.
To configure this feature, open Manage IPAM Integration in the Provisioning Subnets section. The form contains the following options:
- IPAM Integration Enabled – enables or disables the integration. When enabled, EasyDCIM reads subnet definitions from the IPAM module instead of the local provisioning subnets assigned to the remote agent.
- Subnets Level – determines which IPv4 subnets from IPAM will be included in the DHCP server configuration. Available options:
- All parent IPv4 subnets (subnets without a parent) – imports only top-level IPv4 subnets.
- IPv4 subnets from the first level – imports IPv4 subnets located on the first level of the IPAM hierarchy.
- IPv4 subnets from the second level – imports IPv4 subnets located on the second level of the IPAM hierarchy.
- IPv4 subnets from the third level – imports IPv4 subnets located on the third level of the IPAM hierarchy.
- IPv4 subnets without childs – imports only leaf IPv4 subnets, meaning subnets without child subnets.
- IPv4 subnets with CIDR – imports only IPv4 subnets that match the selected CIDR masks. After selecting this option, an additional Selected CIDR field is displayed, where you can choose one or more masks from /24 to /31.
- Relevant IPv4 subnets – imports only explicitly selected IPv4 subnets. After selecting this option, an additional Selected subnets field is displayed, where you can choose the exact IPAM subnets that should be used by DHCP.
Only IPv4 subnets with a defined gateway are included in the generated DHCP configuration. If the same subnet appears more than once, EasyDCIM keeps only one subnet/mask pair in the generated configuration.
When the integration settings are saved, EasyDCIM regenerates the DHCP configuration of the remote agent using the currently matched IPAM subnets. During OS provisioning, if the device IP address belongs to one of the IPAM subnets, EasyDCIM can also automatically fill the network configuration with values taken from IPAM, including the gateway, netmask, Nameserver 1, and Nameserver 2.