datacenter / ACI-Pre-Upgrade-Validation-Script

A script to run validations to detect potential issues that may cause an ACI fabric upgrade to fail
https://datacenter.github.io/ACI-Pre-Upgrade-Validation-Script/
Apache License 2.0
43 stars 27 forks source link

NewValidation: CSCwh68103: Enhance PD for sanitizing the tDN of class infraRsHPathAtt and fabricRsOosPath #172

Open joelebla opened 1 month ago

joelebla commented 1 month ago

(use upvote :thumbsup: for attentions)

Validation Type

[ ] - Fault

[X] - Config

[ ] - Bug

[ ] - Other

What needs to be validated

There are multiple scenarios described in the defect that can lead to failure of config deployment on upgrade to version with fix for CSCwh68103.

  1. Wrong class ID, for example user enter uni/infra/funcprof/accbundle-legacy as target
  2. Malformed port like Eth1/1 (capital letter), eth/1, eth1//4
  3. FEX fabricPathEP should be topology/pod-1/paths-102/extpaths-133/pathep-[eth1/1] instead of topology/pod-1/paths-102/pathep-[eth133/1/1]
  4. Wrong fex id -> it should be greater than 101
  5. Leaf Interface profile contains breakout port that exceeds 16 (Example: 1/1/17 or 1/1/50)

Why it needs to be validated

Such misconfiguration on the source version will result in policy deployment failure on the destination. This includes VPC configuration failure and outage.

Additional context

The validation should detect any of the 5 scenarios, identify the problematic configuration for the user, and recommend the method of resolution depending on impacting scenario.

kshcheku commented 1 month ago

A new scenario was recently discovered where a customer configured etherbnet interfaces starting from 0.

dn           : uni/infra/hpaths-1_eth1_0/rsHPathAtt-[topology/pod-1/paths-1/pathep-[eth1/0]]
dn           : uni/infra/hpaths-2_eth1_0/rsHPathAtt-[topology/pod-2/paths-2/pathep-[eth1/0]]
dn           : uni/infra/hpaths-3_eth1_0/rsHPathAtt-[topology/pod-2/paths-3/pathep-[eth1/0]]
dn           : uni/infra/hpaths-4_eth1_0/rsHPathAtt-[topology/pod-1/paths-4/pathep-[eth1/0]]
dn           : uni/infra/hpaths-5_eth1_0/rsHPathAtt-[topology/pod-1/paths-5/pathep-[eth1/0]] 

After the upgrade to 5.3(2c), it triggered the following error: "Error: 400 - Failed to decode IfIndex, id: 0x1ffff000, error: 1".