Create Transport Node

Create Transport Node

Enables a fabric node to act as a transport node. A fabric node is a node that contains host switches. Any node can serve as a transport node if it contains a vswitch. Such nodes include but are not limited to hypervisor hosts. Host switches (also known as bridges in OVS) are the individual switches within the vswitch. Virtual machines are connected to the host switches. A transport node is a node that is capable of participating in an NSX overlay or NSX VLAN networking. There are two types of transport nodes; NSX configured transport nodes and manually configured transport nodes. Manually configured transport nodes are currently only supported on KVM hypervisors. For NSX configured transport nodes, NSX creates and manages host switches and virtual tunnel endpoints (VTEPS). On manually configured transport nodes, the user pre-creates all the required entities (eg: Host switch, VTEPS etc) on the host and then provides those details in the payload for this API. It is the user's responsibility to provide correct configuration of manually configured entities to NSX via this API. NSX doesn't do any validation of the provided configuration. The type of transport node to be created is determined based on the type of the HostSwitchSpec provided in the host_switch_spec parameter. The required parameter to create a transport node is the node_id. A node ID is created when you add a host with the POST fabric/nodes API or when you register a node with the NSX Manager (using the register-node CLI command). Some of the optional parameters are host_switch_spec, transport_zone_endpoints. The transport_zone_endpoints parameter is an array of transport zone id(s) and id(s) of transport zone profile which is to be associated with that transport zone endpoint. The transport_zone_endpoints associates a transport node to certain transport zone(s). Each transport zone has one designated host switch to handle traffic. The host_switch_spec parameter lets you specify the configuration of all host switches you want to be created for this transport node. The parameter host_switch_spec allows you to specify the configuration of of the host switch for either NSX configured transport nodes or manually configured transport nodes. The host_switches parameter has been deprecated in favor of the host_switch_spec parameter and new API clients should prefer host_switch_spec over host_switches. It is an error to provide both the host_switch_spec and host_switches parameters. When a virtual machine is hosted on a hypervisor that is serving as a transport node, and when you connect the virtual machine's network adapter to an NSX logical switch, the resulting virtual tunnel endpoint (VTEP) IP address is assigned from the IP pool specified in the static_ip_pool_id parameter. Before you can use these configuration parameters in the POST transport-nodes API, you must gather the following IDs: fabric host or fabric edge node, IP pool, host switch profile (also known as an uplink profile), and transport zone.

Request
URI
POST
https://nsxmanager.your.domain/api/v1/transport-nodes
COPY
Request Body
TransportNode of type(s) application/json
Optional
This request body class requires all of the following: ManagedResource , InlineTransportNode1
{
    "_self": {
        "rel": "string"
    },
    "_links": [
        {
            "action": "string",
            "href": "string",
            "rel": "string"
        }
    ],
    "_schema": "string",
    "_revision": 0,
    "_create_time": 0,
    "_system_owned": false,
    "display_name": "string",
    "description": "string",
    "tags": [
        {
            "scope": "string",
            "tag": "string"
        }
    ],
    "_last_modified_time": 0,
    "_create_user": "string",
    "_last_modified_user": "string",
    "id": "string",
    "resource_type": "string",
    "host_switches": [
        {
            "pnics": [
                {
                    "uplink_name": "string",
                    "device_name": "string"
                }
            ],
            "host_switch_name": "string",
            "static_ip_pool_id": "string",
            "host_switch_profile_ids": [
                {
                    "value": "string",
                    "key": "string"
                }
            ]
        }
    ],
    "host_switch_spec": {
        "resource_type": "string"
    },
    "node_id": "string",
    "maintenance_mode": "string",
    "transport_zone_endpoints": [
        {
            "transport_zone_id": "string",
            "transport_zone_profile_ids": [
                {
                    "profile_id": "string",
                    "resource_type": "string"
                }
            ]
        }
    ]
}
Authentication
This operation uses the following authentication methods.
Responses
201

Resource created successfully

