2.4. Upgrading Virtuozzo PowerPanel

Important

Make a complete backup of the controller before upgrading. If you have customized the configuration files /etc/vzapi/vzapi.conf and /etc/keystone/keystone.conf, copy them to a safe location and keep them at hand.

Note

Virtuozzo PowerPanel services may need to be stopped and restarted during upgrade, resulting in a certain downtime.

Typically, notifications are sent out about each Virtuozzo PowerPanel release, so you know when you can upgrade. In addition, you can manually check for updates at any time using vzapi-installer check-upgrade --minimal or --full. The latter option provides more ways to filter command’s JSON output.

The output may look like this:

# vzapi-installer check-upgrade --minimal
{
  "ppcontroller.example.com": {
    "status": "updates-available",
    "updates": [
      "pp-ui-1.0.85-1.vl7"
    ]
  },
  "ppnode1.example.com": {
    "status": "updates-available",
    "updates": [
      "docker.io/virtuozzo/vzapi-compute:1.0.73"
    ]
  }
}

After confirming that an update is available, do the following:

  1. Update the installer package:

    # yum update vzapi-installer
    

    YUM will back up the current configuration templates /usr/share/vzapi-installer/roles/api/templates/vzapi.conf.j2 and /usr/share/vzapi-installer/roles/keystone/templates/keystone.conf.j2 to *.j2.rpmsave and replace them with the updated ones.

  2. If you have customized the *.j2 templates, merge the customizations from the *.j2.rpmsave backups to the new templates.

    Note

    For the upgrade, the identity driver must be set to SQL (driver = sql) in /usr/share/vzapi-installer/roles/keystone/templates/keystone.conf.j2.

  3. Start the upgrade:

    # vzapi-installer upgrade <upgrade_package_URL>
    

    Where <upgrade_package_URL> is the URL of the pp-release package that installs a repository for the upgrade. The URL becomes available when an update is released. It is mentioned in Deploying the Controller as well as the release notes.

    The controller and compute nodes will be redeployed. The current configuration files /etc/vzapi/vzapi.conf and /etc/keystone/keystone.conf will be deleted and created anew from the updated templates. If you have customized the *.conf files, merge the customizations from the previously saved copies to the new files.

Note

If compute nodes have issues connecting to the controller, try restarting their respective services with systemctl restart vzapi-compute.