Node Commands

cordvtn-nodes

Lists registered compute nodes

Example of cordvtn-nodes
onos> cordvtn-nodes
Hostname                      Management IP       Data IP             Data Iface     Br-int                  State
compute-01                    10.55.25.244/24     10.134.34.222/16    veth1          of:0000000000000001     COMPLETE
compute-02                    10.55.25.245/24     10.134.34.223/16    veth1          of:0000000000000002     COMPLETE
Total 2 nodes

cordvtn-node-check [hostname]

Shows detailed status of the compute node

Example of cordvtn-node-check
onos> cordvtn-node-check compute-01
Current state: COMPLETE (hint: try init again if the state is INCOMPLETE but all settings OK)

[Integration Bridge Status]
OK br-int=of:0000000000000001 available=true {managementAddress=10.55.25.244, protocol=OF_13, channelId=10.55.25.244:35418}
OK vxlan portNum=1 enabled=true {portName=vxlan, portMac=ea:91:7a:ff:69:6e}
OK veth1 portNum=2 enabled=true {portName=veth1, portMac=ce:9a:a2:3a:75:b4}
OK veth3 portNum=3 enabled=true {portName=veth3, portMac=d2:da:ea:ab:aa:99}

[Interfaces and IP setup]
OK br-int up=true Ips=[172.27.0.1, 10.134.34.222]
OK veth1 up=true IpFlushed=true
OK veth3 up=true IpFlushed=true

cordvtn-node-init [hostname]

Initializes the compute node. It also tries to install flow rules for the existing virtual instances on that compute nodes as a post initialization task. Note that it is no harm to initialize COMPLETE state multiple times, and you can use this command to re-install flow rules to fix the overlay data plane.

Example of cordvtn-node-init
onos> cordvtn-node-init compute-01

cordvtn-node-delete [hostname]

Deletes the compute node. VTN ignores any updates on this nodes.

onos> cordvtn-node-delete compute-01

Flow Commands

cordvtn-purge-rules

Purges all flow rules installed by VTN. This command can be useful when overlay data plane is messed up for some reason. Purge all the flow rules and then re-initialize nodes by running cordvtn-node-init command or pushing the network-cfg.json again would effectively refresh the data plane for the existing virtual instances with the current network states.

Example of cordvtn-flush-rules
onos> cordvtn-purge-rules

Network States Command

cordvtn-networks

Lists VTN networks. Any networks listed from Neutron or XOS but not listed here would be ignored by VTN. JSON results shows more detailed information.

onos> cordvtn-networks
ID                                      Name                          Type                VNI     Subnet              Service IP
6e6e90ee-bfb4-422b-aa08-a3543bcb1f77    exampleservice_network        PRIVATE             1037    10.0.4.0/24         10.0.4.1
83fa9234-8cd6-4ffa-875e-1a82b508ccb4    management                    MANAGEMENT_LOCAL    1011    172.27.0.0/24       172.27.0.1
15799d62-ba12-4508-a898-fa73782194c7    mysite_vsg-access             VSG                 1002    10.0.2.0/24         10.0.2.1
6e507cce-ab2a-4ec7-a8c6-73f8075a19a6    public                        PUBLIC              1019    10.6.1.192/26       10.6.1.193
 
onos> cordvtn-networks -j
[ {
  "id" : "6e6e90ee-bfb4-422b-aa08-a3543bcb1f77",
  "name" : "exampleservice_network",
  "type" : "PRIVATE",
  "vni" : 1037,
  "subnet" : "10.0.4.0/24",
  "serviceIp" : "10.0.4.1",
  "providers" : [ ]
}, {
  "id" : "83fa9234-8cd6-4ffa-875e-1a82b508ccb4",
  "name" : "management",
  "type" : "MANAGEMENT_LOCAL",
  "vni" : 1011,
  "subnet" : "172.27.0.0/24",
  "serviceIp" : "172.27.0.1",
  "providers" : [ ]
}, {
  "id" : "15799d62-ba12-4508-a898-fa73782194c7",
  "name" : "mysite_vsg-access",
  "type" : "VSG",
  "vni" : 1002,
  "subnet" : "10.0.2.0/24",
  "serviceIp" : "10.0.2.1",
  "providers" : [ ]
}, {
  "id" : "6e507cce-ab2a-4ec7-a8c6-73f8075a19a6",
  "name" : "public",
  "type" : "PUBLIC",
  "vni" : 1019,
  "subnet" : "10.6.1.192/26",
  "serviceIp" : "10.6.1.193",
  "providers" : [ ]
} ]

