diff --git a/epa_1vm_sriov_ns/epa_1vm_sriov_nsd.yaml b/epa_1vm_sriov_ns/epa_1vm_sriov_nsd.yaml new file mode 100644 index 0000000000000000000000000000000000000000..33a0048d656055cbed7c4bb2d95f367d2334ad99 --- /dev/null +++ b/epa_1vm_sriov_ns/epa_1vm_sriov_nsd.yaml @@ -0,0 +1,38 @@ +nsd: + nsd: + - description: NS with 2 VNFs epa_1vm_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_1vm_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_1vm_sriov-vnf + id: hackfest_epasriov-ns + name: hackfest_epasriov-ns + version: '1.0' + virtual-link-desc: + - id: mgmtnet + mgmt-network: true + - id: datanet + vnfd-id: + - epa_1vm_sriov-vnf diff --git a/epa_1vm_sriov_ns/icons/osm.png b/epa_1vm_sriov_ns/icons/osm.png new file mode 100644 index 0000000000000000000000000000000000000000..62012d2a2b491bdcd536d62c3c3c863c0d8c1b33 Binary files /dev/null and b/epa_1vm_sriov_ns/icons/osm.png differ diff --git a/epa_1vm_sriov_vnf/cloud_init/cloud-config.txt b/epa_1vm_sriov_vnf/cloud_init/cloud-config.txt new file mode 100644 index 0000000000000000000000000000000000000000..25b63cc647effa3d8c9ee922beaac1782339ba4f --- /dev/null +++ b/epa_1vm_sriov_vnf/cloud_init/cloud-config.txt @@ -0,0 +1,4 @@ +#cloud-config +password: osm4u +chpasswd: { expire: False } +ssh_pwauth: True diff --git a/epa_1vm_sriov_vnf/epa_1vm_sriov_vnfd.yaml b/epa_1vm_sriov_vnf/epa_1vm_sriov_vnfd.yaml new file mode 100644 index 0000000000000000000000000000000000000000..f374fae17b9073c6490bff80911862c712ac54b4 --- /dev/null +++ b/epa_1vm_sriov_vnf/epa_1vm_sriov_vnfd.yaml @@ -0,0 +1,69 @@ +vnfd: + description: A VNF consisting of 1 VDU with 1 paravirt and 1 SRIOV interface + df: + - id: default-df + instantiation-level: + - id: default-instantiation-level + vdu-level: + - number-of-instances: 1 + vdu-id: dataVM + vdu-profile: + - id: dataVM + min-number-of-instances: 1 + ext-cpd: + - id: vnf-mgmt-ext + int-cpd: + cpd: eth0-int + vdu-id: dataVM + - id: vnf-data-ext + int-cpd: + cpd: xe0-int + vdu-id: dataVM + id: epa_1vm_sriov-vnf + mgmt-cp: vnf-mgmt-ext + product-name: epa_1vm_sriov-vnf + sw-image-desc: + - id: ubuntu20.04 + image: ubuntu20.04 + name: ubuntu20.04 + vdu: + - cloud-init-file: cloud-config.txt + id: dataVM + int-cpd: + - id: eth0-int + 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: dataVM-compute + virtual-cpu: + num-virtual-cpu: 2 + 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: dataVM-storage + size-of-storage: 10 diff --git a/epa_1vm_sriov_vnf/icons/osm.png b/epa_1vm_sriov_vnf/icons/osm.png new file mode 100644 index 0000000000000000000000000000000000000000..62012d2a2b491bdcd536d62c3c3c863c0d8c1b33 Binary files /dev/null and b/epa_1vm_sriov_vnf/icons/osm.png differ diff --git a/hackfest_epasriov_vnf/cloud_init/cloud-config.txt b/hackfest_epasriov_vnf/cloud_init/cloud-config.txt index ba7f61f41b56d6b01c725c7926e54bf82ab363a8..3e8d7b217417d1edb20e763b22e2b91255355310 100755 --- a/hackfest_epasriov_vnf/cloud_init/cloud-config.txt +++ b/hackfest_epasriov_vnf/cloud_init/cloud-config.txt @@ -13,43 +13,6 @@ write_files: owner: root:root permissions: '0644' path: /root/helloworld.txt -- content: | - network: - version: 2 - ethernets: - eth0: - dhcp4: true - dhcp6: true - eth1: - dhcp4: true - dhcp6: true - - owner: root:root - permissions: '0644' - path: /etc/netplan/01-netcfg.yaml -- content: | - #!/bin/sh -eux - - ubuntu_version="`lsb_release -r | awk '{print $2}'`"; - major_version="`echo $ubuntu_version | awk -F. '{print $1}'`"; - - if [ "$major_version" -ge "16" ]; then - # Disable Predictable Network Interface names and use eth0 - sed -i 's/en[[:alnum:]]*/eth0/g' /etc/network/interfaces; - sed -i 's/GRUB_CMDLINE_LINUX="\(.*\)"/GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0 \1"/g' /etc/default/grub; - update-grub; - fi - - owner: root:root - permissions: '0750' - path: /root/networking.sh runcmd: - [ sh, -c, "chown ubuntu:ubuntu /home/ubuntu/test4.pem" ] -- [ mv, /etc/netplan/50-cloud-init.yaml, /etc/netplan/50-cloud-init.yaml.bak ] -- [ sh, -c, "/root/networking.sh" ] -power_state: - mode: reboot - message: Bye Bye - timeout: 5 - condition: True diff --git a/hackfest_epasriov_vnf/hackfest_epasriov_vnfd.yaml b/hackfest_epasriov_vnf/hackfest_epasriov_vnfd.yaml index 43249935534bb8469278c99db02afcbbf0589c98..87bc4aa1b20ac0499b3427e98a5664eecd0f1941 100644 --- a/hackfest_epasriov_vnf/hackfest_epasriov_vnfd.yaml +++ b/hackfest_epasriov_vnf/hackfest_epasriov_vnfd.yaml @@ -30,9 +30,9 @@ vnfd: mgmt-cp: vnf-mgmt-ext product-name: hackfest_epasriov-vnf sw-image-desc: - - id: ubuntu18.04 - image: ubuntu18.04 - name: ubuntu18.04 + - id: ubuntu20.04 + image: ubuntu20.04 + name: ubuntu20.04 - id: hackfest-pktgen image: hackfest-pktgen name: hackfest-pktgen @@ -54,7 +54,7 @@ vnfd: virtual-interface: type: PARAVIRT name: mgmtVM - sw-image-desc: ubuntu18.04 + sw-image-desc: ubuntu20.04 virtual-compute-desc: mgmtVM-compute virtual-storage-desc: - mgmtVM-storage