Topology management

We can edit the topology using dedicated API calls. We can add/remove/edit:

  • VIMs

  • Networks

  • Routers

  • PDUs

  • K8s Clusters

  • Prometheus servers

The structure of the data to be used in requests can be found in the bottom of NFVCL Swagger ( http://NFVCL-IP:5002/docs )

Create new resource

You can create a new resource (which are listed above) using the correspondent POST request that you can find in the Swagger ( http://NFVCL-IP:5002/docs ). We will use as example the POST to create a new VIM in the topology /v1/topology/vim

{
    "name": "os_lab",
    "vim_type": "openstack",
    "schema_version": "1.0",
    "vim_url": "http://os-lab.maas:5000/v3",
    "vim_tenant_name": "paolo",
    "vim_user": "paolo",
    "vim_password": "password",
    "config": {
        "insecure": true,
        "APIversion": "v3.3",
        "use_floating_ip": true
    },
    "networks": [
        "dmz-internal",
        "data_paolo"
    ],
    "routers": [],
    "areas": [
        3,
        4,
        5
    ]
}

Update resource

You can update a new resource (which are listed above) using the correspondent PUT request that you can find in the SWAGGER (see home page). We will use as example the POST to update a VIM in the topology /v1/topology/vim

{
  "name": "os_ntua",
  "networks_to_add": ["nephele-vpn-network"],
  "networks_to_del": ["public1"],
  "routers_to_add": [],
  "routers_to_del": [],
  "areas_to_add": [],
  "areas_to_del": []
}

Delete resource

To delete a resource it is sufficient to make a DELETE request giving the resource ID. We will use as example the DELETE to delete a VIM /v1/topology/vim/{{ VIM_ID }}