Avi SDK and Migration Tools Release Notes
This article describes packaging changes, new features, and fixes in Avi SDK and Migration Tools.
On GitHub, see here.
Installation of Avi Migration Tools 17.1.1.post1
pip install avimigrationtools==17.1.1.post1 avisdk==17.1.1.post1
Full support for F5 partitions
F5 partitions are mapped into Avi Vantage tenants. All the virtual services, pools, etc. are created in the context of an Avi tenant.
Option to print tool version and Controller version
--version Print product version
All migration tools, such as
netscaler_converter.py show version of the tool being used. For example:
SDK Version: 17.1.1 Controller Version: 17.1
Option to add prefix to all objects
--prefix PREFIX Prefix for objects
Adding a prefix to all the Avi Vantage objects created during migration is useful when multiple F5 or NetScaler load balancers are being consolidated into a single Avi Controller and they have virtual services with same name. It is also useful when the profiles with same name have different settings across F5 or NetScaler devices.
Option to patch Avi configuration objects based on the side care patch file
--patch PATCH Run config_patch please provide location of patch.yaml
This option allows user overrides to migrated Avi objects such as updating the cloud settings for all pools that match the pattern public-cloud. For example, the patch file below changes the cloud for all pools that match p1 or public-cloud.
- match_name: p1 patch: name: coolpool cloud_ref: /api/cloud/?name=AWS - match_regex_name: "*public-cloud*" patch: enabled: False tenant_ref: /api/tenant/?name=awesome cloud_ref: /api/cloud/?name=AWS
Option to choose conversion output compatible with specific Avi Controller version
This conversion utility can be used for migration to either 16.4.x or 17.1.x Controllers based on the target Avi Controller version.
--controller_version CONTROLLER_VERSION Target Avi controller version. E.g., --controller_version 16.4.4
Option to ignore settings to be ignored during conversion
--ignore_config IGNORE_CONFIG config JSON to skip the config in conversion
This option is useful to ignore unused or undesired settings in F5 or NetScaler that should not be migrated to Avi. The default
ignore-config.yaml is located in the test directory of each tool.
Enhancements to the conversion summary and status
AVI sdk version: 17.1.1 Controller Version: 17.1.1 SKIPPED: 0 SUCCESSFUL: 103 INDIRECT: 50 NOT APPLICABLE: 92 PARTIAL: 4 DATASCRIPT: 0 EXTERNAL MONITOR: 3 NOT SUPPORTED: 14 INCOMPLETE CONFIGURATION: 11 MISSING FILE: 3 Total Objects of PoolGroup : 5 Total Objects of HTTPPolicySet : 0 Total Objects of SSLProfile : 2 (5/7 profile merged) Total Objects of SSLKeyAndCertificate : 2 Total Objects of NetworkProfile : 1 (0/1 profile merged) Total Objects of VsVip : 5 Total Objects of ApplicationProfile : 1 (0/1 profile merged) Total Objects of HealthMonitor : 4 Total Objects of VirtualService : 5 (5 full conversions) Total Objects of StringGroup : 0 Total Objects of ApplicationPersistenceProfile : 0 Total Objects of Pool : 9 Total Objects of PKIProfile : 0
This version adds several enhancements to the conversion status:
- It provides number of Avi objects created.
- It reports number of virtual services that were fully converted. Full conversion status indicates all settings of virtualservice, its referenced objects like pool, ssl key etc, were all fully converted without any setting being skipped.
- Avi configuration includes the prefix of the input file. This makes it easy to keep track of output configurations when multiple migrations are being done.
- Additional column “VS reference” added. This shows the virtual service each Netscaler command maps to. In case there are settings not used by any virtualservice then status “NOT IN USE” is reported.
Avi SDK is Python 3 compatible with Python 2.7 as well as Python 3+
SSL certificates enhancements
The migration tool checks whether the SSL key and certificate has a passphrase. In such cases it will create a dummy self-signed certificate as use that as Avi Controller would have failed the import.
- AV-16585: F5 conversion script wrongly puts server response data into maintenance server
- AV-21346: Config import is failing when trying to import multiple virtual services with the same IP
debian-package-avisdk-17.1.1.post1 (44.3 KB)
debian-package-avisdk-17.1.1.post1 (115 KB)
rpm–package-avisdk-17.1.1.post1 (48.2 KB)
Source code (zip)
Source code (tar.gz)