X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FRO.git;a=blobdiff_plain;f=vnfs%2Fvnf-template.yaml;fp=vnfs%2Fvnf-template.yaml;h=9f01ff59ae4cbee5eeace1a35fb2afeab544b265;hp=0000000000000000000000000000000000000000;hb=51cc9c4c78bb54c84a5d2399207d206eb30ea247;hpb=9f40121f66e644ddf700720d8d4bdf464f6dd414 diff --git a/vnfs/vnf-template.yaml b/vnfs/vnf-template.yaml new file mode 100644 index 00000000..9f01ff59 --- /dev/null +++ b/vnfs/vnf-template.yaml @@ -0,0 +1,108 @@ +## +# Copyright 2015 Telefonica Investigacion y Desarrollo, S.A.U. +# This file is part of openmano +# All Rights Reserved. +# +# 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. +# +# For those usages not covered by the Apache License, Version 2.0 please +# contact with: nfvlabs@tid.es +## +--- +vnf: + name: TEMPLATE + description: This is a template to help in the creation of your own VNFs + # class: parent # Optional. Used to organize VNFs + external-connections: + - name: mgmt0 + type: mgmt # "mgmt" (autoconnect to management net), "bridge", "data" + VNFC: TEMPLATE-VM # Virtual Machine this interface belongs to + local_iface_name: mgmt0 # interface name inside this Virtual Machine (must be defined in the VNFC section) + description: Management interface + - name: xe0 + type: data + VNFC: TEMPLATE-VM + local_iface_name: xe0 + description: Data interface 1 + - name: xe1 + type: data + VNFC: TEMPLATE-VM + local_iface_name: xe1 + description: Data interface 2 + - name: ge0 + type: bridge + VNFC: TEMPLATE-VM + local_iface_name: ge0 + description: Bridge interface + VNFC: # Virtual machine array + - name: TEMPLATE-VM # name of Virtual Machine + # count: 1 #by default 1 + description: TEMPLATE description + VNFC image: /path/to/imagefolder/TEMPLATE-VM.qcow2 + # image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" } #Optional + # processor: #Optional + # model: Intel(R) Xeon(R) CPU E5-4620 0 @ 2.20GHz + # features: ["64b", "iommu", "lps", "tlbps", "hwsv", "dioc", "ht"] + # hypervisor: #Optional + # type: QEMU-kvm + # version: "10002|12001|2.6.32-358.el6.x86_64" + # vcpus: 1 # Only for traditional cloud VMs. Number of virtual CPUs (oversubscription is allowed). + # ram: 1024 # Only for traditional cloud VMs. Memory in MBytes (not from hugepages, oversubscription is allowed) + # disk: 10 # disk size in GiB, by default 1 + numas: + - paired-threads: 5 # "cores", "paired-threads", "threads" + paired-threads-id: [ [0,1], [2,3], [4,5], [6,7], [8,9] ] # By default follows incremental order + memory: 14 # GBytes + interfaces: + - name: xe0 + vpci: "0000:00:11.0" + dedicated: "yes" # "yes"(passthrough), "no"(sriov with vlan tags), "yes:sriov"(sriovi, but exclusive and without vlan tag) + bandwidth: 10 Gbps + # mac_address: '20:33:45:56:77:44' #avoid this option if possible + - name: xe1 + vpci: "0000:00:12.0" + dedicated: "yes" + bandwidth: 10 Gbps + # mac_address: '20:33:45:56:77:45' #avoid this option if possible + bridge-ifaces: + - name: mgmt0 + vpci: "0000:00:09.0" # Optional. Virtual PCI address + bandwidth: 1 Mbps # Optional. Informative only + # mac_address: '20:33:45:56:77:46' #avoid this option if possible + # model: 'virtio' # ("virtio","e1000","ne2k_pci","pcnet","rtl8139") By default, it is automatically filled by libvirt + - name: ge0 + vpci: "0000:00:10.0" + bandwidth: 1 Mbps + # mac_address: '20:33:45:56:77:47' #avoid this option if possible + # model: 'virtio' # ("virtio","e1000","ne2k_pci","pcnet","rtl8139") By default, it is automatically filled by libvirt + devices: # Optional, order determines device letter asignation (hda, hdb, ...) + - type: disk # "disk","cdrom","xml" + image: /path/to/imagefolder/SECOND-DISK.qcow2 + # image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" } + # vpci: "0000:00:03.0" # Optional, not for disk or cdrom + - type: cdrom + image: /path/to/imagefolder/CDROM-IMAGE.qcow2 + # image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" } + - type: xml + image: /path/to/imagefolder/ADDITIONAL-DISK.qcow2 # Optional, depending on the device type + image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" } # Optional, depending on the device type + vpci: "0000:00:03.0" # Optional, depending on the device type (not needed for disk or cdrom) + xml: ' xml text for XML described devices. Do not use single quotes inside + The following words, if found, will be replaced: + __file__ by image path, (image must be provided) + __format__ by qcow2 or raw (image must be provided) + __dev__ by device letter (b, c, d ...) + __vpci__ by vpci (vpci must be provided) + ' + # Additional Virtual Machines would be included here +