vFW and vDNS support added to azure-plugin
[multicloud/azure.git] / azure / aria / aria-extension-cloudify / src / aria / extensions / aria_extension_tosca / profiles / tosca-simple-nfv-1.0 / nodes.yaml
1 # Licensed to the Apache Software Foundation (ASF) under one or more
2 # contributor license agreements.  See the NOTICE file distributed with
3 # this work for additional information regarding copyright ownership.
4 # The ASF licenses this file to You under the Apache License, Version 2.0
5 # (the "License"); you may not use this file except in compliance with
6 # the License.  You may obtain a copy of the License at
7 #
8 #     http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15
16 node_types:
17
18   tosca.nodes.nfv.VDU.Compute:
19     _extensions:
20       shorthand_name: VDU.Compute
21       type_qualified_name: tosca:VDU.Compute
22       specification: tosca-simple-nfv-1.0
23       specification_section: 5.9.2
24       specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896079'
25     description: >-
26       The TOSCA nfv.VDU.Compute node type represents the virtual compute part of a VDU entity which
27       it mainly describes the deployment and operational behavior of a VNF component (VNFC), as
28       defined by [ETSI NFV IFA011].
29     derived_from: tosca.nodes.Compute
30     properties:
31       name:
32         description: >-
33           Human readable name of the VDU.
34         type: string
35         required: true
36       description:
37         description: >-
38           Human readable description of the VDU.
39         type: string
40         required: true
41       boot_order:
42         description: >-
43           The key indicates the boot index (lowest index defines highest boot priority).
44           The Value references a descriptor from which a valid boot device is created e.g.
45           VirtualStorageDescriptor from which a VirtualStorage instance is created. If no boot order
46           is defined the default boot order defined in the VIM or NFVI shall be used.
47         type: list # ARIA NOTE: an explicit index (boot index) is unnecessary, contrary to IFA011
48         entry_schema:
49           type: string
50         required: false
51       nfvi_constraints:
52         description: >-
53           Describes constraints on the NFVI for the VNFC instance(s) created from this VDU.
54           For example, aspects of a secure hosting environment for the VNFC instance that involve
55           additional entities or processes. More software images can be attached to the
56           virtualization container using virtual_storage.
57         type: list
58         entry_schema:
59           type: string
60         required: false
61       configurable_properties:
62         description: >-
63           Describes the configurable properties of all VNFC instances based on this VDU.
64         type: map
65         entry_schema:
66           type: tosca.datatypes.nfv.VnfcConfigurableProperties
67         required: true
68     attributes:
69       # ARIA NOTE: The attributes are only described in section [5.9.2.5 Definition], but are not
70       # mentioned in section [5.9.2.2 Attributes]. Additionally, it does not seem to make sense to
71       # deprecate inherited attributes, as it breaks the inheritence contract.
72       private_address:
73         type: string
74         status: deprecated
75       public_address:
76         type: string
77         status: deprecated
78       networks:
79         type: map
80         entry_schema:
81           type: tosca.datatypes.network.NetworkInfo
82         status: deprecated
83       ports:
84         type: map
85         entry_schema:
86           type: tosca.datatypes.network.PortInfo
87         status: deprecated
88     capabilities:
89       virtual_compute:
90         description: >-
91           Describes virtual compute resources capabilities.
92         type: tosca.capabilities.nfv.VirtualCompute
93       virtual_binding:
94         description: >-
95           Defines ability of VirtualBindable.
96         type: tosca.capabilities.nfv.VirtualBindable
97       monitoring_parameter:
98         # ARIA NOTE: commented out in 5.9.2.5
99         description: >-
100           Monitoring parameter, which can be tracked for a VNFC based on this VDU. Examples include:
101           memory-consumption, CPU-utilisation, bandwidth-consumption, VNFC downtime, etc.
102         type: tosca.capabilities.nfv.Metric
103     #requirements:
104       # ARIA NOTE: virtual_storage is TBD
105
106       # ARIA NOTE: csd04 attempts to deprecate the inherited local_storage requirement, but this
107       # is not possible in TOSCA
108     artifacts:
109       sw_image:
110         description: >-
111           Describes the software image which is directly loaded on the virtualization container
112           realizing this virtual storage.
113         file: '' # ARIA NOTE: missing value even though it is required in TOSCA
114         type: tosca.artifacts.nfv.SwImage
115
116   tosca.nodes.nfv.VDU.VirtualStorage:
117     _extensions:
118       shorthand_name: VirtualStorage # ARIA NOTE: seems wrong in spec
119       type_qualified_name: tosca:VirtualStorage # ARIA NOTE: seems wrong in spec
120       specification: tosca-simple-nfv-1.0
121       specification_section: 5.9.3
122       specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896080'
123     description: >-
124       The NFV VirtualStorage node type represents a virtual storage entity which it describes the
125       deployment and operational behavior of a virtual storage resources, as defined by
126       [ETSI NFV IFA011].
127     derived_from: tosca.nodes.Root
128     properties:
129       type_of_storage:
130         description: >-
131           Type of virtualized storage resource.
132         type: string
133         required: true
134       size_of_storage:
135         description: >-
136           Size of virtualized storage resource (in GB).
137         type: scalar-unit.size
138         required: true
139       rdma_enabled:
140         description: >-
141           Indicate if the storage support RDMA.
142         type: boolean
143         required: false
144     artifacts:
145       sw_image:
146         description: >-
147           Describes the software image which is directly loaded on the virtualization container
148           realizing this virtual storage.
149         file: '' # ARIA NOTE: missing in spec
150         type: tosca.artifacts.nfv.SwImage
151
152   tosca.nodes.nfv.Cpd:
153     _extensions:
154       shorthand_name: Cpd
155       type_qualified_name: tosca:Cpd
156       specification: tosca-simple-nfv-1.0
157       specification_section: 5.9.4
158       specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896081'
159     description: >-
160       The TOSCA nfv.Cpd node represents network connectivity to a compute resource or a VL as defined
161       by [ETSI GS NFV-IFA 011]. This is an abstract type used as parent for the various Cpd types.
162     derived_from: tosca.nodes.Root
163     properties:
164       layer_protocol:
165         description: >-
166           Identifies which protocol the connection point uses for connectivity purposes.
167         type: string
168         constraints:
169           - valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
170         required: false
171       role: # Name in ETSI NFV IFA011 v0.7.3 cpRole
172         description: >-
173           Identifies the role of the port in the context of the traffic flow patterns in the VNF or
174           parent NS. For example a VNF with a tree flow pattern within the VNF will have legal
175           cpRoles of ROOT and LEAF.
176         type: string
177         constraints:
178           - valid_values: [ root, leaf ]
179         required: false
180       description:
181         description: >-
182           Provides human-readable information on the purpose of the connection point
183           (e.g. connection point for control plane traffic).
184         type: string
185         required: false
186       address_data:
187         description: >-
188           Provides information on the addresses to be assigned to the connection point(s) instantiated
189           from this Connection Point Descriptor.
190         type: list
191         entry_schema:
192           type: tosca.datatypes.nfv.AddressData
193         required: false
194
195   tosca.nodes.nfv.VduCpd:
196     _extensions:
197        shorthand_name: VduCpd
198        type_qualified_name: tosca:VduCpd
199        specification: tosca-simple-nfv-1.0
200        specification_section: 5.9.5
201        specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896082'
202     description: >-
203       The TOSCA nfv.VduCpd node type represents a type of TOSCA Cpd node and describes network
204       connectivity between a VNFC instance (based on this VDU) and an internal VL as defined by
205       [ETSI GS NFV-IFA 011].
206     derived_from: tosca.nodes.nfv.Cpd
207     properties:
208       bitrate_requirement:
209         description: >-
210           Bitrate requirement on this connection point.
211         type: integer
212         required: false
213       virtual_network_interface_requirements:
214         description: >-
215           Specifies requirements on a virtual network interface realising the CPs instantiated from
216           this CPD.
217         type: list
218         entry_schema:
219           type: VirtualNetworkInterfaceRequirements
220         required: false
221     requirements:
222      # ARIA NOTE: seems to be a leftover from csd03
223      # - virtual_link:
224      #     description: Describes the requirements for linking to virtual link
225      #     capability: tosca.capabilities.nfv.VirtualLinkable
226      #     relationship: tosca.relationships.nfv.VirtualLinksTo
227      #     node: tosca.nodes.nfv.VnfVirtualLinkDesc
228       - virtual_binding:
229           capability: tosca.capabilities.nfv.VirtualBindable
230           relationship: tosca.relationships.nfv.VirtualBindsTo
231           node: tosca.nodes.nfv.VDU.Compute # ARIA NOTE: seems wrong in spec
232
233   tosca.nodes.nfv.VnfVirtualLinkDesc:
234     _extensions:
235        shorthand_name: VnfVirtualLinkDesc
236        type_qualified_name: tosca:VnfVirtualLinkDesc
237        specification: tosca-simple-nfv-1.0
238        specification_section: 5.9.6
239        specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896083'
240     description: >-
241       The TOSCA nfv.VnfVirtualLinkDesc node type represents a logical internal virtual link as
242       defined by [ETSI GS NFV-IFA 011].
243     derived_from: tosca.nodes.Root
244     properties:
245       connectivity_type:
246         description: >-
247           specifies the protocol exposed by the VL and the flow pattern supported by the VL.
248         type: tosca.datatypes.nfv.ConnectivityType
249         required: true
250       description:
251         description: >-
252           Provides human-readable information on the purpose of the VL (e.g. control plane traffic).
253         type: string
254         required: false
255       test_access:
256         description: >-
257           Test access facilities available on the VL (e.g. none, passive, monitoring, or active
258           (intrusive) loopbacks at endpoints.
259         type: string
260         required: false