The following procedure describes replacing an NSX Edge transport node in an NSX Edge cluster using the NSX-T API. You can replace the Edge transport node regardless of whether it is running or not.

If the Edge node to be replaced is not running, the new Edge node can have the same management IP address and TEP IP address. If the Edge node to be replaced is running, the new Edge node must have a different management IP address and TEP IP address.

Prerequisites

Familiarize yourself with the procedure to install an NSX Edge node, join the Edge node with the management plane, and create an NSX Edge transport node. For more information, see the NSX-T Data Center Installation Guide.

Procedure

  1. If you want the new Edge transport node to have the same configurations as the Edge transport node to be replaced, make the following API call to find the configurations:
    GET https://<nsx-manager-IP>/api/v1/transport-nodes/<tn-id>
  2. Follow the prcedures in the NSX-T Data Center Installstion guide to install and configure an Edge transport node.
    If you want this Edge transport node to have the same configurations as the Edge transport node to be replaced, use the configurations obtained in step 1.
  3. Make an API call to get the ID of the new transport node and the transport node to be replaced. The id field contains the transport node ID. For example,
    GET https://<nsx-manager-IP>/api/v1/transport-nodes
    ... 
       {
          "resource_type": "TransportNode",
          "description": "",
          "id": "73cb00c9-70d0-4808-abfe-a12a43251133",
          "display_name": "TN-edgenode-01a",
    ...
        {
          "resource_type": "TransportNode",
          "description": "",
          "id": "890f0e3c-aa81-46aa-843b-8ac25fe30bd3",
          "display_name": "TN-edgenode-03a",
    
  4. Make an API call to get the ID of the NSX Edge cluster. The id field contains the NSX Edge cluster ID. Get the members of the NSX Edge cluster from the members array. For example,
    GET https://<nsx-manager-IP>/api/v1/edge-clusters
    ....
        {
          "resource_type": "EdgeCluster",
          "description": "",
          "id": "9a302df7-0833-4237-af1f-4d826c25ad78",
          "display_name": "Edge-Cluster-1",
    ...
          "members": [
            {
              "member_index": 0,
              "transport_node_id": "73cb00c9-70d0-4808-abfe-a12a43251133"
            },
            {
              "member_index": 1,
              "transport_node_id": "e5d17b14-cdeb-4e63-b798-b23a0757463b"
            }
          ],
  5. Make an API to replace a transport node in an NSX Edge cluster. The member_index must match the index of the transport node to be replaced.
    For example, the transport node TN-edgenode-01a (73cb00c9-70d0-4808-abfe-a12a43251133) has failed and is replaced by transport node TN-edgenode-03a (890f0e3c-aa81-46aa-843b-8ac25fe30bd3) in NSX Edge cluster Edge-Cluster-1 (9a302df7-0833-4237-af1f-4d826c25ad78).
    POST http://<nsx-manager-IP>/api/v1/edge-clusters/9a302df7-0833-4237-af1f-4d826c25ad78?action=replace_transport_node
    {
        "member_index": 0,
        "transport_node_id" : "890f0e3c-aa81-46aa-843b-8ac25fe30bd3"
    }

Results

If you are running an NSX-T version earlier than 3.1.3, after replacing the NSX Edge transport node, you might see the alarm "All BGP/BFD sessions are down." To resolve the issue, follow the workaround instructions in the KB article https://kb.vmware.com/s/article/83983.