Cisco Application Centric Infrastructure (ACI) relies on a well-defined naming convention for its managed objects (MOs) to ensure efficient manageability and troubleshooting. This blog post presents best practices for naming and numbering objects in Cisco ACI, offering guidelines to create a clear and consistent naming convention.
General Recommendations
Use Underscores as Delimiters:
Example: <fvTenant dn=”uni/tn-CloudMgmt_Tenant” name=”CloudMgmt_Tenant”>
Medial Capitals for Compound Words:
Example: CloudMgmt_Tenant, TenantCiscoDocs_AAEP, Leaf201_SwitchProfile
Consistent Numbering for Ports and Leaf/Spine Switches:
- Numbering virtual port channels (vPC):
- Example: Leaf201 and Leaf202 as a vPC pair.
- Numbering spine switches:
- Example: Number the spines from 101 to 199.
- Numbering leaf switches:
- Example: For a single site, use numbers 200 and above. For multiple pods, begin each pod with a multiple of 100. E.g., Pod1 leaf switches from 200 to 299, Pod2 leaf switches from 300 to 399.
Use Shorter Names for CLI Output:
Consider CLI output and choose shorter names when troubleshooting or listing objects.
Tenant Naming Conventions
Keep Tenant Names Short and Concise:
Example: ExampleProd, ExmplDev, ExCoTest
Application Profiles
Use Short Application Names with “_AP” Suffix:
Example: SampleApp_AP, SampleApp_Ap
Application Endpoint Groups (EPGs)
Use Descriptive Names with “_EPG” Suffix:
Example: Web_EPG, Vl101_EPG, Mgmt_EPG
Bridge Domains (BDs)
Associate BD Names with EPGs:
Example: Web_BD, Vl101_BD, Mgmt_BD
VRF (Routing Table)
Use Descriptive Names with “_VRF” Suffix:
Example: Main_VRF, Prod_VRF, DMZ_VRF
L3Out (External Routed Network)
Name L3Outs Based on Associated VRF:
Example: Prod_L3Out, TenantX_L3Out
L3Out Node Profiles and Interface Profiles
Use Switch Names with “_NodeProf” and “_IntProf” Suffixes:
Example: Leaf201_NodeProf, Leaf202_NodeProf, Leaf201_IntProf, Leaf202_IntProf
L3Out EPG
Employ Function Names with “_L3EPG” Suffix:
Example: DC_L3EPG, Internet_L3EPG, InetProxy_L3EPG
Contracts and Filters
Use Descriptive Names for Contracts and Filters:
Example: web_http_CT, web_https_CT, http_Filt, https_Filt
VPC Pairs
Use Leaf Switch Names with Logical Pair ID:
Example: lf201_lf202 or Leaf201_Leaf202
Interface Policies
Combine Feature and State in Policy Names:
Example: LLDP_Enable, CDP_Disable, LACP_Active
Interface Policy Groups
Describe Entity and Policy Group Type:
Example: Pod1_UCSB_APG, Server2_PC, N7K1_VPC
Switch Selectors (Profiles)
Use Short Switch Names with “_SwSel” Suffix:
Example: Lf201_SwSel or Leaf201_SwSel
Interface Selectors (Profiles)
Utilize Short Switch Names with “_IntProf” Suffix:
Example: Lf201_IntProf or Leaf201_IntProf
Access Port Selectors
List Access Ports with Descriptive Names:
Example: eth1_1, eth1_2, eth1_3, …, eth1_48
Attachable Access Entity Profiles (AAEPs)
Use Short Profile Names with “_AAEP” Suffix:
Example: EntProd_AAEP, EntDev_AAEP, EntTest_AAEP
VLAN Pools
Indicate Resource and Pool Type:
Example: EntProd_StaticVLPool, EntDev_DynVLPool
Domains
Name Domains Based on Resource and Type:
Example: EntProd_PhysDom, EntProd_ExtRoutedDom, EntProd_VMMDom
Conclusion:
Implementing a consistent naming convention is crucial for effectively managing Cisco ACI environments. By following the best practices outlined in this blog post, you can ensure clear and concise object names, improving operational efficiency and simplifying troubleshooting tasks. Remember to plan ahead and define your naming convention before deploying the ACI fabric to maintain consistency throughout your infrastructure.