10.7. Migrating PowerPanel Container from CentOS 7 to VzLinux 7

The ppconvert tool allows migrating a PowerPanel container from CentOS 7 to VzLinux 7.

10.7.1. Prerequisites

  1. Install the following package:

    # yum install https://repo.virtuozzo.com/vzlinux/vzdeploy/vzdeploy8.rpm
    
  2. Ensure your PowerPanel container is running.

10.7.2. Converting PowerPanel Container

Run the following command:

Note

MyCT is the name of a PowerPanel container running the operating system to be converted. Enter the UUID or name of the container you need to migrate to VzLinux 7.

# ppconvert MyCT

During migration, the tool creates a backup of the PowerPanel container running the operating system, subject to conversion. The PowerPanel backup container is a container named <original-name>_pp_centos7_bkp. The UUID of the backup container is listed in the output, for example:

All operations completed successfully for CT 267338ae-6b48-4194-bb9b-903dbdffdf1b with BACKUP_CTUUID: a10abba8-f446-423f-b2a3-340b46734a3b.

Important

If a bridged network is used, the system removes the IP address in the backup container.

The conversion may take some time and cause the container to reboot. Upon the conversion, the system saves the backup container on the host in the stopped state.

Note

During the execution of ppconvert, you may see the following error message:

ERROR: ld:so object '/usr/libexec/vztt_checker_open.so' from LD_PRELOAD cannot be preloaded: ignored

This message is expected to appear during the script’s operation, which means the tool works normally. You can safely ignore this message.

After the successful conversion, the system starts the converted container and checks the PowerPanel service inside it.

Below is an example output of the successful conversion:

[root@vhs75]# ppconvert ct-powerpanel
2025-01-13 11:35:34,299 INFO: Converting ct-powerpanel
2025-01-13 11:35:34,308 INFO: CT name is ct-powerpanel
2025-01-13 11:35:34,316 DEBUG:                                  100        263 running   172.29.137.110  100-ct-powerpanel.vhs.example

2025-01-13 11:35:34,317 WARNING: Config file /etc/vz/conf/ct-powerpanel.conf is not a symbolic link.
2025-01-13 11:35:34,326 INFO: /etc/vz/conf/100.conf is link to the container config and therefore configs are in sync
2025-01-13 11:35:34,340 DEBUG: NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"


2025-01-13 11:35:34,393 DEBUG: pp-release-2.0.4-3.vl7.noarch

2025-01-13 11:35:34,394 INFO: OS Version and PP check is completed successfully
locking 100
locking 9a9161a0-f523-44cc-af26-20a780e84e37
Copy /vz/private/100/root.hdd/DiskDescriptor.xml /vz/private/9a9161a0-f523-44cc-af26-20a780e84e37/root.hdd/
Copy /vz/private/100/ /vz/private/9a9161a0-f523-44cc-af26-20a780e84e37
vzctl : Container is not running
vzctl : Failed to exec action script /usr/libexec/libvzctl/dists/scripts/postcreate.sh
/usr/sbin/vzctl exited with code 79
post create action failed for CT 9a9161a0-f523-44cc-af26-20a780e84e37
unlocking 100
unlocking 9a9161a0-f523-44cc-af26-20a780e84e37
WARNING: You are using a deprecated CLI component that won't be installed by default in the next major release. Please use virsh instead
2025-01-13 11:35:55,529 INFO: Backup created successfully with BACKUP_CTUUID: 9a9161a0-f523-44cc-af26-20a780e84e37
2025-01-13 11:35:55,542 INFO: CT ct-powerpanel switched successfully to vzlinux distribution.
ERROR: ld.so: object '/usr/libexec/vztt_checker_open.so' from LD_PRELOAD cannot be preloaded: ignored.
2025-01-13 11:37:46,681 INFO: CT ct-powerpanel upgraded successfully.
Warning: RPMDB altered outside of yum.
2025-01-13 11:38:17,123 INFO: yum -y distro-sync completed successfully in CT ct-powerpanel.
2025-01-13 11:38:19,799 INFO: Yum shell commands executed successfully in CT ct-powerpanel.
WARNING: You are using a deprecated CLI component that won't be installed by default in the next major release. Please use virsh instead
2025-01-13 11:38:32,441 INFO: CT ct-powerpanel have been restarted.
2025-01-13 11:38:43,945 INFO: PowerPanel vzapi in CT ct-powerpanel is accessible
2025-01-13 11:38:43,945 INFO: CT ct-powerpanel PowerPanel seems to be working
2025-01-13 11:38:44,241 DEBUG: Output of needs-restarting -r for CT ct-powerpanel:
No core libraries or services have been updated.
Reboot is probably not necessary.
2025-01-13 11:38:44,241 WARNING: No restart is necessary for CT ct-powerpanel.
2025-01-13 11:38:44,413 DEBUG: Output of needs-restarting -r for CT ct-powerpanel:
No core libraries or services have been updated.
Reboot is probably not necessary.
2025-01-13 11:38:44,413 WARNING: No restart is necessary for CT ct-powerpanel.
2025-01-13 11:38:44,413 INFO: All operations completed successfully for CT ct-powerpanel with BACKUP_CTUUID: 9a9161a0-f523-44cc-af26-20a780e84e37.

If the converted container or PowerPanel service inside it is not running, the system takes the following actions:

  1. Stopping the container.

  2. Renaming it to <original-name>-convert-failed.

  3. Removing network configuration from the failed container.

  4. Restoring the backup of the container.

  5. Starting the container.

  6. Informing about the failed conversion.

Important

If a bridged network is used, assign the removed IP address back to the original container on your own:

# prlctl set powerpanel --device-set net0 --ipadd <addr>

10.7.3. Manual Reversion to Backup Container

You can manually revert a container to its previous state if required or if automatic reversion to the backup container, applied after conversion issues, fails. To do it:

  1. (Optional) Rename the backup container with a unique name (ensure it is other than the source CT UUID, CTID, or name):

    # prlctl set BACKUP_CTUUID --name UNIQUE_CT_NAME
    
  2. If a bridged network is used, assign the removed IP address back to the original container on your own:

    # prlctl set BACKUP_CTUUID --device-set net0 --ipadd <addr>
    
  3. Stop the converted container if it is running:

    # prlctl stop <original-name>
    
  4. Start the backup container:

    # prlctl start BACKUP_CTUUID