Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: cleaned up the examples

...

These definitions are included into both the providing and the consuming services.

Core DM Types

Node type onap.nodes.Service

Node type onap.nodes.Resource

Node type onap.nodes.NetworkFunction

Capability type onap.capabilities,AllottedResorceProvider

Relationship type onap.relationships.AllottedBy

Imaginary Types made up for this example

...

The "Interface node type" for this service 

According to the Service Model Principles, any service definition will include a node type derived from onap.nodes.Service. This is a general ONAP service modeling convention rather than something specific for AR providing services. Just to remind - this type may be later use to create nodes of embedded services in a higher-order topology.

...

Providing service topology

Service Model Principles stipulate that any ONAP service definition includes, besides the "interface" node type, the implementing topology. The AR services are no exception of this principle.

Code Block
titleAR Providing Service Topology
linenumberstrue
collapsetrue
topology_template:       
  node_templates:
    my_firewall# the provider service topology captures the guts of what's required to be instantiated in order
    # to be prepared to allot, e.g., the allotted firewall network functions
    some_vnf:
      type: some.concrete.type.which.forms.the.internals.of.the.provider.service


    possibly_some_other_vnf:
      type: vendorXXX.nodes.MyVerySpecialFirewallalso.some.concrete.type.which.forms.the.internals.of.the.provider.service
           
  substitution_mappings:
    type: vendorXXX.nodes.FirewallsProvidingService
    capabilities:
      i_can_provide_firewalls: [my_firewall, i_can_provide_firewalls]
       

...

The Consuming service definition, like any other ONAP service definition, will include an "interface node type". Its details are irrelevant for this example.

...

Code Block
titleConsuming service topology
linenumberstrue
collapsetrue
node_types:
  onap.examples.nodes.FirewallShare:
    derived_from: onap.examples.nodes.Firewall
    description: an abstract firewall as AR
    requirements:
      - i_need_a_providing_service:
          capability: onap.capabilities.AllottedResourceProvider 


topology_template:
  node_templates:
 
    # A more releasedunconstrained abstraction of a firewall, can be implemented by any way including an allotted resource
    firewall_1:
      type: onap.examples.nodes.Firewall
 
    # A more restricted abstraction - must be resolved by an allotted resource
    firewall_2:
      type: onap.examples.nodes.FirewallShare
    
    # service designer specifies the exact allotted firewall
    firewall_3:
      type: vendorXXX.nodes.MyVerySpecialFirewall
 


TODO: add a section on the orchestration logic

...