Upgrade Failure or Upgrade evaluation tool flags NSGroup, when the NSgroup contains a nested expression for TransportNode.
search cancel

Upgrade Failure or Upgrade evaluation tool flags NSGroup, when the NSgroup contains a nested expression for TransportNode.

book

Article ID: 325031

calendar_today

Updated On:

Products

VMware NSX VMware NSX-T Data Center

Issue/Introduction

  •  Upgrade Evaluation Tools indicates an issue with the NSGroup 
    or
  •  NSX-T Manager Upgrade Failure at run_migration_tool phase


Log Location for upgrade evaluation tool failure -  /var/log/proton/data-migration.log (in the Upgrade Evaluation Tool), error similar to following will be observed:

2022-02-09T19:10:06.866Z WARN main UfoCorfuTableMigrator 10438 - [nsx@6876 comp="nsx-manager" level="WARNING" subcomp="manager"] ERROR while running custom migration MappingDetails{modelName='com.vmware.nsx.management.groupingobjects.nsgroup.model.NSGroup', migrationType=CUSTOM_MIGRATION, reason='null', customMigratorClassName='com.vmware.nsx.management.migration.task.group.RealizedNSGroupMigrationTask', fieldMappings=null, targetProtoName='null', requiresCustomCode='false', owner='null', apiToTest='null'}
java.lang.ClassCastException: com.vmware.nsx.management.groupingobjects.nsgroup.pojo.NSGroupComplexExpression cannot be cast to com.vmware.nsx.management.groupingobjects.nsgroup.pojo.NSGroupSimpleExpression
        at com.vmware.nsx.management.migration.ufo.converter.TNIntentExpressionConverter.createExpressionNode(TNIntentExpressionConverter.java:86) ~[data-migration-gc.jar:?]
        at com.vmware.nsx.management.migration.ufo.converter.NSGroupIntentConverter.toIntentExpressions(NSGroupIntentConverter.java:193) ~[data-migration-gc.jar:?]
        at com.vmware.nsx.management.migration.ufo.converter.NSGroupIntentConverter.toIntentModel(NSGroupIntentConverter.java:110) ~[data-migration-gc.jar:?]
        at com.vmware.nsx.management.migration.task.group.NsGroupMigrationTask.migrate(NsGroupMigrationTask.java:123) ~[data-migration-gc.jar:?]
        at com.vmware.nsx.management.migration.task.group.RealizedNSGroupMigrationTask.migrate(RealizedNSGroupMigrationTask.java:209) ~[data-migration-gc.jar:?]
        at com.vmware.nsx.management.migration.ufo.UfoCorfuTableMigrator.customMigration(UfoCorfuTableMigrator.java:214) [data-migration-gc.jar:?]
        at com.vmware.nsx.management.migration.ufo.UfoCorfuTableMigrator.migrate(UfoCorfuTableMigrator.java:176) [data-migration-gc.jar:?]
        at com.vmware.nsx.management.migration.ufo.UFOMigration.migrate(UFOMigration.java:258) [data-migration-gc.jar:?]
        at com.vmware.nsx.management.migration.ufo.UFOMigration.migrate(UFOMigration.java:191) [data-migration-gc.jar:?]
        at com.vmware.nsx.management.migration.impl.ProtonMigration.executeMigrations(ProtonMigration.java:57) [data-migration-gc.jar:?]
        at com.vmware.nsx.management.migration.impl.Migration.migrate(Migration.java:46) [data-migration-gc.jar:?]
        at com.vmware.nsx.management.migration.impl.ProtonMigration.main(ProtonMigration.java:37) [data-migration-gc.jar:?]



The Upgrade Evaluation tool catches the issue and alerts as follows (example run):

dry-run> start dry-run data-migration mp-ip <Manager IP Address>
Root password of the Remote MP node:
Checking ssh connectivity to the MP node <Manager IP Address> with root user...
Checking if nub is unpacked
Nub is already unpacked
Creating a temporary folder on MP <Manager IP Address>
Copy Corfu data to the temporary folder on MP <Manager IP Address>
Copy nsx_issue file to the temporary folder on MP <Manager IP Address>
Create tar of the temporary folder on MP <Manager IP Address>
Delete the temporary folder on MP <Manager IP Address>
Fetching tar containing Corfu data
Delete tar file on MP
Downloaded corfu tgz file of size 21 MB
Loading the fetched Corfu data
Stopping Corfu server
Stopping CBM
Untaring the data
Starting Corfu server
Starting data-migration dry-run
Running.... Please track progress in /var/log/cloudnet/data-migration.log, /var/log/proton/data-migration.log, /var/log/policy/data-migration.log, /var/log/proton/logical-migration.log
*** WARNING: Some pre-upgrade check(s) failed. Do not proceed with the upgrade. Please collect the support bundle and contact VMWare GSS***
NSGroup



Environment

VMware NSX-T Data Center

Cause

The upgrade script is not equipped to handle the user-created Nsgroup, if the Nsgroup contains a TransportNode complex expression it will fail. For instance if the NSgroup contains both Edge and Host transport nodes.

Resolution

This issue is fixed in VMware NSX-T Data Center 3.2.1. 

Workaround
Simplify the "NSGroupComplexExpression" via API/GUI and re-run the Upgrade Evaluation Tool/Upgrade. NSgroups must only contain a single transport node type.


Additional Information

Steps to Reproduce the issue:

Create an NSgroup with TransportNode complex expression. For Example: Creating an NSgroup where the Transport node is both Edge and Host Node results in NULL after the evaluation since Transport Node be Edge or Host but never both

Impact/Risks:
The Upgrade Evaluation Alerts the customer not to proceed with the Upgrade
or
Upgrade Fails if the Upgrade Evaluation Alerts are not handled.