Skip to content

Migrate from SynergyCP to Tenantos

Free Migration Service

We will be happy to perform the migration for you free of charge. Simply reach out to our support team.

A CLI tool is available to import the data from SynergyCP to Tenantos to make it easy for SynergyCP customers to switch to Tenantos.

Migratable Entries

The following entries can be migrated:

  • Servers
    • Hostname
    • All IPv4 assignments
    • IPMI details
    • Switch connection
    • Notes
  • IPv4 subnets
  • SNMP switches
  • Users

Excluding the items listed above, all other elements cannot be migrated, including but not limited to:

  • IPv6 assignments
  • Other devices or connection assignments than SNMP switches (e.g., PDU)
  • Hardware Inventory

If you need to import more than 300 servers and need support for one of the non-migratable entries, please get in touch with our support team.

Notes

The migration process checks for existing servers, subnets, and switches in Tenantos. If the item already exists, it will not be transferred. This makes the migration script useful even if some items already exist in Tenantos.

The migration is split into multiple steps, allowing you to preview the data to be transferred and exclude specific steps. For instance, you can choose to import servers while excluding importing the users.

Before beginning the migration, ensure that you have increased your license limit. If the number of servers exceeds your current limit, the import will fail with an error message. You can start the import again after the required amount of servers have been booked.

How to migrate

Create a backup of the Tenantos database

First of all, you should create a backup of Tenantos so that you can restore the previous state in case of a problem.

Export the SynergyCP database

To start the migration, the SynergyCP database needs to be exported and copied to the Tenantos server. Execute the following commands to export the database:

PASS=$(docker exec $(docker ps | grep 'bm-php-worker' | awk '{ print $1 }' | head -n1) bash -c 'cat /var/www/html/bootstrap/cache/config.php | grep mysql -A 10 | grep synergy -A4 | grep password' | awk '{ print $NF }' | sed "s/'//g" | sed 's/,//')
docker exec $(docker ps | grep mariadb | awk '{ print $1 }') mysqldump -u synergy synergy -p"$PASS" | gzip > /root/synergycp.sql.gz
docker exec $(docker ps | grep mariadb | awk '{ print $1 }') mysql -u snmp -p'rtgdefault' rtg -e "SELECT interface.id, interface.snmp_id, router.rid, router.name FROM interface INNER JOIN router ON interface.rid = router.rid;" --table > /root/synergycp_portmap

After the database dump is created, the file needs to be copied to the Tenantos server. This can be done via tools like rsync.

Additionally, the file /root/synergycp_portmap should also be copied to the Tenantos server, into the the directory /var/www/synergycp_portmap. If you do not copy this file, the SNMP port assignments will not be migrated.

Import the database to Tenantos

To make the database accessible in Tenantos, you need to import it. After the file has been copied to the Tenantos server, execute the following commands:

docker run --name synergycp -e MYSQL_ROOT_PASSWORD=dontchangethis -e MYSQL_DATABASE=migrator -p 127.0.0.1:3307:3306 -d mariadb:10.5
zcat /root/synergycp.sql.gz | docker exec -i synergycp mysql -u root -p'dontchangethis' migrator

These commands will install a MariaDB Docker container and import the SynergyCP database. The Docker container is only locally reachable.

Execute the migration script

To begin the migration process, enter the command app migrator:synergycp:v1 and follow the steps.

After migration

After the migration, log in to the Tenantos web interface to verify the results. Ensure that Tenantos is able to establish a connection to the imported network switches and ensure that IPMI is reachable. You can determine the success of the IPMI connection by waiting a few minutes and observing the power status of the imported servers displayed in the server table.

Then you can delete the SynergyCP backup file and the Docker container to remove any remaining artifacts:

docker stop synergycp
docker rm synergycp
docker rmi library/mariadb:10.5
# rm /root/synergycp.sql.gz
# rm /var/www/synergycp_portmap

If you face any problems, please contact our support.

Screenshots

The process is similar to the EasyDCIM migration.