Skip to content

CNF VNFD Example

Manuel Peuster edited this page Nov 5, 2018 · 13 revisions

This is an example of a VNFD which describes a CNF. It is a living document to define how such a descriptor should look like, so that we can create a schema for it. PNF and CNNF schemas are currently developed in Issue 79.

---
descriptor_schema: "https://raw.githubusercontent.com/sonata-nfv/tng-schema/master/function-descriptor/vnfd-schema.yml"

vendor: "eu.5gtango"
name: "cnf-nginx-vnf"
version: "0.1"
author: "Felipe Vicens and Manuel Peuster"
description: "Our first CNF VNFD for K8s deployment of an Nginx."


# Manuel: Have "cloudnative_deployment_units"
# instead of our normal "virtual_deployment_units"
# Felipe: This represents the containers inside the PODs
cloudnative_deployment_units:
  - id: "cdu01"
    image: nginx
    connection_points:
      - id: "http"
        port: 80
      - id: "https"
        port: 443
    # Manuel: Lets have this generic (optional) dict of parameters to pass
    # additional info to K8s (if needed). The content of this dict is not
    # fixed by any schema.
    parameters:                 # (optional)
        k8s_deployment:
            key1: value2
        k8s_service:
            # ...

connection_points:
# Manuel: Have a single connection point to the service endpoint? Unclear.
# Felipe: This is kubernetes service level so it will be 1 service per CNDU.
  - id: "external"
    interface: "ipv4"
    type: "serviceendpoint"
    ports:
      - id: "http"
        port: 80
        target_port: cdu01:http
      - id: "https"
        port: 443
        target_port: cdu01:https    

# Manuel Do we even need those?
# Felipe: Not sure, all connections will be type E-tree from 
# connection_point (service) to cdu. 
#We could move target port to virtual links.
virtual_links:
  # skipped for now, lets first focus on the deployment unit section
Clone this wiki locally