--- /dev/null
+# 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
+ ...
--- /dev/null
+# 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"
+ ...
+
--- /dev/null
+# 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: <rw_mgmt_ip>
+ - name: ssh-username
+ value: ubuntu
+ - name: ssh-password
+ value: <password>
+ - seq: "2"
+ name: configure-hss
+ parameter:
+ - name: spgw-ip
+ data-type: STRING
+ value: <spgw_ip>
+ - name: hss-ip
+ data-type: STRING
+ value: <hss_ip>
+ - 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: <rw_mgmt_ip>
+ - name: ssh-username
+ value: ubuntu
+ - name: ssh-password
+ value: <password>
+ - seq: "2"
+ name: configure-spgw
+ parameter:
+ - name: spgw-ip
+ data-type: STRING
+ value: <spgw_ip>
+ - name: hss-ip
+ data-type: STRING
+ value: <hss_ip>
+ - 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
--- /dev/null
+# 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
--- /dev/null
+# 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
--- /dev/null
+# 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: <rw_mgmt_ip>
+ - name: ssh-username
+ value: ubuntu
+ - name: ssh-password
+ value: <password>
+ - seq: "2"
+ name: configure-hss
+ parameter:
+ - name: spgw-ip
+ data-type: STRING
+ value: <spgw_ip>
+ - name: hss-ip
+ data-type: STRING
+ value: <hss_ip>
+ - 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: <rw_mgmt_ip>
+ - name: ssh-username
+ value: ubuntu
+ - name: ssh-password
+ value: <password>
+ - seq: "2"
+ name: configure-spgw
+ parameter:
+ - name: spgw-ip
+ data-type: STRING
+ value: <spgw_ip>
+ - name: hss-ip
+ data-type: STRING
+ value: <hss_ip>
+ - 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"
--- /dev/null
+# 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
--- /dev/null
+# 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