Returns TransportNode of type(s) application/json
This response body class contains all of the following: ManagedResource , InlineTransportNode1
{
    "_self": {
        "rel": "string"
    },
    "_links": [
        {
            "action": "string",
            "href": "string",
            "rel": "string"
        }
    ],
    "_schema": "string",
    "_revision": 0,
    "_create_time": 0,
    "_system_owned": false,
    "display_name": "string",
    "description": "string",
    "tags": [
        {
            "scope": "string",
            "tag": "string"
        }
    ],
    "_last_modified_time": 0,
    "_create_user": "string",
    "_last_modified_user": "string",
    "id": "string",
    "resource_type": "string",
    "host_switches": [
        {
            "pnics": [
                {
                    "uplink_name": "string",
                    "device_name": "string"
                }
            ],
            "host_switch_name": "string",
            "static_ip_pool_id": "string",
            "host_switch_profile_ids": [
                {
                    "value": "string",
                    "key": "string"
                }
            ]
        }
    ],
    "host_switch_spec": {
        "resource_type": "string"
    },
    "node_id": "string",
    "maintenance_mode": "string",
    "transport_zone_endpoints": [
        {
            "transport_zone_id": "string",
            "transport_zone_profile_ids": [
                {
                    "profile_id": "string",
                    "resource_type": "string"
                }
            ]
        }
    ]
}

400
Returns BadRequest of type(s) application/json
Operation doesn't return any data structure

403
Returns Forbidden of type(s) application/json
Operation doesn't return any data structure

404
Returns NotFound of type(s) application/json
Operation doesn't return any data structure

412
Returns PreconditionFailed of type(s) application/json
Operation doesn't return any data structure

500
Operation doesn't return any data structure

503
Returns ServiceUnavailable of type(s) application/json
Operation doesn't return any data structure

Network Transport Operations
POST
Create Bridge Cluster
POST
Create Bridge Endpoint
POST
Create Cluster Profile
POST
Create Compute Collection Transport Node Template
POST
Create Edge Cluster
POST
Create Host Switch Profile
POST
Create Transport Node
POST
Create Transport Zone
POST
Create Transport Zone Profile
DELETE
Delete Bridge Cluster
DELETE
Delete Bridge Endpoint
DELETE
Delete Cluster Profile
DELETE
Delete Compute Collection Transport Node Template
DELETE
Delete Edge Cluster
DELETE
Delete Host Switch Profile
DELETE
Delete Transport Node
DELETE
Delete Transport Zone
DELETE
Delete Transport Zone Profile
GET
Get Bridge Cluster
GET
Get Bridge Cluster Status
GET
Get Bridge Endpoint
GET
Get Bridge Endpoint Statistics
GET
Get Bridge Endpoint Status
GET
Get Cluster Profile
GET
Get Compute Collection Transport Node Template
GET
Get Compute Collection Transport Node Template State
GET
Get Host Switch Profile
GET
Get Transport Node
GET
Get Transport Node State
GET
Get Transport Zone
GET
Get Transport Zone Profile
GET
Get Transport Zone Status
GET
List Bridge Clusters
GET
List Bridge Endpoints
GET
List Cluster Profiles
GET
List Compute Collection Transport Node Templates
GET
List Edge Clusters
GET
List Host Switch Profiles
GET
List Neighbor Properties
GET
List Transport Nodes
GET
List Transport Nodes By State
GET
List Transport Zone Profiles
GET
List Transport Zones
GET
Read Edge Cluster
GET
Read Neighbor Properties
POST
Replace Edge Cluster Member Transport Node Replace Transport Node
POST
Resync Transport Node Resync Host Config
PUT
Update Bridge Cluster
PUT
Update Bridge Endpoint
PUT
Update Cluster Profile
PUT
Update Compute Collection Transport Node Template
PUT
Update Edge Cluster
PUT
Update Host Switch Profile
PUT
Update Transport Node
POST
Update Transport Node Maintenance Mode
PUT
Update Transport Zone
PUT
Update Transport Zone Profile