Skip to content

Streamlining Server Management - Bulk onboarding to HPE Compute Ops Management with iLOrest

Rajeev Kallur's profile photo

Rajeev Kallur - Senior cloud developer, HPE

January 2026


Managing hundreds or thousands of servers manually is time-consuming and error-prone. IT administrators often face the challenge of onboarding multiple HPE servers to HPE Compute Ops Management (COM) efficiently. In this tutorial, we'll explore how the iLOrest command-line interface simplifies this process through its powerful bulk onboarding feature, allowing you to onboard dozens or even hundreds of servers with a single command.

What You'll Learn:

  • How to configure multiple servers for COM onboarding using a JSON configuration file
  • How to perform pre-checks to validate your configuration before making changes
  • How to execute bulk onboarding operations with proper error handling
  • Best practices for managing large-scale server deployments

Prerequisites:

  • iLOrest installed on your management workstation (Installation Guide)
  • HPE Compute Ops Management activation key or workspace ID obtained from the HPE Compute Ops Management Portal
    • login to the COM Portal
    • Select or create a workspace
    • Navigate to Administration --> Activation keys
    • Generate or copy an existing activation key
    • Note the Workspace ID, which uniquely identifies the COM workspace where servers will be onboarded
  • Network access to target iLO interfaces
  • iLO administrator credentials
  • HPE iLO 5 version 3.09, iLO 6 v1.64 or iLO 7 v1.12.00 or later, installed on target servers
Notes
  • No additional iLO Advanced license is required specifically for onboarding servers to HPE Compute Ops Management.
  • However, certain advanced COM features (i.e. enhanced analytics) may depend on the server’s entitlement or COM subscription, not the iLO license itself.

Understanding HPE Compute Ops Management

COM is a cloud-based infrastructure management platform that provides:

  • Centralized server monitoring and management
  • Firmware and driver updates
  • Security compliance monitoring
  • Health and performance analytics
  • Automated incident detection and response

Before servers can be managed through COM, they must be "onboarded" - a process that establishes a secure connection between the servers' iLO and the COM platform.

The challenge: Manual vs. bulk onboarding

Traditional manual approach

Onboarding servers one at a time requires:

  1. Logging into each iLO interface individually
  2. Configuring network settings (DNS, NTP, proxy)
  3. Entering the COM activation key
  4. Waiting for connection establishment
  5. Verifying the connection status

For 100 servers or more, this could take hours or even days!

The iLOrest bulk onboarding solution

With iLOrest's computeopsmanagement multiconnect command, you can:

  • Onboard multiple servers simultaneously using a single JSON configuration file
  • Define both individual servers and IP ranges
  • Apply common settings across all servers with per-server overrides
  • Perform pre-checks before making any changes
  • Generate detailed reports of successes and failures

Tutorial: Bulk onboarding servers to COM

Step 1: Generate the configuration template

First, you'll need to generate a template configuration file that you can customize:

ilorest computeopsmanagement multiconnect --input_file_json_template

The above command creates a file named multiconnect_input_template.json in the current directory with the following structure:

{
    "commonSettings": {
        "computeOpsManagement": {
            "activationKey": "ACTIVATION-KEY-XXXX-YYYY-ZZZZ",
            "workspace_id": "WORKSPACE-ID-PLACEHOLDER-12345"
        },
        "iloAuthentication": {
            "iloUser": "GENERIC_ADMIN_USER",
            "iloPassword": "GENERIC_SECURE_PASSWORD"
        },
        "network": {
            "dns": ["203.0.113.10", "203.0.113.11"],
            "ntp": ["198.51.100.50", "198.51.100.51"]
        },
        "proxy": {
            "server": "proxy.example.net",
            "port": 8080,
            "credentials": {
                "username": "PROXY_USER",
                "password": "PROXY_PASSWORD"
            }
        }
    },
    "targets": {
        "ilos": {
            "individual": [
                {"ip": "192.0.2.10"},
                {"ip": "192.0.2.11", "network": {"dns": ["203.0.113.20", "203.0.113.21"]}},
                {"ip": "192.0.2.12", "skipProxy": true}
            ],
            "ranges": [
                {"start": "192.0.2.100", "end": "192.0.2.110"},
                {"start": "192.0.2.120", "end": "192.0.2.125", "skipNtp": true}
            ]
        }
    }
}