cordvtn-ports

Lists VTN ports. Any ports listed from Neutron or XOS but not listed here would be ignored by VTN. JSON results shows more detailed information.

onos> cordvtn-ports
ID                                      Name                          MAC                 IP                VLAN      WAN IPs
ed310ef0-d012-4423-80f9-60cc71809a1c    taped310ef0-d0                FA:16:3E:17:14:48   10.0.2.2          222       [10.6.1.131, 10.6.1.130]
64ffb2fa-811d-4142-a408-a7528d460646    tap64ffb2fa-81                FA:16:3E:D9:D9:B1   10.6.1.195
1f4f8bf1-b975-4eb7-bd47-0e2d896f106d    tap1f4f8bf1-b9                FA:16:3E:45:5E:77   10.0.4.3
ab6b8ac4-59ef-4111-b1cd-82f3005a45d5    tapab6b8ac4-59                FA:16:3E:93:50:FE   172.27.0.4


onos> cordvtn-ports -j
[ {
  "id" : "ed310ef0-d012-4423-80f9-60cc71809a1c",
  "name" : "taped310ef0-d0",
  "networkId" : "15799d62-ba12-4508-a898-fa73782194c7",
  "mac" : "FA:16:3E:17:14:48",
  "ip" : "10.0.2.2",
  "vlan" : "222",
  "addressPairs" : [ {
    "ip" : "10.6.1.131",
    "mac" : "02:42:0A:06:01:83"
  }, {
    "ip" : "10.6.1.130",
    "mac" : "02:42:0A:06:01:82"
  } ]
}, {
  "id" : "64ffb2fa-811d-4142-a408-a7528d460646",
  "name" : "tap64ffb2fa-81",
  "networkId" : "6e507cce-ab2a-4ec7-a8c6-73f8075a19a6",
  "mac" : "FA:16:3E:D9:D9:B1",
  "ip" : "10.6.1.195",
  "vlan" : null,
  "addressPairs" : [ ]
}, {
  "id" : "1f4f8bf1-b975-4eb7-bd47-0e2d896f106d",
  "name" : "tap1f4f8bf1-b9",
  "networkId" : "6e6e90ee-bfb4-422b-aa08-a3543bcb1f77",
  "mac" : "FA:16:3E:45:5E:77",
  "ip" : "10.0.4.3",
  "vlan" : null,
  "addressPairs" : [ ]
}, {
  "id" : "ab6b8ac4-59ef-4111-b1cd-82f3005a45d5",
  "name" : "tapab6b8ac4-59",
  "networkId" : "83fa9234-8cd6-4ffa-875e-1a82b508ccb4",
  "mac" : "FA:16:3E:93:50:FE",
  "ip" : "172.27.0.4",
  "vlan" : null,
  "addressPairs" : [ ]
}, {
  "id" : "339109bf-d6b6-471b-9016-7ca2d4472276",
  "name" : "tap339109bf-d6",
  "networkId" : "83fa9234-8cd6-4ffa-875e-1a82b508ccb4",
  "mac" : "FA:16:3E:2F:ED:E6",
  "ip" : "172.27.0.5",
  "vlan" : null,
  "addressPairs" : [ ]
} ]

cordvtn-purge-states

Purges internal VTN network store.

onos> cordvtn-purge-states

cordvtn-sync-neutron-states

