2.2. Upgrading Virtuozzo 6 with Virtuozzo Storage

This section describes how to upgrade your Virtuozzo Storage cluster based on Virtuozzo 6 to a Virtuozzo Storage cluster with CLI management based on Virtuozzo 7. You can do this by using spare Virtuozzo 6 servers or in-place or migrate VMs and containers to a new Virtuozzo Storage cluster.

2.2.1. Upgrading with Spare Virtuozzo 6 Servers

  1. Update all servers in the cluster based on Virtuozzo 6 to the latest version. You can do this by running yum update on each server.

    Note

    The oldest Virtuozzo 6 build eligible for upgrade is 6.0.11-3466.

  2. Choose a server to upgrade in the cluster and migrate VMs and containers from it to other Virtuozzo 6 servers in the cluster.

  3. Remove chunk servers from the server:

    1. Find out which chunk servers are stored on the server by running pstorage -c <cluster_name> top on any cluster server.
    2. Initiate removal of chunk servers from the server by running pstorage -c <cluster_name> rm-cs --wait <CS_ID> for each chunk server on the server.
  4. Wait until the required chunk servers are removed and Virtuozzo Storage rebuilds. To monitor this process, run pstorage -c <cluster_name> top on any cluster server. The status of the chunk servers being removed will become releasing and the number of replicas on them will start dwindling. When the number of replicas on a CS reaches zero, the CS will be removed both from the server and the pstorage top output. Make sure that no chunk servers are left on the server to be upgraded.

  5. Perform a fresh install of Virtuozzo 7 on the server. During installation, choose to create a new Virtuozzo Storage cluster. For instructions, see the Virtuozzo 7 Installation Guide.

  6. Choose another Virtuozzo 6 server in the old cluster and migrate VMs and containers from it to the new Virtuozzo Storage cluster based on Virtuozzo 7. For details, see Migrating VMs and Containers from Virtuozzo 6 to Virtuozzo 7.

  7. If you have iSCSI targets on your Virtuozzo Storage cluster based on Virtuozzo 6, move them to the new Virtuozzo Storage cluster based on Virtuozzo 7. For details, see Moving iSCSI Targets between Virtuozzo Storage Clusters.

  8. Perform a fresh install of Virtuozzo 7 on the second server. During installation, choose to join the new Virtuozzo Storage cluster based on Virtuozzo 7. For instructions, see the Virtuozzo 7 Installation Guide.

  9. Repeat steps 6-8 for the remaining servers in the old cluster until all Virtuozzo 6 servers are upgraded to Virtuozzo 7.

  10. If you store VM and container backups on a Virtuozzo 6 server, move them to a Virtuozzo 7 server as described in Restoring Virtuozzo 6 Backups to Virtuozzo 7 Servers.

2.2.2. Upgrading by Migrating to a New Virtuozzo Storage Cluster

To upgrade by migrating VMs and containers from an old Virtuozzo Storage cluster based on Virtuozzo 6 to a new Virtuozzo Storage cluster based on Virtuozzo 7, do the following:

  1. Update all servers in the cluster based on Virtuozzo 6 to the latest version. You can do this by running yum update on each server.

    Note

    The oldest Virtuozzo 6 build eligible for upgrade is 6.0.11-3466.

  2. On a different set of servers, create a new Virtuozzo Storage cluster based on Virtuozzo 7. For instructions, see the Virtuozzo 7 Installation Guide.

  3. Migrate VMs and containers from the old cluster to the new cluster. For more details, see Migrating VMs and Containers from Virtuozzo 6 to Virtuozzo 7.

  4. If you have iSCSI targets on your Virtuozzo Storage cluster based on Virtuozzo 6, move them to the new Virtuozzo Storage cluster based on Virtuozzo 7. For details, see Moving iSCSI Targets between Virtuozzo Storage Clusters.

  5. If you store VM and container backups on a Virtuozzo 6 server, move them to a Virtuozzo 7 server as described in Restoring Virtuozzo 6 Backups to Virtuozzo 7 Servers.

2.2.3. Upgrading In-Place with Virtuozzo Storage

Virtuozzo 6 hardware nodes in a Virtuozzo Storage cluster can be upgraded in-place to Virtuozzo 7 as follows:

  1. Update all servers in the cluster to the latest version of Virtuozzo 6. You can check versions on all cluster nodes with pstorage -c <cluster_name> stat.

    Note

    The oldest Virtuozzo 6 build eligible for upgrade is 6.0.11-3466.

  2. Add at least two spare Virtuozzo 7 servers to the cluster to ensure high availability of virtual environments that will be hosted on the upgraded Virtuozzo 7 servers. To do this, perform a fresh install of Virtuozzo 7 on two or more servers. During installation, choose to join your Virtuozzo Storage cluster and tick the checkbox for the Client Server Role that will automatically enable HA for virtual machines and containers registered on the server (for more details, see the Virtuozzo 7 Installation Guide).

  3. If you have iSCSI targets registered on the Virtuozzo 6 server, stop and unregister them from the server before the upgrade. For example, for the target iqn.2014-04.com.pstorage:test1 run:

    # pstorage-iscsi stop -t iqn.2014-04.com.pstorage:test1
    # pstorage-iscsi unregister -t iqn.2014-04.com.pstorage:test1
    
  4. If you have virtual machines on the Virtuozzo 6 server, migrate them to the newly added Virtuozzo 7 servers as described in Migrating VMs and Containers from Virtuozzo 6 to Virtuozzo 7.

  5. Upgrade each cluster node, one at a time, to Virtuozzo 7 as described in Upgrading In-Place with Local Storage.

  6. Re-register the iSCSI targets and restart them on the upgraded Virtuozzo 7 server. For example, for the target iqn.2014-04.com.pstorage:test1 run:

    # vstorage-iscsi register -t iqn.2014-04.com.pstorage:test1
    # vstorage-iscsi start -t iqn.2014-04.com.pstorage:test1
    
  7. When only three Virtuozzo 6 servers are left to upgrade, migrate all virtual environments from them to the upgraded Virtuozzo 7 servers. For more details, see Migrating VMs and Containers from Virtuozzo 6 to Virtuozzo 7.

  8. Repeat step 5 for the remaining servers until all Virtuozzo 6 servers are upgraded to Virtuozzo 7.

If at some point your cluster happens to be populated with both Virtuozzo 6 and Virtuozzo 7 hardware nodes, it will retain the functionality of Storage for Virtuozzo 6 but not gain the new features of Storage for Virtuozzo 7 like erasure coding. As soon as all of the hardware nodes in such a hybrid cluster are upgraded to Virtuozzo 7, the cluster will begin operating with complete functionality offered by Storage for Virtuozzo 7.

Note

Even though Virtuozzo Storage supports mixed clusters, it is recommended to eventually upgrade all nodes in the cluster to Virtuozzo 7.