You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
sauguieb
changed the title
Adding virual MAC configurarion on a Bridge domain ( issue is seen when previous value configured on the BD is empty failure
Adding virual MAC configurarion on a Bridge domain failure
Jul 19, 2024
sauguieb
changed the title
Adding virual MAC configurarion on a Bridge domain failure
Adding virual MAC configurarion on a Bridge domain fails when vMAC is empty
Jul 19, 2024
Suspect that the VAC is not initialised by NDO on the create via ansible when VMAC is not provided, thus the entry is not present in NDO. Replace operation will fail because the attribute cannot be replaced because it does not exist. Likely needs to be raised as bug to NDO.
github-actionsbot
changed the title
Adding virual MAC configurarion on a Bridge domain fails when vMAC is empty
Adding virual MAC configurarion on a Bridge domain fails when vMAC is empty (DCNE-94)
Aug 14, 2024
Community Note
Description
cannot add a vMAC on BD.
playbook fails at execution when a vMAC is configured on an existing BD or the playbook creates a BD with a vMAC
failure is not seen when a vMAC is already configured on BD.
For instance, these two scenario are working:
Affected Module Name(s):
MSO version and MSO Platform
ND: 3.0.1i
NDO: 4.2.3k
APIC version and APIC Platform for Site Level Resources
APIC: 5.3.2c
Collection versions
Output/ Error message
FAILED! => {
"changed": true,
"current": {
"arpFlood": true,
"description": "",
"dhcpLabels": [],
"displayName": "BD-Stretched",
"epMoveDetectMode": "none",
"intersiteBumTrafficAllow": true,
"l2Stretch": true,
"l2UnknownUnicast": "flood",
"l3MCast": false,
"multiDstPktAct": "bd-flood",
"name": "BD-Stretched",
"optimizeWanBandwidth": false,
"subnets": [
{
"description": "192.168.150.254/24",
"ip": "192.168.150.254/24",
"noDefaultGateway": false,
"primary": true,
"querier": false,
"scope": "private",
"shared": false,
"virtual": true
}
],
"tagAnnotations": [],
"unicastRouting": true,
"unkMcastAct": "flood",
"uuid": "13442d07-9575-45a0-b38e-2522a4439771",
"v6unkMcastAct": "flood",
"vmac": "00:00:5E:00:01:3C",
"vrfRef": {
"schemaId": "6698f68cce0aa10f3be3ef6d",
"templateName": "VRF_TEMPLATE",
"vrfName": "VRF01"
}
},
"data": [
{
"op": "replace",
"path": "/templates/DC_ALL/bds/BD-Stretched/vrfRef",
"value": {
"schemaId": "6698f68cce0aa10f3be3ef6d",
"templateName": "VRF_TEMPLATE",
"vrfName": "VRF01"
}
},
{
"op": "replace",
"path": "/templates/DC_ALL/bds/BD-Stretched/vmac",
"value": "00:00:5E:00:01:3C"
}
],
"info": {
"body": {
"code": 400,
"info": null,
"message": "replace operation does not apply: doc is missing key: /templates/3/bds/0/vmac: missing value"
},
"connection": "close",
"content-language": "en",
"content-length": "129",
"content-type": "application/json",
"error": {
"code": -1,
"message": {
"code": 400,
"info": null,
"message": "replace operation does not apply: doc is missing key: /templates/3/bds/0/vmac: missing value"
}
},
"method": "PATCH",
"msg": "OK (129 bytes)",
"server": "nginx",
"status": 400,
"strict-transport-security": "max-age=31536000; includeSubDomains",
"url": "https://10.48.187.200:443/mso/api/v1/schemas/6698f68cce0aa10f3be3ef6d?validate=false",
"x-ratelimit-limit": "-1",
"x-ratelimit-remaining": "-1",
"x-ratelimit-reset": "1559582945"
},
"invocation": {
"module_args": {
"arp_flooding": null,
"bd": "BD-Stretched",
"description": null,
"dhcp_policies": null,
"dhcp_policy": null,
"display_name": null,
"host": "10.48.187.200",
"intersite_bum_traffic": true,
"ipv6_unknown_multicast_flooding": "flood",
"layer2_stretch": true,
"layer2_unknown_unicast": "flood",
"layer3_multicast": false,
"login_domain": null,
"multi_destination_flooding": "flood_in_bd",
"multicast_route_map_destination_filter": null,
"multicast_route_map_source_filter": null,
"optimize_wan_bandwidth": false,
"output_level": "normal",
"password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
"port": null,
"schema": "HSM_TN_NDO_423K_VRF",
"state": "present",
"subnets": [
{
"description": "192.168.150.254/24",
"ip": "192.168.150.254/24",
"no_default_gateway": false,
"primary": true,
"querier": false,
"scope": "private",
"shared": false,
"subnet": "192.168.150.254/24",
"virtual": true
}
],
"template": "DC_ALL",
"timeout": null,
"unicast_routing": true,
"unknown_multicast_flooding": "flood",
"use_proxy": null,
"use_ssl": null,
"username": "admin",
"validate_certs": false,
"virtual_mac_address": "00:00:5E:00:01:3C",
"vrf": {
"name": "VRF01",
"schema": "HSM_TN_NDO_423K_VRF",
"template": "VRF_TEMPLATE"
}
}
},
"msg": "MSO Error 400: replace operation does not apply: doc is missing key: /templates/3/bds/0/vmac: missing value",
"payload": {
"code": 400,
"info": null,
"message": "replace operation does not apply: doc is missing key: /templates/3/bds/0/vmac: missing value"
},
"status": 400
}
Expected Behavior
Actual Behavior
Playbook tasks to Reproduce
(ansible-ndo) :~/ansible-ndo/ndo-playbooks$ cat 0002_add_bd_vmac_config.yml
name: ===== NDO 4.2(3k) / ND 3.0(1i) Testing =====
hosts: ndo
connection: local
gather_facts: false
tasks:
cisco.mso.mso_schema_template_bd:
host: "{{ ansible_host }}"
username: "{{ username }}"
password: "{{ password }}"
validate_certs: False
schema: HSM_TN_NDO_423K_VRF
template: DC_ALL
bd: BD-Stretched
intersite_bum_traffic: true
optimize_wan_bandwidth: false
layer2_stretch: true
layer2_unknown_unicast: flood
layer3_multicast: false
unknown_multicast_flooding: flood
multi_destination_flooding: flood_in_bd
ipv6_unknown_multicast_flooding: flood
virtual_mac_address: 00:00:5E:00:01:3C
unicast_routing: true
subnets:
primary: true
virtual: true
vrf:
name: VRF01
schema: HSM_TN_NDO_423K_VRF
template: VRF_TEMPLATE
state: present
Important Factoids
References
The text was updated successfully, but these errors were encountered: