Enabling BGP on a VRF Gateway fails with error "Only ecmp, enabled, BGP Aggregate to be configured for VRF BGP Config."
search cancel

Enabling BGP on a VRF Gateway fails with error "Only ecmp, enabled, BGP Aggregate to be configured for VRF BGP Config."

book

Article ID: 326339

calendar_today

Updated On:

Products

VMware NSX Networking

Issue/Introduction

Symptoms:
  • NSX-T version 3.0.1
  • Enabling BGP on a VRF Gateway fails with error "Only ecmp, enabled, BGP Aggregate to be configured for VRF BGP Config."


Environment

VMware NSX-T Data Center
VMware NSX-T Data Center 3.x

Cause

When enabling BGP from the NSX-T UI, additional configuration such as Graceful restart are included in the request and since those configuration are not supported on VRF Gateways, the configuration is failing with the error mentioned in this KB.

Resolution

Currently, there is no resolution.

Workaround:
As a workaround, you can enable BGP on the VRF Gateway using API:

1. Find the VRF Gateway id (should be the same as display name):
GET /policy/api/v1/infra/tier-0s/

Example of output:
        {
            "_create_time": 1598347018138,
            "_create_user": "admin",
            "_last_modified_time": 1598347018275,
            "_last_modified_user": "admin",
            "_protection": "NOT_PROTECTED",
            "_revision": 0,
            "_system_owned": false,
            "default_rule_logging": false,
            "disable_firewall": false,
            "display_name": "T0-VRF",
            "failover_mode": "NON_PREEMPTIVE",
            "force_whitelisting": false,
            "ha_mode": "ACTIVE_ACTIVE",
            "id": "T0-VRF",
(...)


2. Retrieve the  VRF Gateway BGP settings:
GET /policy/api/v1/infra/tier-0s/{VRF_T0}/locale-services/default/bgp
*where {VRF_T0} is the VRF Gateway id from step 1.


Example of output:
{
    "_create_time": 1598347018747,
    "_create_user": "admin",
    "_last_modified_time": 1598347018752,
    "_last_modified_user": "admin",
    "_protection": "NOT_PROTECTED",
    "_revision": 0,
    "_system_owned": false,
    "display_name": "bgp",
    "ecmp": true,
    "enabled": false,
    "id": "bgp",
    "marked_for_delete": false,
    "overridden": false,
    "parent_path": "/infra/tier-0s/T0-VRF/locale-services/default",
    "path": "/infra/tier-0s/T0-VRF/locale-services/default/bgp",
    "relative_path": "bgp",
    "resource_type": "BgpRoutingConfig",
    "unique_id": "8fcbe36a-188f-4046-9092-999bddd1877b"
}
3. Enable BGP using PUT API
API: PUT /policy/api/v1/infra/tier-0s/{VRF_T0}/locale-services/default/bgp
Body: Copy the output from step 2. and replace "enabled": false, with "enabled": true,

Example:
PUT /policy/api/v1/infra/tier-0s/{VRF_T0}/locale-services/default/bgp
Body:
{
    "_create_time": 1598347018747,
    "_create_user": "admin",
    "_last_modified_time": 1598347018752,
    "_last_modified_user": "admin",
    "_protection": "NOT_PROTECTED",
    "_revision": 0,
    "_system_owned": false,
    "display_name": "bgp",
    "ecmp": true,
    "enabled": true,
    "id": "bgp",
    "marked_for_delete": false,
    "overridden": false,
    "parent_path": "/infra/tier-0s/T0-VRF/locale-services/default",
    "path": "/infra/tier-0s/T0-VRF/locale-services/default/bgp",
    "relative_path": "bgp",
    "resource_type": "BgpRoutingConfig",
    "unique_id": "8fcbe36a-188f-4046-9092-999bddd1877b"
}



4. Confirm that BGP is enabled on the VRF Gateway using the NSX-T Manager UI or the API from step 2.