etsi-nfv-vnf.yang 76.9 KB
Newer Older
              reference
                "GS NFV IFA011: Section 7.1.10.3 AspectDeltaDetails
                 information element";
              "A specification of the deltas in terms of number of
               instances of VNFCs and virtual link bit rates that
               correspond to the scaling steps of this aspect. A
               cardinality of zero indicates that this mapping has to
               be specified in a lifecycle management script or be
               otherwise known to the VNFM. The information in this
               attribute, if provided, shall be consistent with the
               information provided in the 'InstantiationLevel'
               information element. If this attribute is provided, it
               shall be provided for all scaling aspects.";
            reference
              "GS NFV IFA011: Section 7.1.10.2 ScalingAspect
               information element";
          }
        }
      }

      container configurable-properties {
        description
          "Describes the configurable properties of the VNF
           (e.g. related to auto scaling and auto healing).";
        reference
          "GS NFV IFA011: Section 7.1.2 VNFD information element";

        leaf auto-scalable {
          type boolean;
          description
            "It permits to enable (TRUE) / disable (FALSE) the
             auto-scaling functionality.";
          reference
            "GS NFV IFA011: Section 7.1.12 VnfConfigurableProperties
             information element";
        }
        leaf auto-healable {
          type boolean;
          description
            "It permits to enable (TRUE) / disable (FALSE) the
             auto-healing functionality.";
          reference
            "GS NFV IFA011: Section 7.1.12 VnfConfigurableProperties
             information element";
        }
        list additional-configurable-property {
          key "key";
          leaf key {
            type string;
          }
          leaf value {
            type string;
          }
          description
            "It provides VNF specific configurable properties that can
             be modified using the ModifyVnfConfiguration operation.";
          reference
            "GS NFV IFA011: Section 7.1.12 VnfConfigurableProperties
             information element";
        }
      }

      container modifiable-attributes {
        description
          "Describes the modifiable attributes of the VNF.";
        reference
          "GS NFV IFA011: Section 7.1.2 VNFD information element";

        leaf-list extension {
          type string;
          description
            "'Extension' attributes of VnfInfo that are writeable.";
          reference
            "GS NFV IFA011: Section 7.1.14 VnfInfoModifiableAttributes
             information element";
        }
        leaf-list metadata {
          type string;
          description
            "'Metadata' attributes of VnfInfo that are writeable.";
          reference
            "GS NFV IFA011: Section 7.1.14 VnfInfoModifiableAttributes
             information element";
        }
      }

      list lifecycle-management-script {
        key "event";
        description
          "Includes a list of events and corresponding management
           scripts performed for the VNF.";
        reference
          "GS NFV IFA011: Section 7.1.2 VNFD information element";

        leaf event {
          type common:internal-lifecycle-management-script-event;
          description
            "Describes VNF lifecycle event(s) or an external stimulus
             detected on a VNFM reference point.";
          reference
            "GS NFV IFA011: Section 7.1.13 LifeCycleManagementScript
             information element";
        }
        leaf lcm-transition-event {
          type string;
          description
            "Describes the transition VNF lifecycle event(s) that
             cannot be mapped to any of the enumerated values
             defined for the event attribute.";
          reference
            "GS NFV IFA011: Section 7.1.13 LifeCycleManagementScript
             information element";
        }
        leaf script {
          type string;
          description
            "Includes a VNF LCM script (e.g. written in a DSL as
             specified in requirement VNF_PACK.LCM.001) triggered to
             react to one of the events listed in the event
             attribute.";
          reference
            "GS NFV IFA011: Section 7.1.13 LifeCycleManagementScript
             information element";
        }
        leaf script-dsl {
          type string;
          description
            "Defines the domain specific language (i.e. the type) of
             script that is provided. Types of scripts could include
             bash, python, etc.";
          reference
            "GS NFV IFA011: Section 7.1.13 LifeCycleManagementScript
             information element";
        }
        list script-input {
          key "key";
          leaf key {
            type string;
          }
          leaf value {
            type string;
          }
          description
            "Array of KVP requirements with the key as the parameter
             name and the value as the parameter that need to be
             passed as an input to the script.";
          reference
            "GS NFV IFA011: Section 7.1.13 LifeCycleManagementScript
             information element";
        }
      }

      list element-group {
        key "id";
        description
          "Describes the associated elements of a VNFD for a certain
           purpose during VNF lifecycle management.";
        reference
          "GS NFV IFA011: Section 7.1.2 VNFD information element";

        leaf id {
          type string;
          description
            "Unique identifier of this group in the VNFD.";
          reference
            "GS NFV IFA011: Section 7.1.4 VnfdElementGroup
             information element";
        }
        leaf description {
          type string;
          description
            "Human readable description of the group.";
          reference
            "GS NFV IFA011: Section 7.1.4 VnfdElementGroup
             information element";
        }
        leaf-list vdu {
          type leafref {
            path "../../nfv:vdu/nfv:id";
          }
          description
            "References to Vdus that are part of this group.";
          reference
            "GS NFV IFA011: Section 7.1.4 VnfdElementGroup
             information element";
        }
        leaf-list virtual-link-desc {
          type leafref {
            path "../../nfv:int-virtual-link-desc/nfv:id";
          }
          description
            "References to VnfVirtualLinkDesc that are part of this
             group.";
          reference
            "GS NFV IFA011: Section 7.1.4 VnfdElementGroup
             information element";
        }
      }

      list indicator {
        key "id";
        description
          "Declares the VNF indicators that are supported by this
           VNF.";
        reference
          "GS NFV IFA011: Section 7.1.2 VNFD information element";

        leaf id {
          type string;
          description
            "Unique identifier";
          reference
            "GS NFV IFA011: Section 7.1.11.2 VnfdIndicator
             information element";
        }
        leaf name {
          type string;
          description
            "The human readable name of the VnfIndicator.";
          reference
            "GS NFV IFA011: Section 7.1.11.2 VnfdIndicator
             information element";
        }
        leaf-list indicator-value {
          type string;
          description
            "Defines the allowed values or value ranges of this
             indicator.";
          reference
            "GS NFV IFA011: Section 7.1.11.2 VnfdIndicator
             information element";
        }
        leaf source {
          type enumeration {
            enum "vnf";
            enum "em";
            enum "both";
          }
          description
            "Describe the source of the indicator. The possible values
             are:
             • VNF.
             • EM.
             • Both.
             This tells the consumer where to send the subscription
             request.";
          reference
            "GS NFV IFA011: Section 7.1.11.2 VnfdIndicator
             information element";
        }
      }

      leaf-list auto-scale {
        type string;
        description
          "Rule that determines when a scaling action needs to be
           triggered on a VNF instance e.g. based on certain VNF
           indicator values or VNF indicator value changes or a
           combination of VNF indicator value(s) and monitoring
           parameter(s).";
        reference
          "GS NFV IFA011: Section 7.1.2 VNFD information element";
      }
    }
  }
}