diff --git a/epa_2vm_sriov_ns/epa_2vm_sriov_nsd.yaml b/epa_2vm_sriov_ns/epa_2vm_sriov_nsd.yaml new file mode 100644 index 0000000000000000000000000000000000000000..57ae239725b33b9ab46ce11bed72c2f69a119d93 --- /dev/null +++ b/epa_2vm_sriov_ns/epa_2vm_sriov_nsd.yaml @@ -0,0 +1,38 @@ +nsd: + nsd: + - description: NS with 2 VNFs epa_2vm_sriov-vnf connected by datanet and mgmtnet + VLs + df: + - id: default-df + vnf-profile: + - id: '1' + virtual-link-connectivity: + - constituent-cpd-id: + - constituent-base-element-id: '1' + constituent-cpd-id: vnf-mgmt-ext + virtual-link-profile-id: mgmtnet + - constituent-cpd-id: + - constituent-base-element-id: '1' + constituent-cpd-id: vnf-data-ext + virtual-link-profile-id: datanet + vnfd-id: epa_2vm_sriov-vnf + - id: '2' + virtual-link-connectivity: + - constituent-cpd-id: + - constituent-base-element-id: '2' + constituent-cpd-id: vnf-mgmt-ext + virtual-link-profile-id: mgmtnet + - constituent-cpd-id: + - constituent-base-element-id: '2' + constituent-cpd-id: vnf-data-ext + virtual-link-profile-id: datanet + vnfd-id: epa_2vm_sriov-vnf + id: epa_2vm_sriov-ns + name: epa_2vm_sriov-ns + version: '1.0' + virtual-link-desc: + - id: mgmtnet + mgmt-network: true + - id: datanet + vnfd-id: + - epa_2vm_sriov-vnf diff --git a/epa_2vm_sriov_ns/icons/osm.png b/epa_2vm_sriov_ns/icons/osm.png new file mode 100644 index 0000000000000000000000000000000000000000..62012d2a2b491bdcd536d62c3c3c863c0d8c1b33 Binary files /dev/null and b/epa_2vm_sriov_ns/icons/osm.png differ diff --git a/epa_2vm_sriov_vnf/cloud_init/cloud-config-data.txt b/epa_2vm_sriov_vnf/cloud_init/cloud-config-data.txt new file mode 100644 index 0000000000000000000000000000000000000000..cf1e7a5ebe6047de6c5ee5dbbdc9d5d2e46f36ed --- /dev/null +++ b/epa_2vm_sriov_vnf/cloud_init/cloud-config-data.txt @@ -0,0 +1,6 @@ +#cloud-config +password: osm4u +chpasswd: { expire: False } +ssh_pwauth: True +ssh_authorized_keys: + - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC49EBX7pW4ogqGMqT4y/SBDGXibz+XSgH8q5IEgt4BHlsHM2tWTtWFs/ULQ9Rq5BF781h96cludcLL9LnFAH8LVJCfiqfVnXEvwVNsVZqUVcTRyOnUMWGiJMptOu6JQkwVkPAnk0bMRjerWUhySCduyAQOhVE7DBcE6VjCu3q8cqAURzAcbBk8AtCPSvKCMhE45+9h+0V9joPV+MpsgHdqsoASiHIXTGhybcH5cS25epPpYuyTatQTBzz5WGiwUz//FsoI4KHZ+bcXXq4b+HkecplPgUtu+tVvRre/JoYmr6YrqCk9Qqf7bpEC6i4rjU7BzMWTuys7rrY8nAB4ytAN diff --git a/epa_2vm_sriov_vnf/cloud_init/cloud-config-mgmt.txt b/epa_2vm_sriov_vnf/cloud_init/cloud-config-mgmt.txt new file mode 100644 index 0000000000000000000000000000000000000000..ea35add978bab82daa29a5bac425d7debe1d4410 --- /dev/null +++ b/epa_2vm_sriov_vnf/cloud_init/cloud-config-mgmt.txt @@ -0,0 +1,41 @@ +#cloud-config +password: osm4u +chpasswd: { expire: False } +ssh_pwauth: True +write_files: +- content: | + -----BEGIN RSA PRIVATE KEY----- + MIIEowIBAAKCAQEAuPRAV+6VuKIKhjKk+Mv0gQxl4m8/l0oB/KuSBILeAR5bBzNr + Vk7VhbP1C0PUauQRe/NYfenJbnXCy/S5xQB/C1SQn4qn1Z1xL8FTbFWalFXE0cjp + 1DFhoiTKbTruiUJMFZDwJ5NGzEY3q1lIckgnbsgEDoVROwwXBOlYwrt6vHKgFEcw + HGwZPALQj0rygjIROOfvYftFfY6D1fjKbIB3arKAEohyF0xocm3B+XEtuXqT6WLs + k2rUEwc8+VhosFM//xbKCOCh2fm3F16uG/h5HnKZT4FLbvrVb0a3vyaGJq+mK6gp + PUKn+26RAuouK41OwczFk7srO662PJwAeMrQDQIDAQABAoIBAEm73jbv/7JWr1lm + sUwai0QzPB70eOaIc5hWkeTIg1bw0hthzWXgEdG2t3chOHrQp4PBtMKlxE8MFXeX + /cNi+kL7GJjx/wzzMl92dBqZWgHO26NCtK2KbkDk5+p59wSzcH+cg5FTboMbbzAZ + bP9acpYAmVVsosCmhjrICEHB2iFr5sopbHgq9MEq1vQhV8fZJf8NDjmAPjug1XFa + 2vi3G+bKuCLKBabsFVMabcCKlTlSrjUcwijJDatbJkmiz3Sg7IcczQbz++BXdhCU + UkjpLA5tAvIyncQpX5pAU467rO2E+Wcrq9NHl43vN2XHM3g6wIRjSBkmgndBFLds + En5WloUCgYEA71/Am0RCjyoF1IUJ7DpkjWxinkhzn6P0vIIAIRvMMwcEKPHoclBv + 2k0ZdFkGfI4PDZgWwbFsvMysF/lB6bmw8tFxDL2g3cGEdVFBPC0L1qsf5jOKKe1d + eqtarToIgcya4/9ALNeci4DiH6coZrZ3Pg4/6rkhhhm5yWjl1prgFqsCgYEAxczf + VANZVg9JsbXjRnygRxOx735Ug17+dxaDdfdzYviH1XEqWMFyGCmpnk5aT8aHJpIY + DroaAvgAOEkVje5Pv9PpU6GuAh2USL11l4Hp8z3I1YJNkmABUa0aPe5ZQEG5NruH + dUTwJhXuo1buKbhg8j81DrPF/HAQOTMjpASmFCcCgYAjZmm5jJK7UV+jWjlpcglE + 0O6UsepHhZu/9QnH27CLK1J2K7BQl4yzIAvPpQrMiMW5IPDcnDyUf0BEG1ygEBIX + Fto9JB4SLXhFUUrwd0j06kHBbYXVRYE5jvXOAHMZnwSZCzqWZxyDlP/b5oCXEAz6 + ZGkXcWF/z3YmTxkOb8EMGQKBgAlHHMqSBaS1vt0pDOoHenUbBWOYZ1pqIEFxuuTT + oIPp6GUok7XqDPH5Mk2Mm0vWogw7GgnGzOWKwGfjdbFclj0HMZCMqt7KiGQJDvT2 + UQTpxvvMytqsyiMMnYh+H42WB5v7m9TyUNlYegMLVsx6K4HxWQnBgO3gS8KDFY7h + 8PBNAoGBAN+92Vayc9CD42Kg8nRN0Gy15zE4x8R6x4bxys47qC7ST3xVJgQHlOk4 + weBWzLb+eW2bvKogRm5xS4nmXzg/fFWaLzwDGRHawKPO8LpSOdXNeV54YncaFuCZ + LPMO7xo6dYNtdI3mIk+K3lSjxgeIE1fMmFVm4ZJWgY5qeKPnMzfc + -----END RSA PRIVATE KEY----- + + + owner: root:root + permissions: '0600' + path: /home/ubuntu/test.pem +runcmd: +- [ sh, -c, "chown ubuntu:ubuntu /home/ubuntu/test.pem" ] + diff --git a/epa_2vm_sriov_vnf/epa_2vm_sriov_vnfd.yaml b/epa_2vm_sriov_vnf/epa_2vm_sriov_vnfd.yaml new file mode 100644 index 0000000000000000000000000000000000000000..cdd4140bb9a77bd10e7e819576542acb927de583 --- /dev/null +++ b/epa_2vm_sriov_vnf/epa_2vm_sriov_vnfd.yaml @@ -0,0 +1,115 @@ +vnfd: + description: A VNF consisting of 2 VDUs with EPA capabilities connected to an internal + VL, 1 external CP based on paravirt, 1 external CP based on SR-IOV + df: + - id: default-df + instantiation-level: + - id: default-instantiation-level + vdu-level: + - number-of-instances: 1 + vdu-id: mgmtVM + - number-of-instances: 1 + vdu-id: dataVM + vdu-profile: + - id: mgmtVM + min-number-of-instances: 1 + - id: dataVM + min-number-of-instances: 1 + ext-cpd: + - id: vnf-mgmt-ext + int-cpd: + cpd: mgmtVM-eth0-int + vdu-id: mgmtVM + - id: vnf-data-ext + int-cpd: + cpd: xe0-int + vdu-id: dataVM + id: epa_2vm_sriov-vnf + int-virtual-link-desc: + - id: internal + mgmt-cp: vnf-mgmt-ext + product-name: epa_2vm_sriov-vnf + sw-image-desc: + - id: ubuntu20.04 + image: ubuntu20.04 + name: ubuntu20.04 + vdu: + - cloud-init-file: cloud-config-mgmt.txt + id: mgmtVM + int-cpd: + - id: mgmtVM-eth0-int + virtual-network-interface-requirement: + - name: mgmtVM-eth0 + position: 1 + virtual-interface: + type: PARAVIRT + - id: mgmtVM-eth1-int + int-virtual-link-desc: internal + virtual-network-interface-requirement: + - name: mgmtVM-eth1 + position: 2 + virtual-interface: + type: PARAVIRT + name: mgmtVM + sw-image-desc: ubuntu20.04 + virtual-compute-desc: mgmtVM-compute + virtual-storage-desc: + - mgmtVM-storage + - cloud-init-file: cloud-config-data.txt + id: dataVM + int-cpd: + - id: eth0-int + int-virtual-link-desc: internal + virtual-network-interface-requirement: + - name: eth0 + position: 1 + virtual-interface: + type: PARAVIRT + - id: xe0-int + virtual-network-interface-requirement: + - name: xe0 + position: 2 + virtual-interface: + type: SR-IOV + name: dataVM + sw-image-desc: ubuntu20.04 + virtual-compute-desc: dataVM-compute + virtual-storage-desc: + - dataVM-storage + version: '1.0' + virtual-compute-desc: + - id: mgmtVM-compute + virtual-cpu: + num-virtual-cpu: 1 + pinning: + policy: static + thread-policy: PREFER + virtual-memory: + mempage-size: LARGE + numa-enabled: true + numa-node-policy: + mem-policy: STRICT + node: + - id: 1 + node-cnt: 1 + size: 1.0 + - id: dataVM-compute + virtual-cpu: + num-virtual-cpu: 8 + pinning: + policy: static + thread-policy: PREFER + virtual-memory: + mempage-size: LARGE + numa-enabled: true + numa-node-policy: + mem-policy: STRICT + node: + - id: 1 + node-cnt: 1 + size: 4.0 + virtual-storage-desc: + - id: mgmtVM-storage + size-of-storage: 10 + - id: dataVM-storage + size-of-storage: 10 diff --git a/epa_2vm_sriov_vnf/icons/osm.png b/epa_2vm_sriov_vnf/icons/osm.png new file mode 100644 index 0000000000000000000000000000000000000000..62012d2a2b491bdcd536d62c3c3c863c0d8c1b33 Binary files /dev/null and b/epa_2vm_sriov_vnf/icons/osm.png differ