Synchronizes network states with Neutron. If the internal store is messed up, cordvtn-purge-states is required before sync.

onos> cordvtn-sync-neutron-states [OpenStack endpoint] [tenant] [user] [password]
 
onos> cordvtn-sync-neutron-states http://10.1.1.125:35357/v2.0 admin admin password
Synchronizing service networks...
ID                                      Name                          Type                VNI     Subnet              Service IP
83fa9234-8cd6-4ffa-875e-1a82b508ccb4    management                    PRIVATE             1011    172.27.0.0/24       172.27.0.1
6e6e90ee-bfb4-422b-aa08-a3543bcb1f77    exampleservice_network        PRIVATE             1037    10.0.4.0/24         10.0.4.1
15799d62-ba12-4508-a898-fa73782194c7    mysite_vsg-access             PRIVATE             1002    10.0.2.0/24         10.0.2.1
6e507cce-ab2a-4ec7-a8c6-73f8075a19a6    public                        PRIVATE             1019    10.6.1.192/26       10.6.1.193

Synchronizing service ports...
ID                                      Name                          MAC                 IP                VLAN      WAN IPs
1f4f8bf1-b975-4eb7-bd47-0e2d896f106d    tap1f4f8bf1-b9                FA:16:3E:45:5E:77   10.0.4.3
339109bf-d6b6-471b-9016-7ca2d4472276    tap339109bf-d6                FA:16:3E:2F:ED:E6   172.27.0.5
64ffb2fa-811d-4142-a408-a7528d460646    tap64ffb2fa-81                FA:16:3E:D9:D9:B1   10.6.1.195
ab6b8ac4-59ef-4111-b1cd-82f3005a45d5    tapab6b8ac4-59                FA:16:3E:93:50:FE   172.27.0.4
ed310ef0-d012-4423-80f9-60cc71809a1c    taped310ef0-d0                FA:16:3E:17:14:48   10.0.2.2          222       [10.6.1.131, 10.6.1.130]

cordvtn-sync-xos-states

Synchronizes network states with XOS. If the internal store is messed up, cordvtn-purge-states is required before sync.

onos> cordvtn-sync-xos-states [XOS endpoint] [user] [password]
 
onos> cordvtn-sync-xos-states http://10.1.1.106:9000 padmin@vicci.org letmein
Synchronizing service networks...
ID                                      Name                          Type                VNI     Subnet              Service IP
83fa9234-8cd6-4ffa-875e-1a82b508ccb4    management                    MANAGEMENT_LOCAL    1011    172.27.0.0/24       172.27.0.1
15799d62-ba12-4508-a898-fa73782194c7    mysite_vsg-access             VSG                 1002    10.0.2.0/24         10.0.2.1
6e507cce-ab2a-4ec7-a8c6-73f8075a19a6    public                        PUBLIC              1019    10.6.1.192/26       10.6.1.193
6e6e90ee-bfb4-422b-aa08-a3543bcb1f77    exampleservice_network        PRIVATE             1037    10.0.4.0/24         10.0.4.1

Synchronizing service ports...
ID                                      Name                          MAC                 IP                VLAN      WAN IPs
ed310ef0-d012-4423-80f9-60cc71809a1c    taped310ef0-d0                FA:16:3E:17:14:48   10.0.2.2          222       [10.6.1.131, 10.6.1.130]
339109bf-d6b6-471b-9016-7ca2d4472276    tap339109bf-d6                FA:16:3E:2F:ED:E6   172.27.0.5
64ffb2fa-811d-4142-a408-a7528d460646    tap64ffb2fa-81                FA:16:3E:D9:D9:B1   10.6.1.195
1f4f8bf1-b975-4eb7-bd47-0e2d896f106d    tap1f4f8bf1-b9                FA:16:3E:45:5E:77   10.0.4.3
ab6b8ac4-59ef-4111-b1cd-82f3005a45d5    tapab6b8ac4-59                FA:16:3E:93:50:FE   172.27.0.4