blob: fb48082035567265c55b150923eed72aab46cfac [file] [log] [blame]
garciadeblasedca7b32016-09-29 14:01:52 +00001##
tierno92021022018-09-12 16:29:23 +02002# Copyright 2015 Telefonica Investigacion y Desarrollo, S.A.U.
garciadeblasedca7b32016-09-29 14:01:52 +00003# This file is part of openmano
4# All Rights Reserved.
5#
6# Licensed under the Apache License, Version 2.0 (the "License"); you may
7# not use this file except in compliance with the License. You may obtain
8# a copy of the License at
9#
10# http://www.apache.org/licenses/LICENSE-2.0
11#
12# Unless required by applicable law or agreed to in writing, software
13# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15# License for the specific language governing permissions and limitations
16# under the License.
17#
18# For those usages not covered by the Apache License, Version 2.0 please
19# contact with: nfvlabs@tid.es
20##
21---
22vnf:
23 name: TEMPLATE-2VM
24 description: This is a template to help in the creation of multi-VM VNFs
25 # class: parent # Optional. Used to organize VNFs
26 internal-connections:
27 - name: datanet
28 description: datanet
29 type: data
30 elements:
31 - VNFC: VirtualMachine-1
32 local_iface_name: xe0
33 - VNFC: VirtualMachine-2
34 local_iface_name: xe0
35 - name: controlnet
36 description: controlnet
37 type: bridge
38 elements:
39 - VNFC: VirtualMachine-1
40 local_iface_name: ge0
41 - VNFC: VirtualMachine-2
42 local_iface_name: ge0
43 external-connections:
44 - name: mgmt0
45 type: mgmt # "mgmt" (autoconnect to management net), "bridge", "data"
46 VNFC: VirtualMachine-1 # Virtual Machine this interface belongs to
47 local_iface_name: mgmt0 # interface name inside this Virtual Machine (must be defined in the VNFC section)
48 description: Management interface 1
49 - name: mgmt1
50 type: mgmt # "mgmt" (autoconnect to management net), "bridge", "data"
51 VNFC: VirtualMachine-2 # Virtual Machine this interface belongs to
52 local_iface_name: mgmt0 # interface name inside this Virtual Machine (must be defined in the VNFC section)
53 description: Management interface 2
54 - name: data0
55 type: data # "mgmt" (autoconnect to management net), "bridge", "data"
56 VNFC: VirtualMachine-1 # Virtual Machine this interface belongs to
57 local_iface_name: xe1 # interface name inside this Virtual Machine (must be defined in the VNFC section)
58 description: Data interface 1
59 - name: data1
60 type: data # "mgmt" (autoconnect to management net), "bridge", "data"
61 VNFC: VirtualMachine-2 # Virtual Machine this interface belongs to
62 local_iface_name: xe1 # interface name inside this Virtual Machine (must be defined in the VNFC section)
63 description: Data interface 2
64 VNFC: # Virtual machine array
65 # First Virtual Machine
66 - name: VirtualMachine-1 # name of Virtual Machine
67 description: VM 1 in the MultiVM template
68 VNFC image: /path/to/imagefolder/TEMPLATE-2VM-VM1.qcow2
69 # image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" } #Optional
70 # processor: #Optional
71 # model: Intel(R) Xeon(R) CPU E5-4620 0 @ 2.20GHz
72 # features: ["64b", "iommu", "lps", "tlbps", "hwsv", "dioc", "ht"]
73 # hypervisor: #Optional
74 # type: QEMU-kvm
75 # version: "10002|12001|2.6.32-358.el6.x86_64"
76 # vcpus: 1 # Only for traditional cloud VMs. Number of virtual CPUs (oversubscription is allowed).
77 # ram: 1024 # Only for traditional cloud VMs. Memory in MBytes (not from hugepages, oversubscription is allowed)
78 # disk: 10 # disk size in GiB, by default 1
79 numas:
80 - paired-threads: 5 # "cores", "paired-threads", "threads"
81 paired-threads-id: [ [0,1], [2,3], [4,5], [6,7], [8,9] ] # By default follows incremental order
82 memory: 14 # GBytes
83 interfaces:
84 - name: xe0
85 vpci: "0000:00:11.0"
86 dedicated: "yes" # "yes"(passthrough), "no"(sriov with vlan tags), "yes:sriov"(sriovi, but exclusive and without vlan tag)
87 bandwidth: 10 Gbps
88 #mac_address: '20:33:45:56:77:44' #avoid this option if possible
89 - name: xe1
90 vpci: "0000:00:12.0"
91 dedicated: "yes"
92 bandwidth: 10 Gbps
93 #mac_address: '20:33:45:56:77:45' #avoid this option if possible
94 bridge-ifaces:
95 - name: mgmt0
96 vpci: "0000:00:09.0" # Optional. Virtual PCI address
97 bandwidth: 1 Mbps # Optional. Informative only
98 # mac_address: '20:33:45:56:77:46' #avoid this option if possible
99 # model: 'virtio' # ("virtio","e1000","ne2k_pci","pcnet","rtl8139") By default, it is automatically filled by libvirt
100 - name: ge0
101 vpci: "0000:00:10.0"
102 bandwidth: 1 Mbps
103 # mac_address: '20:33:45:56:77:47' # avoid this option if possible
104 # model: 'virtio' # ("virtio","e1000","ne2k_pci","pcnet","rtl8139") By default, it is automatically filled by libvirt
105 devices: # Optional, order determines device letter asignation (hda, hdb, ...)
106 - type: disk # "disk","cdrom","xml"
107 image: /path/to/imagefolder/SECOND-DISK.qcow2
108 # image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" }
109 # vpci: "0000:00:03.0" # Optional, not for disk or cdrom
110 - type: cdrom
111 image: /path/to/imagefolder/CDROM-IMAGE.qcow2
112 # image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" }
113 - type: xml
114 image: /path/to/imagefolder/ADDITIONAL-DISK.qcow2 # Optional, depending on the device type
115 image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" } # Optional, depending on the device type
116 vpci: "0000:00:03.0" # Optional, depending on the device type (not needed for disk or cdrom)
117 xml: ' xml text for XML described devices. Do not use single quotes inside
118 The following words, if found, will be replaced:
119 __file__ by image path, (image must be provided)
120 __format__ by qcow2 or raw (image must be provided)
121 __dev__ by device letter (b, c, d ...)
122 __vpci__ by vpci (vpci must be provided)
123 '
124 # Second Virtual Machine
125 - name: VirtualMachine-2 # name of Virtual Machine
126 description: VM 2 in the MultiVM template
127 VNFC image: /path/to/imagefolder/TEMPLATE-2VM-VM1.qcow2 # In this case, it is the same as VirtualMachine-1, but it could have been different
128 # image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" } #Optional
129 # processor: #Optional
130 # model: Intel(R) Xeon(R) CPU E5-4620 0 @ 2.20GHz
131 # features: ["64b", "iommu", "lps", "tlbps", "hwsv", "dioc", "ht"]
132 # hypervisor: #Optional
133 # type: QEMU-kvm
134 # version: "10002|12001|2.6.32-358.el6.x86_64"
135 # vcpus: 1 # Only for traditional cloud VMs. Number of virtual CPUs (oversubscription is allowed).
136 # ram: 1024 # Only for traditional cloud VMs. Memory in MBytes (not from hugepages, oversubscription is allowed)
137 # disk: 10 # disk size in GiB, by default 1
138 numas:
139 - paired-threads: 5 # "cores", "paired-threads", "threads"
140 paired-threads-id: [ [0,1], [2,3], [4,5], [6,7], [8,9] ] # By default follows incremental order
141 memory: 14 # GBytes
142 interfaces:
143 - name: xe0
144 vpci: "0000:00:11.0"
145 dedicated: "yes" # "yes"(passthrough), "no"(sriov with vlan tags), "yes:sriov"(sriovi, but exclusive and without vlan tag)
146 bandwidth: 10 Gbps
147 #mac_address: '20:33:45:56:77:44' #avoid this option if possible
148 - name: xe1
149 vpci: "0000:00:12.0"
150 dedicated: "yes"
151 bandwidth: 10 Gbps
152 #mac_address: '20:33:45:56:77:45' #avoid this option if possible
153 bridge-ifaces:
154 - name: mgmt0
155 vpci: "0000:00:09.0" # Optional
156 bandwidth: 1 Mbps # Optional, informative only
157 # mac_address: '20:33:45:56:77:46' #avoid this option if possible
158 # model: 'virtio' # ("virtio","e1000","ne2k_pci","pcnet","rtl8139") By default, it is automatically filled by libvirt
159 - name: ge0
160 vpci: "0000:00:10.0"
161 bandwidth: 1 Mbps
162 # mac_address: '20:33:45:56:77:47' #avoid this option if possible
163 # model: 'virtio' # ("virtio","e1000","ne2k_pci","pcnet","rtl8139") By default, it is automatically filled by libvirt
164 devices: # Optional, order determines device letter asignation (hda, hdb, ...)
165 - type: disk # "disk","cdrom","xml"
166 image: /path/to/imagefolder/SECOND-DISK.qcow2
167 # image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" }
168 # vpci: "0000:00:03.0" # Optional, not for disk or cdrom
169 - type: cdrom
170 image: /path/to/imagefolder/CDROM-IMAGE.qcow2
171 #image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" }
172 - type: xml
173 image: /path/to/imagefolder/ADDITIONAL-DISK.qcow2 # Optional, depending on the device type
174 image metadata: {"bus":"ide", "os_type":"windows", "use_incremental": "no" } # Optional, depending on the device type
175 vpci: "0000:00:03.0" # Optional, depending on the device type (not needed for disk or cdrom)
176 xml: ' xml text for XML described devices. Do not use single quotes inside
177 The following words, if found, will be replaced:
178 __file__ by image path, (image must be provided)
179 __format__ by qcow2 or raw (image must be provided)
180 __dev__ by device letter (b, c, d ...)
181 __vpci__ by vpci (vpci must be provided)
182 '
183 # Additional Virtual Machines can be included here
184