FluxBilling
Settings

EasyDCIM Migration

Step-by-step guide to the EasyDCIM Migration tool: connect over SSH, pick which inventory to import, preview record counts, and run the import.

Updated · 2026-06-29

What the EasyDCIM Migration tool does

The EasyDCIM Migration tool is a guided importer that copies your existing datacenter inventory into FluxBilling. It connects to your old system's database (directly, or over an SSH tunnel), reads your physical infrastructure, and re-creates it inside FluxBilling so your locations, datacenters, racks, devices, blade servers, and cable connections all carry over without manual re-entry.

EasyDCIM Migration wizard showing the five-step stepper and the Connection step with MySQL fields, an SSH Tunnel section, and a Decrypt Passwords section
The EasyDCIM Migration wizard, starting at the Connection step.

How to reach it

Open the admin panel and go to Settings. In the settings menu, find the Migration Tools group and select EasyDCIM Migration. (The neighboring WHMCS Migration tool lives in the same group for billing data.)

The five-step wizard

A stepper across the top tracks your position through the import: Connection → Selection → Preview → Progress → Results. You move forward one step at a time, and you can step back from Selection and Preview to adjust earlier choices.

Step 1 — Connection

This is where you point FluxBilling at your source database and confirm it can read your data.

  1. Fill in the MySQL connection details: Host, Port, Database, Username, and Password.
  2. If your database is only reachable from the source server (the usual case), tick Use SSH Tunnel and enter the SSH Host, Port, Username, and SSH Password so FluxBilling can reach the database through that server.
  3. Optionally enable Decrypt Passwords and paste your source application's encryption key so stored IPMI, SSH, and SNMP credentials come across in readable form (see the table below).
  4. Click Test. On success you see a green confirmation listing how many locations, datacenters, racks, devices, blades, and connections were found.
  5. Click Save if you want to keep these connection details for next time, then click Next to continue.

The wizard remembers a saved configuration and pre-fills these fields automatically the next time you open the page, so you rarely need to re-type credentials.

Next runs Test for you. If you click Next before testing, the wizard runs the connection test first and only advances once it succeeds. The Test and Next buttons stay disabled until the Username, Password, and Database fields are filled in (and, when the SSH Tunnel is on, until its host, username, and a password are provided).

Connection fields

FieldWhat it does
MySQL HostAddress of the source database. Defaults to localhost — correct when you reach it through an SSH tunnel into the source server.
PortDatabase port. Defaults to 3306.
DatabaseName of the source database to read from.
Username / PasswordCredentials for the source database. The password is masked, with an eye icon to reveal it.
Use SSH TunnelCheckbox. When on, FluxBilling connects to the database through an SSH server instead of directly.
SSH Host / Port / UsernameThe SSH server FluxBilling logs into to reach the database. Port defaults to 22.
SSH PasswordPassword for the SSH login, masked with a reveal toggle.
Decrypt PasswordsCheckbox that reveals a key field. Provide your source app's encryption key to decrypt stored IPMI, SSH, and SNMP secrets so they import as real values.

Step 2 — Selection

Choose which kinds of inventory to bring over. Each row shows the entity name, the number of records found in your source data, and any dependency it has. Tick the boxes you want; the heading shows how many of the available types are selected.

EntityWhat it importsRequires
LocationsPhysical locations (countries / regions).
DatacentersFacilities within locations.
RacksServer racks inside datacenters.Datacenters
DevicesPhysical servers, switches, and chassis, including their SNMP configuration.Racks
Blade ServersBlades housed inside chassis devices.Devices
Port ConnectionsCable connections between switch ports and server NICs.Devices

Dependencies select themselves. Because racks live in datacenters and devices live in racks, ticking a dependent type automatically ticks the ones it needs. Selecting Devices, for example, also enables Racks and Datacenters so the imported devices have somewhere to live. You can still leave optional types unchecked — for instance, import Devices without Port Connections if you don't need the cabling map. The Next button stays disabled until at least one type is selected.

Step 3 — Preview

Before anything is written, the wizard shows a dry-run summary. A row of count cards tallies how many records of each selected type will be imported, and sample tables show a handful of real rows so you can sanity-check that the data looks right — location names, datacenter-to-location mapping, rack sizes, device labels and models, and a sample of port connections.

Review the preview, then click Start Import to begin. Use Back if you want to change your selection first.

Step 4 — Progress

Once the import is running, this step shows live progress. An overall progress bar and an elapsed-time counter sit at the top, and below them each selected entity type has its own row showing how many records have been processed out of the total, plus running tallies of created, updated, and failed records. The type currently being worked on is highlighted.

While the job runs you can:

  • Pause — temporarily halt the import.
  • Resume — continue a paused import (this button appears once paused).
  • Cancel — stop the import; you'll be asked to confirm first.

If any records fail, an expandable Errors Details panel groups the failures by type and reason so you can see exactly what went wrong without scrolling through a flat list.

Step 5 — Results

When the job finishes, the Results step gives a summary banner — completed cleanly, completed with errors, or failed — followed by a per-type breakdown of how many records were created, updated, skipped, or failed. Any errors are listed underneath. Click New Import to reset the wizard back to the Connection step and run another import.

Tips and gotchas

Credentials without the key import blank. If you skip Decrypt Passwords (or enter the wrong key), the inventory itself still imports — only the stored IPMI, SSH, and SNMP passwords come across empty rather than failing the whole job. You can always re-enter those secrets later on each device.

  • Test before every run. The connection test doubles as a quick record count, so it's a fast way to confirm you're pointed at the right database and that the SSH tunnel is up.
  • Re-running is safe to retry. Records that already exist are reported as updated or skipped rather than duplicated, so a second pass after fixing a connection issue won't bloat your inventory.
  • Import in dependency order. If you only want a subset, keep the chain intact — there's no point importing racks without the datacenters that contain them, which is why the wizard enforces those dependencies for you.

After importing

Once the import completes, your migrated infrastructure appears under Inventory, and the physical sites land in Locations. Open a device to verify its details, racks, and any SNMP or credential fields before you start assigning services to it.

Related

WHMCS Migration, Inventory, Locations.