Step 2: Customize your configuration

2.1 Common settings section

The commonSettings section defines default values applied to all servers:

COM credentials:

{
    "computeOpsManagement": {
        "activationKey": "YOUR-ACTUAL-ACTIVATION-KEY",
        "workspace_id": "YOUR-WORKSPACE-ID"
    }
}

Get the COM credentials from the HPE Compute Ops Management portal at https://common.cloud.hpe.com.

Notes

The credential type depends on the iLO generation to be onboarded:

  • iLO 5: Use workspace_id (the activationKey field will be ignored)
  • iLO 6 and later: Use activationKey (the workspace_id field will be ignored)

You can include both fields in your configuration file to support mixed environments with both iLO 5 and iLO 6 servers. The iLOrest tool will automatically use the appropriate credential based on the iLO generation it connects to.

iLO authentication:

{
    "iloAuthentication": {
        "iloUser": "administrator",
        "iloPassword": "YourSecurePassword123!"
    }
}

Use credentials that have administrator privileges on all target iLOs.

Network configuration:

{
    "network": {
        "dns": ["10.0.1.10", "10.0.1.11"],
        "ntp": ["time.example.com", "time2.example.com"]
    }
}

Configure DNS and NTP servers appropriate for your environment.

Proxy settings (optional):

{
    "proxy": {
        "server": "proxy.mycompany.com",
        "port": 8080,
        "credentials": {
            "username": "proxyuser",
            "password": "ProxyPass123"
        }
    }
}

If your servers require proxy to reach the internet, configure these settings. Otherwise, remove this section.

2.2 Target servers section

Define your target servers in two ways:

Individual servers:

{
    "individual": [
        {"ip": "10.20.30.40"},
        {"ip": "10.20.30.41", "network": {"dns": ["8.8.8.8", "8.8.4.4"]}},
        {"ip": "10.20.30.42", "skipNtp": true, "skipProxy": true}
    ]
}

IP ranges:

{
    "ranges": [
        {"start": "10.20.30.50", "end": "10.20.30.60"},
        {"start": "10.20.40.1", "end": "10.20.40.20", "skipDns": true}
    ]
}

Override options:

  • skipDns: Skip DNS configuration for this server
  • skipNtp: Skip NTP configuration for this server
  • skipProxy: Skip proxy configuration for this server
  • network: Override network settings for specific servers

Step 3: Validate configuration with the precheck option

Before onboarding, run a pre-check to validate your configuration:

ilorest computeopsmanagement multiconnect --input_file bulk_com_input.json --precheck

Step 3: Precheck before onboarding

The pre-check validates:

  • ✓ Network connectivity to each iLO
  • ✓ iLO credentials are valid
  • ✓ iLO firmware version supports COM
  • ✓ Server model compatibility
  • ✓ Activation key and workspace ID format
  • ✓ Current COM connection status
  • ✓ Proxy configuration (if applicable)

Example precheck output:

