This article describes how to migrate from Zevenet 5.2 version to Zevenet 6 without service disruption, using the new APT repositories available for software upgrades. It’s required to perform not only a software update but a software upgrade and translation of configuration files, as the Zevenet 6 operating system is based on the latest long term supported kernel version 4.19 with the very new networking technology available but also providing very new abilities in userspace.
For that reason, in order to make the migration process as easy and robust as possible, it’s required to ensure that the previous system will be running with the latest Zevenet 5.2 version and a new Zevenet 6 is deployed and ready to receive the configuration.
Please ensure that the Zevenet Load Balancer that is going to be migrated is currently running the latest Zevenet 5.2.x with the following command:
root@myzevenet5k:~# dpkg -l | grep zevenet ii zevenet 5.2.14 amd64 ZEVENET Load Balancer Enterprise Edition ii zevenet-ipds 1.0.180810 amd64 Security updates to feed IPDS module of ZEVENET Load Balancer ii zevenet-web-gui 1.2.7 all Web GUI of Zevenet Enterprise
Also, it’s needed to deploy or install the new Zevenet Load Balancer with any of the Zevenet 6000 appliances available (virtual, baremetal, cloud, hardware, etc). Zevenet migration is totally supported in the license, so this Zevenet 6 need to be called with the same hostname that your current Zevenet 5 in order to be replaced, just request to the team a new temporary activation certificate meanwhile the migration is in process. Then, please deploy the Zevenet 6, activate it and update it to the latest version using the following commands:
root@myzevenet6k:~# checkupgrades 25 package(s) require upgrade To upgrade, execute: apt-get --with-new-pkgs upgrade root@myzevenet6k:~# apt-get --with-new-pkgs upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done The following packages will be upgraded: curl dpkg libcurl4 libexpat1 libgssapi-krb5-2 libk5crypto3 libkrb5-3 libkrb5support0 libpq5 libpython3-stdlib libpython3.7-minimal libpython3.7-stdlib librrds-perl libssl1.1 nftlb openssl pound python3 python3-minimal python3.7 python3.7-minimal rrdtool unzip zevenet zevenet-base-files 25 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Need to get 13.6 MB of archives. After this operation, 101 kB of additional disk space will be used. Do you want to continue? [Y/n] Y . . .
Internet access from the appliance is required in order to update via APT repository, please configure a navigation proxy if needed in the section System > Remote Services > Proxy. If there is no chance to have Internet access at all, please contact our Team in order to build a local updates repository.
The migration process automates the following actions:
Migration of configured objects: virtual services or farms, IPDS, network, SNMP service, DNS service, SSH service, and SSL Certificates.
The hostname of Zevenet 6 won’t be imported.
The cluster configuration won’t be imported.
The global.conf file won’t be overwritten (ensure that the gateway configuration is the same).
The activation certificate for this new system won’t be modified.
The web service configuration for the web GUI file will be imported, so if you modified the SSL certificate section please ensure that the needed files for SSL have been previously copied to the new Zevenet Server.
Migration of configuration files
Go to the web GUI of Zevenet 5.2, menu section System > Backups and create a new backup with the name migration-<hostname>, for example, migration-myzevenet. Once the backup is done please download it locally in your computer.
Then, connect to the new web GUI of Zevenet 6, go to the section System > Backups and select the option Upload Backup, enter a descriptive name for the migration backup, now find the already downloaded tarball backup file from 5.2 locally and upload it. Once the file is completely uploaded you will be able to see this copy in the main backup table.
Now, go to the Zevenet 6 in command line, and confirm the backup file has been uploaded by running the following command:
root@myzevenet6k:~# ls /usr/local/zevenet/backups/ backup-migration-myzevenet.tar.gz
The configuration files are ready to be migrated, so let’s apply the configuration backup to Zevenet 6 with the command zenbackup.pl <backup-name> -D52to60, in our example:
root@myzevenet6k:~# zenbackup.pl migration-myzevenet -D52to60 Importing from Zevenet 5.2 to Zevenet 6, using /usr/local/zevenet/backups/backup-migration-myzevenet.tar.gz A snapshot before to continue is recommended for Virtual Load Balancers. Will be kept: current hostname, global.conf and activation certificate file. Cluster configuration won't be imported. Press a key to start... . . . Configuration files have been moved to the local system. Running migration: - Blacklists - HTTP parameters - Network interfaces - L4xNAT farms - RBAC roles Finished, please restart the load balancer in order to apply the changes.
At this point, the system is ready to be restarted, before that ensure to power off the Zevenet Load Balancer 5 in order to avoid duplicated IP addresses in the network.
Due to networking architectural reasons, Zevenet cluster service won’t be migrated but the setup of the new cluster is trivial.
It’s required to prepare another Zevenet 6 Load Balancer as described at the beginning of this article and once this instance is ready with the hotfixes applied, just connect to web GUI of the Zevenet 6 master node (which contains the whole configuration), go to menu section System > Cluster and create a new cluster service with both Zevenet 6 servers. All the configuration will be replicated automatically from master to slave.
In case of any unexpected behavior during the startup of the new Zevenet 6 appliance with the virtual services, please apply the following procedure:
1. Run a supportsave in the Zevenet Load Balancer 6 and save it (if you are running a cluster then execute this command in both nodes).
2. Power off the Zevenet 6 nodes and start again Zevenet 5 nodes.
3. Open a new support case with a detailed explanation of the experienced issue and attach to it the support saves generated before.
Happy Zevenet 6 migration!