From a54e27d03abe3f61ba48702ca1601b6b234ff906 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Tom=C3=A1s=20Villaseca?= Date: Tue, 21 Apr 2020 10:34:13 -0400 Subject: [PATCH] Add examples of translations from old to new descriptors MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Change-Id: I74a62ac5a045dc3eb028e9d8b57fb954d779f4a0 Signed-off-by: Tomás Villaseca --- augments/examples/epa_new.yaml | 41 +++++ augments/examples/epa_old.yaml | 36 +++++ augments/examples/vepc_new.yaml | 243 ++++++++++++++++++++++++++++ augments/examples/vepc_nsd_new.yaml | 55 +++++++ augments/examples/vepc_nsd_old.yaml | 62 +++++++ augments/examples/vepc_old.yaml | 182 +++++++++++++++++++++ augments/examples/vnfd_new.yaml | 80 +++++++++ augments/examples/vnfd_old.yaml | 87 ++++++++++ 8 files changed, 786 insertions(+) create mode 100644 augments/examples/epa_new.yaml create mode 100644 augments/examples/epa_old.yaml create mode 100644 augments/examples/vepc_new.yaml create mode 100644 augments/examples/vepc_nsd_new.yaml create mode 100644 augments/examples/vepc_nsd_old.yaml create mode 100644 augments/examples/vepc_old.yaml create mode 100644 augments/examples/vnfd_new.yaml create mode 100644 augments/examples/vnfd_old.yaml diff --git a/augments/examples/epa_new.yaml b/augments/examples/epa_new.yaml new file mode 100644 index 0000000..fe3b9f3 --- /dev/null +++ b/augments/examples/epa_new.yaml @@ -0,0 +1,41 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd: + - id: epa-vnfd + ... + + virtual-compute-desc: + - id: epa-compute + virtual-cpu: + ... + vdu-cpu-requirements: # Generic key/value pairs + cpu-pinning-policy: DEDICATED + cpu-thread-pinning-policy: PREFER + virtual-memory: + ... + vdu-mem-requirements: # Generic key/value pairs + mempage-size: LARGE + numa-enabled: true # Replaces NUMA aware/unaware choice + numa-node-policy: + mem-policy: STRICT + node: + - id: "1" + node-cnt: "1" + + vdu: + - id: epa-vdu + virtual-compute-desc: epa-compute + ... diff --git a/augments/examples/epa_old.yaml b/augments/examples/epa_old.yaml new file mode 100644 index 0000000..12b0b4d --- /dev/null +++ b/augments/examples/epa_old.yaml @@ -0,0 +1,36 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd:vnfd-catalog: + vnfd: + - id: + ... + + vdu: + - id: dataVM + name: dataVM + count: "1" + description: "" + guest-epa: + cpu-pinning-policy: DEDICATED + cpu-thread-pinning-policy: PREFER + mempage-size: LARGE + numa-node-policy: + mem-policy: STRICT + node: + - id: "1" + node-cnt: "1" + ... + diff --git a/augments/examples/vepc_new.yaml b/augments/examples/vepc_new.yaml new file mode 100644 index 0000000..c38b9f5 --- /dev/null +++ b/augments/examples/vepc_new.yaml @@ -0,0 +1,243 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd: + - id: vEPC_vnfd + product-name: vEPC_vnfd + description: Generated by OSM package generator + provider: OSM_VNFONB_TF + version: "1.0" + mgmt-cp: spgwmme-mgmt-int #Simplified from mgmt-interface + + virtual-compute-desc: + - id: spgwmme-compute + virtual-cpu: + num-virtual-cpu: 2 + virtual-memory: + size: 4 # Memory size in GB + - id: hss-compute + virtual-cpu: + num-virtual-cpu: 1 + virtual-memory: + size: 2 # Memory size in GB + + virtual-storage-desc: + - id: spgwmme-storage + size-of-storage: 10 + - id: hss-storage + size-of-storage: 10 + + sw-image-desc: + - id: nextepc-spgwmme-base + name: nextepc-spgwmme-base + checksum: + hash: # Mandatory? + - id: nextepc-hss-bas + name: nextepc-hss-bas + checksum: + hash: # Mandatory? + + vdu: + - id: spgwmme + name: spgwmme + description: spgwmme + cloud-init-file: spgwmme-init + virtual-compute-desc: spgwmme-compute + virtual-storage-desc: spgwmme-storage + sw-image-desc: nextepc-spgwmme-base + int-cpd: + - id: spgwmme-mgmt-int + virtual-network-interface-requirement: + - name: eth0 + type: EXTERNAL # Remove (redundant) + virtual-interface: + type: PARAVIRT + network-interface-requirements: + # ? + - id: spgwmme-s1-int + virtual-network-interface-requirement: + - name: eth1 + type: EXTERNAL # Remove (redundant) + virtual-interface: + type: PARAVIRT + network-interface-requirements: + # ? + - id: spgwmme-sgi-int + virtual-network-interface-requirement: + - name: eth2 + type: EXTERNAL # Remove (redundant) + virtual-interface: + type: PARAVIRT + network-interface-requirements: + # ? + - id: spgwmme-s6a-int + int-virtual-link-desc: s6a # Connection to VLD! + virtual-network-interface-requirement: + - id: eth3 + type: INTERNAL # Remove (redundant) + virtual-interface: + type: PARAVIRT + network-interface-requirements: + # ? + + - id: hss + name: hss + description: hss + cloud-init-file: hss-init + virtual-compute-desc: hss-compute + virtual-storage-desc: hss-storage + sw-image-desc: nextepc-hss-bas + int-cpd: + - id: hss-mgmt-int + virtual-network-interface-requirement: + - name: eth0 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + network-interface-requirements: + # ? + - id: hss-s6a-int + int-virtual-link-desc: s6a # Connection to VLD! + virtual-network-interface-requirement: + - id: eth1 + type: INTERNAL + virtual-interface: + type: PARAVIRT + network-interface-requirements: + #? + vdu-configuration: + initial-config-primitive: + - seq: "1" + name: config + parameter: + - name: ssh-hostname + value: + - name: ssh-username + value: ubuntu + - name: ssh-password + value: + - seq: "2" + name: configure-hss + parameter: + - name: spgw-ip + data-type: STRING + value: + - name: hss-ip + data-type: STRING + value: + - seq: "3" + name: restart-hss + juju: + charm: hsscharm + + df: + - id: vepc_default + vdu-profile: + - id: spgwmme + min-number-of-instance: 1 + - id: hss + min-number-of-instance: 1 + instantiation-level: + - id: default + vdu-level: + - id: spgwmme + number-of-instances: 1 + - id: hss + number-of-instances: 1 + virtual-link-profile: + - id: s6a + flavour: + virtual-link-protocol-data: + l3-protocol-data: + name: s6a + description: s6a network + ip-version: ipv4 + cidr: 10.0.6.0/24 + dhcp-enabled: true + + monitoring-parameter: + - id: "spgw_cpu_util" + name: "spgw_cpu_util" + performance-metric: "cpu_load" + collection-period: 123456 + + aggregation-type: AVERAGE # Not included in augments + vdu-monitoring-param: # Not included in augments + vdu-ref: "spgwmme" # Not included in augments + vdu-monitoring-param-ref: "spgw_cpu_util" # Not included in augments + - id: "spgw_memory_util" + name: "spgw_memory_util" + aggregation-type: AVERAGE # Not included in augments + vdu-monitoring-param: # Not included in augments + vdu-ref: "spgwmme" # Not included in augments + vdu-monitoring-param-ref: "spgw_memory_util" # Not included in augments + + vnf-configuration: + initial-config-primitive: + - seq: "1" + name: config + parameter: + - name: ssh-hostname + value: + - name: ssh-username + value: ubuntu + - name: ssh-password + value: + - seq: "2" + name: configure-spgw + parameter: + - name: spgw-ip + data-type: STRING + value: + - name: hss-ip + data-type: STRING + value: + - seq: "3" + name: restart-spgw + config-primitive: + - name: add-route + parameter: + - name: external-prefix + data-type: STRING + default-value: "8.8.8.8/32" + - name: next-hop + data-type: STRING + default-value: "192.168.2.1" + juju: + charm: spgwcharm + + int-virtual-link-desc: + - id: s6a + + exp-cpd: + # SPGWMME + - id: spgwmme-mgmt-ext + int-cpd: # Connection to int-cpd + vdu-id: spgwmme + cpd: spgwmme-mgmt-int + - id: spgwmme-s1-ext + int-cpd: # Connection to int-cpd + vdu-id: spgwmme + cpd: spgwmme-mgmt-int + - id: spgwmme-sgi-ext + int-cpd: # Connection to int-cpd + vdu-id: spgwmme + cpd: spgwmme-mgmt-int + + # HSS + - id: hss-mgmt-ext + int-cpd: # Connection to int-cpd + vdu-id: spgwmme + cpd: spgwmme-mgmt-int diff --git a/augments/examples/vepc_nsd_new.yaml b/augments/examples/vepc_nsd_new.yaml new file mode 100644 index 0000000..414c3e7 --- /dev/null +++ b/augments/examples/vepc_nsd_new.yaml @@ -0,0 +1,55 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +nsd: + - id: vEPC_nsd + name: vEPC_nsd + description: Generated by OSM package generator + designer: OSM_VNFONB_TF + version: "1.0" + vnfd-id: + - vEPC_vnfd + + virtual-link-desc: + - id: management + mgmt-network: "true" # Needed? + vim-network-name: osm-ext # Instantiation? + - id: s1 + vim-network-name: s1 + - id: sgi + vim-network-name: sgi + + df: + - id: vEPC_DF + vnf-profile: + - id: vEPC-VNF + vnfd-id: vEPC_vnfd + virtual-link-connectivity: + - virtual-link-profile-id: management + constituent-cpd-id: + - constituent-base-element-id: vEPC_vnfd + constituent-cpd-id: spgwmme-mgmt + - constituent-base-element-id: vEPC_vnfd + constituent-cpd-id: hss-mgmt + - virtual-link-profile-id: s1 + constituent-cpd-id: + - constituent-base-element-id: vEPC_vnfd + constituent-cpd-id: spgwmme-s1 + ip-address: 192.168.0.11 # Augmenting. Instantiation? + - virtual-link-profile-id: sgi + constituent-cpd-id: + - constituent-base-element-id: vEPC_vnfd + constituent-cpd-id: spgwmme-sgi + ip-address: 192.168.2.11 # Augmenting. Instantiation? \ No newline at end of file diff --git a/augments/examples/vepc_nsd_old.yaml b/augments/examples/vepc_nsd_old.yaml new file mode 100644 index 0000000..2306936 --- /dev/null +++ b/augments/examples/vepc_nsd_old.yaml @@ -0,0 +1,62 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +nsd:nsd-catalog: + nsd: + - id: vEPC_nsd + name: vEPC_nsd + short-name: vEPC_nsd # Deprecated + description: Generated by OSM package generator + vendor: OSM_VNFONB_TF # To designer + version: "1.0" + constituent-vnfd: + - member-vnf-index: 1 + vnfd-id-ref: vEPC_vnfd + + vld: + - id: management + name: management # Deprecated + short-name: management # Deprecated + type: ELAN # Deprecated + mgmt-network: "true" + vim-network-name: osm-ext + + vnfd-connection-point-ref: + - member-vnf-index-ref: 1 + vnfd-id-ref: vEPC_vnfd + vnfd-connection-point-ref: spgwmme-mgmt + - member-vnf-index-ref: 1 + vnfd-id-ref: vEPC_vnfd + vnfd-connection-point-ref: hss-mgmt + - id: s1 + name: s1 + short-name: s1 + type: ELAN + vim-network-name: s1 + vnfd-connection-point-ref: + - member-vnf-index-ref: 1 + vnfd-id-ref: vEPC_vnfd + vnfd-connection-point-ref: spgwmme-s1 + ip-address: 192.168.0.11 + - id: sgi + name: sgi + short-name: sgi + type: ELAN + vim-network-name: sgi + vnfd-connection-point-ref: + - member-vnf-index-ref: 1 + vnfd-id-ref: vEPC_vnfd + vnfd-connection-point-ref: spgwmme-sgi + ip-address: 192.168.2.11 diff --git a/augments/examples/vepc_old.yaml b/augments/examples/vepc_old.yaml new file mode 100644 index 0000000..d816967 --- /dev/null +++ b/augments/examples/vepc_old.yaml @@ -0,0 +1,182 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd:vnfd-catalog: + vnfd: + - id: vEPC_vnfd + name: vEPC_vnfd # To product-name + short-name: vEPC_vnfd # Deprecated + description: Generated by OSM package generator + vendor: OSM_VNFONB_TF # To do provider + version: "1.0" + mgmt-interface: # To mgmt-cp + cp: spgwmme-mgmt + ip-profiles: # To deployment flavour (DF) + - name: s6a + description: s6a network + ip-profile-params: + ip-version: ipv4 + subnet-address: 10.0.6.0/24 + dhcp-params: + enabled: true + vdu: + - id: spgwmme + name: spgwmme + description: spgwmme + count: 1 # To DF vdu-profile or instantiation-level + vm-flavor: + vcpu-count: 2 + memory-mb: 4096 + storage-gb: 10 + image: "nextepc-spgwmme-base" + cloud-init-file: spgwmme-init + interface: + - name: eth0 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + external-connection-point-ref: spgwmme-mgmt + - name: eth1 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + external-connection-point-ref: spgwmme-s1 + - name: eth2 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + external-connection-point-ref: spgwmme-sgi + - name: eth3 + type: INTERNAL + virtual-interface: + type: PARAVIRT + internal-connection-point-ref: spgwmme-s6a + internal-connection-point: + - id: spgwmme-s6a + name: spgwmme-s6a + type: VPORT + monitoring-param: # To be removed (feature 8157) + - id: "spgw_cpu_util" + nfvi-metric: "cpu_utilization" + - id: "spgw_memory_util" + nfvi-metric: "average_memory_utilization" + - id: hss + name: hss + description: hss + count: 1 + vm-flavor: + vcpu-count: 1 + memory-mb: 2048 + storage-gb: 10 + image: "nextepc-hss-base" + cloud-init-file: hss-init + interface: + - name: eth0 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + mgmt-interface: true + external-connection-point-ref: hss-mgmt + - name: eth1 + type: INTERNAL + virtual-interface: + type: PARAVIRT + internal-connection-point-ref: hss-s6a + internal-connection-point: + - id: hss-s6a + name: hss-s6a + type: VPORT + vdu-configuration: + initial-config-primitive: + - seq: "1" + name: config + parameter: + - name: ssh-hostname + value: + - name: ssh-username + value: ubuntu + - name: ssh-password + value: + - seq: "2" + name: configure-hss + parameter: + - name: spgw-ip + data-type: STRING + value: + - name: hss-ip + data-type: STRING + value: + - seq: "3" + name: restart-hss + juju: + charm: hsscharm + internal-vld: + - id: s6a + ip-profile-ref: s6a + internal-connection-point: + - id-ref: spgwmme-s6a + - id-ref: hss-s6a + name: s6a + connection-point: + - name: spgwmme-mgmt + - name: spgwmme-s1 + - name: spgwmme-sgi + - name: hss-mgmt + vnf-configuration: + initial-config-primitive: + - seq: "1" + name: config + parameter: + - name: ssh-hostname + value: + - name: ssh-username + value: ubuntu + - name: ssh-password + value: + - seq: "2" + name: configure-spgw + parameter: + - name: spgw-ip + data-type: STRING + value: + - name: hss-ip + data-type: STRING + value: + - seq: "3" + name: restart-spgw + config-primitive: + - name: add-route + parameter: + - name: external-prefix + data-type: STRING + default-value: "8.8.8.8/32" + - name: next-hop + data-type: STRING + default-value: "192.168.2.1" + juju: + charm: spgwcharm + monitoring-param: + - id: "spgw_cpu_util" + name: "spgw_cpu_util" + aggregation-type: AVERAGE + vdu-monitoring-param: + vdu-ref: "spgwmme" + vdu-monitoring-param-ref: "spgw_cpu_util" + - id: "spgw_memory_util" + name: "spgw_memory_util" + aggregation-type: AVERAGE + vdu-monitoring-param: + vdu-ref: "spgwmme" + vdu-monitoring-param-ref: "spgw_memory_util" diff --git a/augments/examples/vnfd_new.yaml b/augments/examples/vnfd_new.yaml new file mode 100644 index 0000000..3673bed --- /dev/null +++ b/augments/examples/vnfd_new.yaml @@ -0,0 +1,80 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Using new SOL006-based OSM model + +vnfd: + id: vnfd + + mgmt-interface: + cp: vnf-mgmt + + ext-cpd: + - id: vnf-mgmt # Name and id are redundant. Merged into id. + short-name: vnf-mgmt + type: VPORT + - id: vnf-data + short-name: vnf-data + type: VPORT + + int-virtual-link-desc: + - id: internal # Name and id are redundant. Merged into id. + short-name: internal + type: ELAN # Is this used? If it is I'll include it in an augment. + + vdu: + - id: mgmtVM + + interface: + - name: mgmtVM-eth0 + position: "1" + type: EXTERNAL + virtual-interface: + type: VIRTIO + external-connection-point-ref: vnf-mgmt + - name: mgmtVM-eth1 + position: "2" + type: INTERNAL + virtual-interface: + type: VIRTIO + internal-connection-point-ref: mgmtVM-internal + + int-cpd: + - id: mgmtVM-internal + short-name: mgmtVM-internal + type: VPORT + int-virtual-link-desc: internal # In SOL006 the reference is from CPD to VLD + + - id: dataVM + + interface: + - name: dataVM-eth0 + position: "1" + type: INTERNAL + virtual-interface: + type: VIRTIO + internal-connection-point-ref: dataVM-internal + - name: dataVM-xe0 + position: "2" + type: EXTERNAL + virtual-interface: + type: VIRTIO + external-connection-point-ref: vnf-data + + int-cpd: + - id: dataVM-eth0 + short-name: dataVM-internal + type: VPORT + int-virtual-link-desc: internal # In SOL006 the reference is from CPD to VLD diff --git a/augments/examples/vnfd_old.yaml b/augments/examples/vnfd_old.yaml new file mode 100644 index 0000000..587cb89 --- /dev/null +++ b/augments/examples/vnfd_old.yaml @@ -0,0 +1,87 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Using old OSM IM model + +vnfd:vnfd-catalog: + vnfd: + id: vnfd + + mgmt-interface: + cp: vnf-mgmt + + connection-point: + - id: vnf-mgmt + name: vnf-mgmt + short-name: vnf-mgmt + type: VPORT + - id: vnf-data + name: vnf-data + short-name: vnf-data + type: VPORT + + internal-vld: + - id: internal + name: internal + short-name: internal + type: ELAN + internal-connection-point: + - id-ref: mgmtVM-internal + - id-ref: dataVM-internal + + vdu: + - id: mgmtVM + + interface: + - name: mgmtVM-eth0 + position: "1" + type: EXTERNAL + virtual-interface: + type: VIRTIO + external-connection-point-ref: vnf-mgmt + - name: mgmtVM-eth1 + position: "2" + type: INTERNAL + virtual-interface: + type: VIRTIO + internal-connection-point-ref: mgmtVM-internal + + internal-connection-point: + - id: mgmtVM-internal + name: mgmtVM-internal + short-name: mgmtVM-internal + type: VPORT + + - id: dataVM + + interface: + - name: dataVM-eth0 + position: "1" + type: INTERNAL + virtual-interface: + type: VIRTIO + internal-connection-point-ref: dataVM-internal + - name: dataVM-xe0 + position: "2" + type: EXTERNAL + virtual-interface: + type: VIRTIO + external-connection-point-ref: vnf-data + + internal-connection-point: + - id: dataVM-internal + name: dataVM-internal + short-name: dataVM-internal + type: VPORT -- 2.17.1