ilorest computeopsmanagement multiconnect --input_file servers_input.json --output report.json --precheck
Validating 192.168.254.15: 5/5 [########################################] 100.0%[status=PASSED, preCheckPassed=5]
Precheck completed. Report saved to: report.json
Precheck passed for 5 iLO(s).
Precheck failed for 0 iLO(s).

Check the precheck report for detailed analysis. Address any failures before proceeding.

Step 4: Execute bulk onboarding

Once the pre-check passes, execute the bulk onboarding:

ilorest computeopsmanagement multiconnect --input_file servers_input.json

What happens during the COM onboarding process:

  1. Connection phase: iLOrest connects to each iLO serially. Efforts are underway to make this onboarding parallel.
  2. Network configuration: DNS and NTP settings are applied
  3. Proxy setup: Proxy configuration is applied (if specified)
  4. COM registration: Activation key and workspace ID are submitted
  5. Verification: Connection status is verified

Example onboarding output:

ilorest computeopsmanagement multiconnect --input_file servers_input.json --output report.json
Processing 192.168.254.15: 5/5 [########################################] 100.0%[status=SUCCESS, connected=5]
ComputeOpsManagement connection successful for 5 server(s).
ComputeOpsManagement connection failed for 0 server(s).
The operation completed. Details available in the output report.json file

Step 5: Handling iLO resets

Some servers may require an iLO reset for settings to take effect. You can allow automatic resets with the following command:

ilorest computeopsmanagement multiconnect --input_file servers_input.json --allow_ilo_reset
Important notes
  • iLO reset temporarily interrupts management connectivity (30-60 seconds). You can monitor the iLO connectivity status with the following example.
  • The iLO reset does NOT affect the running operating system
  • After reset, the iLO will automatically reconnect to COM

The following example retrieves the iLO connectivity health and status and prints it in a JSON format. The login and logout processes are also embedded in the command line.

ilo_ip="<ilo-ip>"
u="ilo-username"
p="ilo-password"

ilorest  get Status --select Manager. --json --logout --url $ilo_ip -u $u -p $p

{
  "Status": {
    "Health": "OK",
    "State": "Enabled"
  }
}
Logging session out.

Step 6: Verify onboarding statuses

You can verify from the HPE Compute Ops Management console:

  1. Log in to HPE Compute Ops Management
  2. Navigate to Devices --> Servers
  3. Confirm your newly onboarded servers appear in the inventory

You can also verify the onboarding status of a specific iLO, using the the following iLOrest commands:

ilorest computeopsmanagement status --url <ilo-ip> -u <ilo-user> -p password --logout --json
Discovering data...Done
{
  "CloudConnectStatus": "Connected",
  "ConnectionType": "Gateway",
  "ExtendedStatusInfo": {
    "NetworkConfig": "Configured",
    "WebConnectivity": "Connected",
    "iLOConfigForCloudConnect": "Connected"
  },
  "FailReason": "Connected",
  "InsightInfo": {
    "TextEn": "",
    "TextJa": "",
    "TextZh": ""
  },
  "WorkspaceId": "248aa396805c11ed88e216588ab64ce9"
}
Logging session out.

Advanced configuration examples

Example 1: Mixed environment with different network settings

This example demonstrates a mixed environment where most iLOs to be COM onboarded share common DNS and NTP settings, but a few specific systems require overrides. Servers with iLO IP addresses in the ranges[] array get their settings from the commonSettings{} object. However iLOs in the Demilitared Zone (DMZ) need a specific list of DNS servers, and the iLO network configuration of test servers should not be modified.

Tip

The comment fields are optional and ignored by iLOrest. However, they are extremely useful for documentation and long-term maintenance of configuration files.

{
    "commonSettings": {
        "computeOpsManagement": {
            "activationKey": "ABC123-XYZ789-DEF456",
            "workspace_id": "ws-production-001"
        },
        "iloAuthentication": {
            "iloUser": "administrator",
            "iloPassword": "SecurePass123!"
        },
        "network": {
            "dns": ["10.0.1.10", "10.0.1.11"],
            "ntp": ["ntp1.corp.com", "ntp2.corp.com"]
        }
    },
    "targets": {
        "ilos": {
            "individual": [
                {
                    "ip": "10.10.1.50",
                    "comment": "DMZ server - different DNS",
                    "network": {
                        "dns": ["10.50.1.10", "10.50.1.11"]
                    }
                },
                {
                    "ip": "10.10.2.100",
                    "comment": "Test server - skip all network config",
                    "skipDns": true,
                    "skipNtp": true
                }
            ],
            "ranges": [
                {
                    "start": "10.10.1.10",
                    "end": "10.10.1.40",
                    "comment": "Production rack 1"
                }
            ]
        }
    }
}

Example 2: Environment with corporate proxy

This example shows how to onboard servers in an environment where internet access requires a corporate HTTP/HTTPS proxy.

In this scenario, most servers route their iLO outbound traffic through a proxy to reach HPE cloud services. ILOs in certain environments (such as DMZ or edge networks) have direct internet access and explicitly bypass the proxy setting using skipProxy: true.

{
    "commonSettings": {
        "computeOpsManagement": {
            "activationKey": "ABC123-XYZ789-DEF456",
            "workspace_id": "ws-production-001"
        },
        "iloAuthentication": {
            "iloUser": "administrator",
            "iloPassword": "SecurePass123!"
        },
        "network": {
            "dns": ["10.0.1.10", "10.0.1.11"],
            "ntp": ["ntp.corp.com"]
        },
        "proxy": {
            "server": "proxy.corp.com",
            "port": 8080,
            "credentials": {
                "username": "svc_ilo_proxy",
                "password": "ProxyPassword123"
            }
        }
    },
    "targets": {
        "ilos": {
            "ranges": [
                {
                    "start": "10.10.1.10",
                    "end": "10.10.1.100",
                    "comment": "Datacenter A - all servers use proxy"
                },
                {
                    "start": "10.20.1.10",
                    "end": "10.20.1.50",
                    "comment": "DMZ servers - direct internet access",
                    "skipProxy": true
                }
            ]
        }
    }
}

Example 3: Large-scale deployment (500+ servers)

For very large deployments, you can programmatically generate the configuration file as mentioned in the following example.

import json

# Generate configuration for 500 servers across 5 subnets
config = {
    "commonSettings": {
        "computeOpsManagement": {
            "activationKey": "YOUR-KEY",
            "workspace_id": "YOUR-WORKSPACE"
        },
        "iloAuthentication": {
            "iloUser": "administrator",
            "iloPassword": "YourPassword"
        },
        "network": {
            "dns": ["10.0.1.10", "10.0.1.11"],
            "ntp": ["ntp.corp.com"]
        }
    },
    "targets": {
        "ilos": {
            "ranges": []
        }
    }
}

# Generate ranges for 5 subnets, 100 servers each
for subnet in range(10, 15):
    config["targets"]["ilos"]["ranges"].append({
        "start": f"10.{subnet}.1.10",
        "end": f"10.{subnet}.1.110",
        "comment": f"Datacenter subnet {subnet}"
    })

# Save configuration
with open("large_deployment.json", "w") as f:
    json.dump(config, f, indent=4)

print("Configuration generated for 500 servers")

Then execute the following iLOrest commands.

# Run precheck first
ilorest computeopsmanagement multiconnect --input_file large_deployment.json --precheck --output large_precheck.json

# Review the precheck report, then onboard
ilorest computeopsmanagement multiconnect --input_file large_deployment.json --allow_ilo_reset --output large_onboard.json

Troubleshooting common issues

Issue 1: Authentication failures

Symptom: [ERROR] Authentication failed for multiple servers

Solutions:

  • Verify iLO credentials are correct
  • Ensure the account has administrator privileges
  • Check if accounts are locked due to failed login attempts
  • Verify iLO user directory configuration if using AD/LDAP

Issue 2: Network connectivity problems

Symptom: [ERROR] Connection timeout or Unable to reach iLO

Solutions:

  • Verify network connectivity with a ping command or ncat on HTTPS port: nc -vz <ip> 443
  • Check firewall rules allow HTTPS (port 443) to iLO
  • Verify iLO IP addresses are correct
  • Ensure management network routing is configured

Issue 3: iLO firmware version too old

Symptom: This iLO version doesn't support the requested operation. Please update iLO firmware

Solutions:

  • Update iLO firmware to the following versions or later:

    • iLO 7: 1.12.00
    • iLO 6: 1.64
    • iLO 5: 3.09
  • Use iLOrest firmwareupdate command (.bin firmware only), flashfwpkg command or uploadcomp command.

    ilorest firmwareupdate --url 10.20.30.40 -u admin -p password --component ilo5_xxx.bin
  • Deploy firmware updates at scale using HPE OneView or SUM

Issue 4: Invalid activation key or workspace ID

Symptom: The activation key provided is invalid. Please check and enter a valid one

Solutions:

  • Verify activation key in COM portal
  • Ensure workspace ID is correct
  • Check activation key hasn't expired
  • Confirm you have permissions in the workspace

Issue 5: Proxy configuration issues

Symptom: iLO couldn't reach the endpoint. Check your proxy or firewall settings with proxy configured

Solutions:

  • Verify proxy server address and port
  • Test proxy connectivity
  • Check proxy credentials if authentication is required
  • Verify proxy allows HTTPS traffic to HPE cloud services
  • Try bypassing proxy for specific servers using "skipProxy": true

Best practices

1. Always run pre-checks first

Pre-checks help identify issues before making changes:

ilorest computeopsmanagement multiconnect --input_file server_input.json --precheck --output precheck_report.json

Review the report and fix issues before proceeding.

2. Use staged rollouts

For large deployments, onboard in phases:

  • Phase 1: 5-10 test servers
  • Phase 2: One complete rack or subnet
  • Phase 3: Remaining servers in batches

3. Maintain configuration files

Store configuration files in version control:

git add server_input.json
git commit -m "Add COM onboarding config for production servers"
git push

4. Generate and archive reports

Always save reports for audit trail:

$timestamp = Get-Date -Format "yyyyMMdd_HHmmss"
ilorest computeopsmanagement multiconnect --input_file server_input.json --output "onboard_$timestamp.json"

5. Monitor progress in real-time

For large operations, monitor the output file:

# In one terminal, run onboarding
ilorest computeopsmanagement multiconnect --input_file config.json --output live_report.json

# In another terminal, watch progress
while ($true) {
    Clear-Host
    Get-Content live_report.json | ConvertFrom-Json | Format-Table -Property ip, onboardStatus, onboardError
    Start-Sleep -Seconds 5
}

Performance considerations

Actual time depends on:

  • Network latency
  • iLO responsiveness
  • Number of configuration changes
  • Whether iLO resets are required

Network bandwidth

Bulk operations generate minimal network traffic:

  • Configuration changes: ~1-2 KB per server
  • Status checks: ~500 bytes per server
  • Total bandwidth: Typically less than 1 Mbps for 100 servers

Security considerations

1. Credential protection

  • Store activation keys in secure vaults (Azure Key Vault, HashiCorp Vault)
  • Use environment variables instead of hardcoding credentials
  • Implement least-privilege access for iLO accounts
  • Rotate passwords regularly

2. Network security

  • Use secure management networks (isolated VLANs)
  • Implement firewall rules limiting iLO access
  • Consider VPN for remote management
  • Enable iLO security features (FIPS mode, TLS 1.2+)

3. Audit trail

  • Maintain logs of all onboarding operations
  • Archive configuration files and reports
  • Track who performed operations and when
  • Implement approval workflows for production changes

4. COM access control

  • Use role-based access control in COM
  • Separate workspaces for different environments (dev/test/prod)
  • Review COM user permissions regularly
  • Enable multi-factor authentication

Conclusion

Bulk onboarding to HPE Compute Ops Management using iLOrest transforms a tedious, error-prone manual process into an efficient, automated operation. By following this tutorial, you can:

  • ✅ Ensure consistent configuration across your entire fleet
  • ✅ Validate configurations before making changes
  • ✅ Generate comprehensive audit reports
  • ✅ Scale your server management operations with ease

The computeopsmanagement multiconnect command is a powerful addition to the iLOrest toolkit, enabling IT administrators to manage HPE infrastructure at scale with confidence.

Get started today

Ready to streamline your server management?

  1. Install iLOrest: Download from HPE Support or install via pip:

    pip install ilorest
  2. Try the tutorial: Follow the steps in this guide with a small test environment. I will be available in HPEDEV slack workspace on channel #ilorest for any help.

  3. Join the community:

Additional resources

Need help?