Chassis Partition - Initial Networking Setup

Overview

Chassis partitions are completely separate management entities that are managed outside of the system controllers but are still considered part of the F5OS platform layer. If you have properly setup a chassis partition and assigned an out-of-band management IP address, you will be able to access it via its own CLI, GUI, and API.

Before configuring any tenant you’ll need to setup networking for the chassis partition. All in-band networking is configured within the chassis partition layer, and all chassis partitions are completely isolated form each other.

This page describes the chassis partition initial networking setup.

Prerequisites

Before you can perform the initial networking setup on a chassis partition, refer to the System Controller - Chassis Partition Lifecycle workflow in order to create the chassis partition first.

Get Authentication Token

F5 disables basic authentication for HTTP/HTTPS requests to the VELOS API by default for security enhancement. You can make HTTP/HTTPS requests to the VELOS API while keeping basic authentication disabled by sending the requests to the chassis partition and by including a valid chassis partition authentication token in the X-Auth-Token header.

Whenever you perform an authenticated login to the chassis partition, and request a token using the Auth Token, you receive an access token. Use it to send HTTP/HTTPS requests to a chassis partition.

Request a new token from the chassis partition using an authenticated login. Using your username and password, log into the chassis partition.

GET: https://<chassis-partition-ip>:8888/restconf/data/openconfig-system:system/aaa

The value set in the X-Auth-Token in the response Headers is the access token value to use in subsequent requests header along with the application/yang-data+json Content-Type.

  • Content-Type: application/yang-data+json
  • X-Auth-Token: {{ X-Auth-Token }}

Port Group Setup

To list the current portgroup configuration issue the following API call:

GET: https://<chassis-partition-ip>:8888/restconf/data/f5-portgroup:portgroups

VLAN Setup

VLANs can be created in the chassis partition. VLANs are not shared across chassis partitions, and each partition must configure its own set of VLANs.

To configure VLANs use the following API command and JSON body. This will configure 3 VLANs (Internal-VLAN, External-VLAN, &HA-VLAN) along with their VLAN ID’s. After the VLANs are created you will be able to assign then to either interfaces or LAGs.

PATCH: https://<chassis-partition-ip>:8888/restconf/data
{
    "openconfig-vlan:vlans": {
        "vlan": [
            {
                "vlan-id": "444",
                "config": {
                    "vlan-id": 444,
                    "name": "Internal-VLAN"
                }
            },
            {
                "vlan-id": "555",
                "config": {
                    "vlan-id": 555,
                    "name": "External-VLAN"
                }
            },
            {
                "vlan-id": "500",
                "config": {
                    "vlan-id": 500,
                    "name": "HA-VLAN"
                }
            }
        ]
    }
}

The following command will list the configuration and status of all VLANs within the current chassis partition:

GET: https://<chassis-partition-ip>:8888/restconf/data/openconfig-vlan:vlans

Interface Setup

The next step is to add physical interfaces into the LAG group. Interfaces will be added to the aggregate-id that was created in the previous step:

PATCH: https://<chassis-partition-ip>:8888/restconf/data
{
    "openconfig-interfaces:interfaces": {
        "interface": [
            {
                "name": "1/2.0",
                "config": {
                    "name": "1/2.0"
                },
                "openconfig-if-ethernet:ethernet": {
                    "config": {
                        "openconfig-if-aggregate:aggregate-id": "Arista"
                    }
                }
            },
            {
                "name": "2/1.0",
                "config": {
                    "name": "2/1.0"
                },
                "openconfig-if-ethernet:ethernet": {
                    "config": {
                        "openconfig-if-aggregate:aggregate-id": "Arista"
                    }
                }
            },
            {
                "name": "1/1.0",
                "config": {
                    "name": "1/1.0"
                },
                "openconfig-if-ethernet:ethernet": {
                    "config": {
                        "openconfig-if-aggregate:aggregate-id": "HA-Interconnect"
                    }
                }
            },
            {
                "name": "2/2.0",
                "config": {
                    "name": "2/2.0"
                },
                "openconfig-if-ethernet:ethernet": {
                    "config": {
                        "openconfig-if-aggregate:aggregate-id": "HA-Interconnect"
                    }
                }
            }
        ]
    }
}

The final step is adding LACP configuration for each LAG:

PATCH: https://<chassis-partition-ip>:8888/restconf/data
{
    "ietf-restconf:data": {
        "openconfig-lacp:lacp": {
            "interfaces": {
                "interface": [
                    {
                        "name": "Arista",
                        "config": {
                            "name": "Arista",
                            "interval": "FAST",
                            "lacp-mode": "ACTIVE"
                        }
                    },
                    {
                        "name": "HA-Interconnect",
                        "config": {
                            "name": "HA-Interconnect",
                            "interval": "FAST",
                            "lacp-mode": "ACTIVE"
                        }
                    }
                ]
            }
        }
    }
}

To view the final LAG configuration via the API use the following API call:

GET: https://<chassis-partition-ip>:8888/restconf/data/openconfig-lacp:lacp

You can get more granular information down to the interface level using the following API command:

GET: https://<chassis-partition-ip>:8888/restconf/data/openconfig-interfaces:interfaces