diff options
Diffstat (limited to 'doc/book-enea-nfv-access-getting-started/doc/device_configuration_and_provisioning.xml')
-rw-r--r-- | doc/book-enea-nfv-access-getting-started/doc/device_configuration_and_provisioning.xml | 765 |
1 files changed, 0 insertions, 765 deletions
diff --git a/doc/book-enea-nfv-access-getting-started/doc/device_configuration_and_provisioning.xml b/doc/book-enea-nfv-access-getting-started/doc/device_configuration_and_provisioning.xml deleted file mode 100644 index a1ebf64..0000000 --- a/doc/book-enea-nfv-access-getting-started/doc/device_configuration_and_provisioning.xml +++ /dev/null | |||
@@ -1,765 +0,0 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <chapter id="configuration_provision"> | ||
3 | <title>Device Configuration and Provisioning</title> | ||
4 | |||
5 | <section id="man_config"> | ||
6 | <title>Manual Configuration</title> | ||
7 | |||
8 | <para>This section describes how to connect to an instance of NFV Access | ||
9 | installed on a specific uCPE device, and how to setup the virtual | ||
10 | infrastructure manually.</para> | ||
11 | |||
12 | <para><emphasis role="bold">How to add a uCPE device to the management | ||
13 | system </emphasis></para> | ||
14 | |||
15 | <para>Add the uCPE device running the NFV Access Run Time Platform to the | ||
16 | management system: <literal>Devices -> Manage -> Add</literal>. Supply | ||
17 | information about the uCPE device, and set the parameters that will be used | ||
18 | to connect to it.</para> | ||
19 | |||
20 | <para>The relevant parameters are:</para> | ||
21 | |||
22 | <itemizedlist> | ||
23 | <listitem> | ||
24 | <para>Type. The type of device to be added, i.e <literal>Enea | ||
25 | universal uCPE</literal>.</para> | ||
26 | </listitem> | ||
27 | </itemizedlist> | ||
28 | |||
29 | <itemizedlist> | ||
30 | <listitem> | ||
31 | <para>Name. The name by which the device is referred to in the uCPE | ||
32 | Manager.</para> | ||
33 | </listitem> | ||
34 | </itemizedlist> | ||
35 | |||
36 | <itemizedlist> | ||
37 | <listitem> | ||
38 | <para>IP Address. IP address of the device. If a device is installed | ||
39 | under a local/private network and not directly visible to the uCPE | ||
40 | Manager machine, the Gateway IP of the private network must be | ||
41 | used.</para> | ||
42 | </listitem> | ||
43 | </itemizedlist> | ||
44 | |||
45 | <itemizedlist> | ||
46 | <listitem> | ||
47 | <para>SSH Port. The NETCONF Port used for communications. This is a | ||
48 | relevant parameter if the standard NETCONF SSH (i.e. not Call-Home) is | ||
49 | being used. Default is set to 830.</para> | ||
50 | </listitem> | ||
51 | </itemizedlist> | ||
52 | |||
53 | <itemizedlist> | ||
54 | <listitem> | ||
55 | <para>SSH User Name. The user name for SSH connectivity. Default user | ||
56 | is <literal>root</literal>.</para> | ||
57 | </listitem> | ||
58 | </itemizedlist> | ||
59 | |||
60 | <itemizedlist> | ||
61 | <listitem> | ||
62 | <para>SSH Password. Leave this blank.</para> | ||
63 | </listitem> | ||
64 | </itemizedlist> | ||
65 | |||
66 | <itemizedlist> | ||
67 | <listitem> | ||
68 | <para>Device Calls Home. This checkbox indicates the direction of | ||
69 | device communications. In the Manual Configuration, leave this box | ||
70 | blank. For more info about how to add a device please refer to <link | ||
71 | linkend="adding_a_device">Zero Touch Provisioning, Adding a | ||
72 | Device</link>.</para> | ||
73 | </listitem> | ||
74 | </itemizedlist> | ||
75 | |||
76 | <itemizedlist> | ||
77 | <listitem> | ||
78 | <para>Device ID. The unique instance ID of the device. This is what | ||
79 | links a device to its day-0 configuration (stored in the offline | ||
80 | configuration system). It is a required field if you want to perform | ||
81 | Zero-Touch Provisioning.</para> | ||
82 | </listitem> | ||
83 | </itemizedlist> | ||
84 | </section> | ||
85 | |||
86 | <section id="host_int_net_config"> | ||
87 | <title>Host Interfaces and Network Configuration</title> | ||
88 | |||
89 | <para>The uCPE Manager can list network interfaces found on a device by | ||
90 | selecting: <literal>Device</literal> -> | ||
91 | <literal>Configuration</literal> -> <literal>OpenVSwitch | ||
92 | </literal>-> <literal>Host Interface Caps</literal>:</para> | ||
93 | |||
94 | <figure> | ||
95 | <title>Host Interface Caps</title> | ||
96 | |||
97 | <mediaobject> | ||
98 | <imageobject> | ||
99 | <imagedata align="center" fileref="images/host_interface_caps.png" | ||
100 | scale="55" /> | ||
101 | </imageobject> | ||
102 | </mediaobject> | ||
103 | </figure> | ||
104 | |||
105 | <para>Network interfaces can be set in three modes: DPDK, SR-IOV and | ||
106 | PCI-Passthrough.</para> | ||
107 | |||
108 | <section id="dpdk_interface"> | ||
109 | <title>DPDK Interface Type</title> | ||
110 | |||
111 | <para>Configuring a physical interface in DPDK mode will require a | ||
112 | DPDK-based application (e.g. OVS-DPDK) in order to access and use the | ||
113 | interface. An interface set as DPDK can be attached to an OVS-DPDK | ||
114 | bridge. Select the uCPE device, then from the top toolbar select: | ||
115 | <literal>Configuration</literal> -><literal> OpenVSwitch | ||
116 | </literal>-> <literal>Host Interfaces</literal> -><literal> | ||
117 | Add</literal>:</para> | ||
118 | |||
119 | <figure> | ||
120 | <title>DPDK Host Interface</title> | ||
121 | |||
122 | <mediaobject> | ||
123 | <imageobject> | ||
124 | <imagedata align="center" fileref="images/dpdk_interface_type.png" | ||
125 | scale="90" /> | ||
126 | </imageobject> | ||
127 | </mediaobject> | ||
128 | </figure> | ||
129 | |||
130 | <para>For DPDK mode, the user must set following fields:</para> | ||
131 | |||
132 | <itemizedlist> | ||
133 | <listitem> | ||
134 | <para>Source: PCI address of the physical interface</para> | ||
135 | </listitem> | ||
136 | |||
137 | <listitem> | ||
138 | <para>Type: dpdk</para> | ||
139 | </listitem> | ||
140 | |||
141 | <listitem> | ||
142 | <para>Networking-type: dpdk</para> | ||
143 | </listitem> | ||
144 | |||
145 | <listitem> | ||
146 | <para>Dpdk-type: kernel module that allow user space access of | ||
147 | physical interface</para> | ||
148 | </listitem> | ||
149 | </itemizedlist> | ||
150 | |||
151 | <para>Create an OpenVSwitch bridge (<literal>ovsbr0</literal>) on the | ||
152 | device that uses a DPDK interface, by selecting the uCPE device, then | ||
153 | from the top toolbar selecting: <literal>Configuration</literal>-> | ||
154 | <literal>OpenVSwitch</literal> -> <literal>Bridges</literal> -> | ||
155 | <literal>Add</literal>:</para> | ||
156 | |||
157 | <figure> | ||
158 | <title>OVS bridge</title> | ||
159 | |||
160 | <mediaobject> | ||
161 | <imageobject> | ||
162 | <imagedata align="center" fileref="images/ovs_bridge.png" | ||
163 | scale="95" /> | ||
164 | </imageobject> | ||
165 | </mediaobject> | ||
166 | </figure> | ||
167 | </section> | ||
168 | |||
169 | <section id="sriov_interface_type"> | ||
170 | <title>SR-IOV Interface Type</title> | ||
171 | |||
172 | <para>SR-IOV mode will create a number of virtual functions on host that | ||
173 | can be used to route traffic to VMs. Select the uCPE device, then from | ||
174 | the top toolbar select: <literal>Configuration</literal> -><literal> | ||
175 | OpenVSwitch </literal>-> <literal>Host Interfaces | ||
176 | </literal>-><literal> Add</literal>:</para> | ||
177 | |||
178 | <para>For SR-IOV mode, the user must set following fields:</para> | ||
179 | |||
180 | <itemizedlist> | ||
181 | <listitem> | ||
182 | <para>Source: PCI address of the physical interface</para> | ||
183 | </listitem> | ||
184 | |||
185 | <listitem> | ||
186 | <para>Type: sr-iov</para> | ||
187 | </listitem> | ||
188 | |||
189 | <listitem> | ||
190 | <para>Networking-type: srIov</para> | ||
191 | </listitem> | ||
192 | |||
193 | <listitem> | ||
194 | <para>sriov-mode: adapter-pool</para> | ||
195 | </listitem> | ||
196 | |||
197 | <listitem> | ||
198 | <para>sriov-num-vfs: the number of virtual functions to | ||
199 | create</para> | ||
200 | </listitem> | ||
201 | </itemizedlist> | ||
202 | |||
203 | <figure> | ||
204 | <title>SR-IOV Interface Type</title> | ||
205 | |||
206 | <mediaobject> | ||
207 | <imageobject> | ||
208 | <imagedata align="center" | ||
209 | fileref="images/sriov_interface_type.png" scale="90" /> | ||
210 | </imageobject> | ||
211 | </mediaobject> | ||
212 | </figure> | ||
213 | </section> | ||
214 | |||
215 | <section id="pci_interface_type"> | ||
216 | <title>PCI Passthrough Interface Type</title> | ||
217 | |||
218 | <para>For PCI Passthrough the user does not have to configure a physical | ||
219 | interface, instead simply select the PCI address and connect it to a | ||
220 | virtual port at the VNF instantiation step.</para> | ||
221 | </section> | ||
222 | </section> | ||
223 | |||
224 | <section id="zero_touch_prov"> | ||
225 | <title>Zero Touch Provisioning</title> | ||
226 | |||
227 | <para>Zero-Touch Provisioning (ZTP) is an alternative to Manual | ||
228 | configuration. ZTP refers to the process by which, when a device starts up | ||
229 | for the first time, its initial configuration is pushed down by an | ||
230 | external management system, so that it is setup for proper operation | ||
231 | without additional manual intervention by an operator.</para> | ||
232 | |||
233 | <para>A variety of operations can occur as part of ZTP such as initial | ||
234 | device setup, configuration of managed objects, etc. The goal is to set up | ||
235 | a device to the maximum possible extent without forcing an operator to be | ||
236 | physically present (initially) to manage the device.</para> | ||
237 | |||
238 | <para>In order to create a static configuration supporting ZTP, the uCPE | ||
239 | Manager user needs to identify the <literal>Device ID</literal> of the | ||
240 | machine running NFV Access.</para> | ||
241 | |||
242 | <para>During the automatic installation process when the | ||
243 | <literal>Automatic install</literal> step is reached, enter the option | ||
244 | menu <literal>Customize kernel parameters</literal> and set the | ||
245 | <literal>uCPE Manager IP address</literal>. Please check <xref | ||
246 | linkend="install_ena_stick" />, for how to set the uCPE Manager IP address | ||
247 | at boot time. The Device ID will be listed in the installer under the | ||
248 | <literal>Customize kernel parameters</literal> menu.</para> | ||
249 | |||
250 | <para>With the address parameter set, run | ||
251 | <literal>list_deviceID.sh</literal> after NFV Access is installed and | ||
252 | booted, to get the device ID of the uCPE device.</para> | ||
253 | |||
254 | <note> | ||
255 | <para>It is possible to let NFV Access know the uCPE Manager IP address | ||
256 | at run-time by setting <literal>vcpemgr=<IP></literal> as a kernel | ||
257 | boot parameter in the grub configuration file. Reboot is required after | ||
258 | this update.</para> | ||
259 | |||
260 | <para>This step needs to be done each time the uCPE Manager host changes | ||
261 | its IP address.</para> | ||
262 | </note> | ||
263 | |||
264 | <para>An offline configuration can be prepared in advance for the uCPE | ||
265 | Manager to setup the infrastructure on the device.</para> | ||
266 | |||
267 | <section id="adding_a_device"> | ||
268 | <title>Adding a Device</title> | ||
269 | |||
270 | <para>The uCPE Manager must be configured to bring the uCPE device under | ||
271 | management. This is done by selecting <literal>Device Calls | ||
272 | Home</literal> checkbox when adding a device. When Device Calls Home | ||
273 | checkbox is checked, the device will initiate a connection by opening a | ||
274 | socket to the uCPE Manager for NETCONF traffic (over SSH), while the | ||
275 | uCPE Manager waits for device connection.</para> | ||
276 | |||
277 | <para>For more info about how to add a device please refer to <link | ||
278 | linkend="man_config">Manual Configuration</link>.</para> | ||
279 | </section> | ||
280 | |||
281 | <section id="offline_configuration"> | ||
282 | <title>Offline Configuration</title> | ||
283 | |||
284 | <para>The Offline Configuration subsystem is used to pre-populate a | ||
285 | configuration for a device that will be brought under management at a | ||
286 | future point in time. When creating an offline configuration store, an | ||
287 | optional<literal> Device ID</literal> can be specified - this ID | ||
288 | uniquely identifies the device to be initialized.</para> | ||
289 | |||
290 | <para>Use the GUI (shown below) launched by the <literal>Applications | ||
291 | -> Offline Config -> Add</literal> menu:</para> | ||
292 | |||
293 | <figure> | ||
294 | <title>Onboard New VNF</title> | ||
295 | |||
296 | <mediaobject> | ||
297 | <imageobject> | ||
298 | <imagedata align="center" fileref="images/offline_config.png" | ||
299 | scale="80" /> | ||
300 | </imageobject> | ||
301 | </mediaobject> | ||
302 | </figure> | ||
303 | |||
304 | <para>Specify the exact value of the <literal>Device ID</literal> in the | ||
305 | required field. This will tag the device needed for the initial | ||
306 | configuration provided by the offline configuration store. Choose | ||
307 | <literal>Merge</literal> as the Default Upload Method if you do not want | ||
308 | any boot configuration set on the device, to be wiped out. Selecting | ||
309 | <literal>Replace</literal> will set the entire device configuration to | ||
310 | match values in the offline configuration.</para> | ||
311 | |||
312 | <para>After creating the Offline Config Store, access the device through | ||
313 | <literal> Applications -> offline config -> Config App</literal> | ||
314 | and provision it with the required initial configuration. This operation | ||
315 | mirrors what happens during regular offline configuration.</para> | ||
316 | |||
317 | <para>Now that the store has been provisioned successfully, it is ready | ||
318 | to send this configuration to the device when it first comes | ||
319 | online.</para> | ||
320 | </section> | ||
321 | |||
322 | <section id="initial_communications"> | ||
323 | <title>Initial Communications</title> | ||
324 | |||
325 | <para>There are two possible paths to this process, depending upon | ||
326 | whether or not NETCONF Call-Home functionality is used:</para> | ||
327 | |||
328 | <orderedlist> | ||
329 | <listitem> | ||
330 | <para>If Call-Home is not enabled/supported, the uCPE Manager | ||
331 | creates a SSH session to the device over the port configured through | ||
332 | the <literal>Add Device </literal> process (default 830). It then | ||
333 | initiates NETCONF communications over this session.</para> | ||
334 | </listitem> | ||
335 | |||
336 | <listitem> | ||
337 | <para>If the device uses Call-Home, it creates a socket connection | ||
338 | to port 4334 on the management system which runs the uCPE Manager. | ||
339 | The uCPE Manager then creates a SSH session over this socket and | ||
340 | initiates NETCONF communications as a client.</para> | ||
341 | </listitem> | ||
342 | </orderedlist> | ||
343 | |||
344 | <para>Once communications with the device have been established, the | ||
345 | Device Manager will try and connect to it.</para> | ||
346 | </section> | ||
347 | </section> | ||
348 | |||
349 | <section id="vnf_management"> | ||
350 | <title>VNF Management</title> | ||
351 | |||
352 | <para>As the acting vnf manager, the uCPE Manager is responsible for | ||
353 | handling the life-cycles of VNFs that are instantiated and run on the | ||
354 | various uCPE devices. The vnf manager module is written so as to be able | ||
355 | to manage multiple VNF types. Along with it is provided a generic | ||
356 | infrastructure to allow the end-user to introduce new VNF types | ||
357 | dynamically into the system. This allows for third-party VNFs to be added | ||
358 | over time to an existing network infrastructure without having to perform | ||
359 | an expensive upgrade of the vnf manager itself.</para> | ||
360 | |||
361 | <para>The process of VNF Onboarding consists of providing the system with | ||
362 | sufficient information and resources related to the VNF such that it can | ||
363 | instantiate a flavour of the VNF on the uCPE device, configure and scale | ||
364 | it as appropriate, heal and upgrade it when necessary and tear it down at | ||
365 | the right moment.</para> | ||
366 | |||
367 | <para>The vnf manager subsystem in the uCPE Manager inserts a menu item in | ||
368 | the toolbar, called <literal>VNF</literal> as shown in the screen-shot | ||
369 | below.</para> | ||
370 | |||
371 | <figure> | ||
372 | <title>VNF Management</title> | ||
373 | |||
374 | <mediaobject> | ||
375 | <imageobject> | ||
376 | <imagedata align="center" fileref="images/vnf_management.png" | ||
377 | scale="80" /> | ||
378 | </imageobject> | ||
379 | </mediaobject> | ||
380 | </figure> | ||
381 | |||
382 | <para>Selecting this menu item gives you the following options:</para> | ||
383 | |||
384 | <itemizedlist> | ||
385 | <listitem> | ||
386 | <para><literal>Descriptors</literal>: Choosing this option lets you | ||
387 | manage the VNF Descriptors catalog. The vnf manager maintains a | ||
388 | catalog of all VNFs that can be instantiated and managed by the | ||
389 | system. Before you can use a new VNF, you need to onboard it into the | ||
390 | catalog.</para> | ||
391 | </listitem> | ||
392 | |||
393 | <listitem> | ||
394 | <para><literal>Instances</literal>: Choosing this option lets you | ||
395 | instantiate (or destroy) VNFs on a given uCPE device.</para> | ||
396 | </listitem> | ||
397 | |||
398 | <listitem> | ||
399 | <para><literal>Events</literal>: Choosing this option displays all the | ||
400 | events that are related to VNF lifecycle management. Whenever a VNF | ||
401 | state changes (i.e. it is | ||
402 | created/destroyed/stopped/started/paused/resumed), a state change | ||
403 | event is generated in the uCPE Manager. The screen shown when this | ||
404 | option is chosen displays all events in the system, filtered to show | ||
405 | only VNF state change notifications.</para> | ||
406 | </listitem> | ||
407 | </itemizedlist> | ||
408 | |||
409 | <section id="onboarding_a_vnf"> | ||
410 | <title>Onboarding a VNF</title> | ||
411 | |||
412 | <para>The VNF descriptor catalog table provides a button that allows you | ||
413 | to onboard a new (third-party) VNF into the catalog.</para> | ||
414 | |||
415 | <figure> | ||
416 | <title>Onboard New VNF</title> | ||
417 | |||
418 | <mediaobject> | ||
419 | <imageobject> | ||
420 | <imagedata align="center" | ||
421 | fileref="images/onboarding_a_new_vnf.png" scale="70" /> | ||
422 | </imageobject> | ||
423 | </mediaobject> | ||
424 | </figure> | ||
425 | |||
426 | <section id="onboarding_a_vnf_wizard"> | ||
427 | <title>Onboarding a VNF VM Image using the Onboarding Wizard</title> | ||
428 | |||
429 | <para><emphasis role="bold">How to onboard a VNF into the uCPE Manager | ||
430 | using the Onboarding Wizard</emphasis></para> | ||
431 | |||
432 | <orderedlist> | ||
433 | <listitem> | ||
434 | <para>Make sure the uCPE device is added and placed on the map in | ||
435 | the uCPE Manager.</para> | ||
436 | </listitem> | ||
437 | |||
438 | <listitem> | ||
439 | <para>Select from the top toolbar <literal>VNF</literal> -> | ||
440 | <literal>Descriptors.</literal></para> | ||
441 | </listitem> | ||
442 | |||
443 | <listitem> | ||
444 | <para>Click the <literal>On-board</literal> button.</para> | ||
445 | </listitem> | ||
446 | |||
447 | <listitem> | ||
448 | <para>When prompted by the following UI, make sure the <literal>VM | ||
449 | Image</literal> radio button is selected.</para> | ||
450 | </listitem> | ||
451 | </orderedlist> | ||
452 | |||
453 | <para>If you click the <literal>VM Image</literal> radio button at the | ||
454 | top of the onboarding screen, you will get a pop-up containing fields | ||
455 | which you can fill, suppling the necessary information about the VNF. | ||
456 | After providing the information and pressing the onboard button, the | ||
457 | uCPE Manager will create the VNF package and onboard it.</para> | ||
458 | |||
459 | <figure> | ||
460 | <title>Onboard a VNF using the Wizard</title> | ||
461 | |||
462 | <mediaobject> | ||
463 | <imageobject> | ||
464 | <imagedata align="center" | ||
465 | fileref="images/onboard_a_vnf_image.png" scale="70" /> | ||
466 | </imageobject> | ||
467 | </mediaobject> | ||
468 | </figure> | ||
469 | |||
470 | <para><emphasis role="bold">Main fields</emphasis></para> | ||
471 | |||
472 | <itemizedlist> | ||
473 | <listitem> | ||
474 | <para><emphasis role="bold">VM Image File.</emphasis> This is the | ||
475 | Virtual Machine image file for the VNF itself. Typically, it is a | ||
476 | QCOW image. Press <literal>Choose File</literal> and select the | ||
477 | image to be uploaded.</para> | ||
478 | </listitem> | ||
479 | |||
480 | <listitem> | ||
481 | <para><emphasis role="bold">Image Format</emphasis>. Select the | ||
482 | format which matches the image file.</para> | ||
483 | </listitem> | ||
484 | |||
485 | <listitem> | ||
486 | <para><emphasis role="bold">VNF Type Name.</emphasis> This is the | ||
487 | name that will be used to identify this VNF. It will be shown in | ||
488 | the VNF tables.</para> | ||
489 | </listitem> | ||
490 | |||
491 | <listitem> | ||
492 | <para><emphasis role="bold">Description.</emphasis> This field | ||
493 | contains any description you want to provide. It is only displayed | ||
494 | in the GUI tables in the uCPE Manager.</para> | ||
495 | </listitem> | ||
496 | |||
497 | <listitem> | ||
498 | <para><emphasis role="bold">Version</emphasis>. This is the | ||
499 | version of the current VNF that you are hosting. It's used to | ||
500 | distinguish this VNF from other versions of the same type.</para> | ||
501 | </listitem> | ||
502 | |||
503 | <listitem> | ||
504 | <para><emphasis role="bold">Memory in MB.</emphasis> This is the | ||
505 | amount of memory (in megabytes) that will be provided to this type | ||
506 | of VNF when it is instantiated. To determine the value for this | ||
507 | field, consult the VNF vendor.</para> | ||
508 | </listitem> | ||
509 | |||
510 | <listitem> | ||
511 | <para><emphasis role="bold">Num of CPUs.</emphasis> The number of | ||
512 | CPUs that will be dedicated to an instance of this VNF when | ||
513 | created. To determine the value for this field, consult the VNF | ||
514 | vendor.</para> | ||
515 | </listitem> | ||
516 | |||
517 | <listitem> | ||
518 | <para><emphasis role="bold">Storage in GB.</emphasis> How much | ||
519 | disk space to provide an instance of this VNF. To determine the | ||
520 | value for this field, consult the VNF vendor.</para> | ||
521 | </listitem> | ||
522 | </itemizedlist> | ||
523 | |||
524 | <para><emphasis role="bold">Interfaces Tab</emphasis></para> | ||
525 | |||
526 | <figure> | ||
527 | <title>Interfaces Table</title> | ||
528 | |||
529 | <mediaobject> | ||
530 | <imageobject> | ||
531 | <imagedata align="center" fileref="images/interfaces_table.png" | ||
532 | scale="70" /> | ||
533 | </imageobject> | ||
534 | </mediaobject> | ||
535 | </figure> | ||
536 | |||
537 | <para>Click on the <literal>Interfaces</literal> tab to show the | ||
538 | Interfaces table.</para> | ||
539 | |||
540 | <para>This table will contain the interfaces required by this VNF to | ||
541 | be configured, when creating an instance. Consult the VNF vendor to | ||
542 | determine which and how many are required. Each interface requires a | ||
543 | name, and optionally a description, used by the uCPE Manager | ||
544 | only.</para> | ||
545 | |||
546 | <para><emphasis role="bold">Cloud Init Tab</emphasis></para> | ||
547 | |||
548 | <para>Click the <literal>Clout Init</literal> tab to provide the | ||
549 | Clout-Init configuration.</para> | ||
550 | |||
551 | <figure> | ||
552 | <title>Cloud-Init Tab</title> | ||
553 | |||
554 | <mediaobject> | ||
555 | <imageobject> | ||
556 | <imagedata align="center" fileref="images/cloud_init_tab.png" | ||
557 | scale="70" /> | ||
558 | </imageobject> | ||
559 | </mediaobject> | ||
560 | </figure> | ||
561 | |||
562 | <para>As shown in the picture above, there are three fields that need | ||
563 | to be populated:</para> | ||
564 | |||
565 | <orderedlist> | ||
566 | <listitem> | ||
567 | <para><emphasis role="bold">Cloud-Init | ||
568 | Datasource</emphasis></para> | ||
569 | |||
570 | <para>To onboard the VNF you must specify the<literal> Cloud-Init | ||
571 | Datasource</literal> that the VNF uses. You can get this | ||
572 | information from the VNF Vendor. Choose one of the following | ||
573 | methods to specify the datasource:</para> | ||
574 | |||
575 | <itemizedlist> | ||
576 | <listitem> | ||
577 | <para><emphasis role="bold">None</emphasis>. If there is no | ||
578 | datasource.</para> | ||
579 | </listitem> | ||
580 | |||
581 | <listitem> | ||
582 | <para><emphasis role="bold">ConfigDrive</emphasis>. This | ||
583 | method allows you to provide any number of content-data files | ||
584 | containing Cloud-Init data.</para> | ||
585 | </listitem> | ||
586 | |||
587 | <listitem> | ||
588 | <para><emphasis role="bold">NoCloud</emphasis>. This is a | ||
589 | simpler method that uses only one cloud init file | ||
590 | (User-Data).</para> | ||
591 | </listitem> | ||
592 | |||
593 | <listitem> | ||
594 | <para><emphasis role="bold">ISO</emphasis>. Pre-cooked | ||
595 | cloud-init image. This image must be created by the user | ||
596 | according to VNF requirements.</para> | ||
597 | </listitem> | ||
598 | </itemizedlist> | ||
599 | </listitem> | ||
600 | |||
601 | <listitem> | ||
602 | <para><emphasis role="bold">Cloud-Init Disk Type</emphasis></para> | ||
603 | |||
604 | <para>The <literal>Cloud-Init Disk Type </literal>field must be | ||
605 | set to either <literal>Disk</literal>, or | ||
606 | <literal>CD-ROM</literal>, depending on what the VNF requires. You | ||
607 | can get this information from the VNF Vendor.</para> | ||
608 | </listitem> | ||
609 | |||
610 | <listitem> | ||
611 | <para><emphasis role="bold">Content Files Table</emphasis></para> | ||
612 | |||
613 | <para>The <literal>Content Files Table </literal>is ONLY used if | ||
614 | you choose <literal>ConfigDrive</literal> as the Cloud-Init | ||
615 | Datasource. For each content file added, you must provide a | ||
616 | <literal>Path</literal>. When a user uses the uCPE Manager to | ||
617 | create an instance of one of these VNFs, they will be prompted to | ||
618 | provide a data file for each entry in this table. Each type of VNF | ||
619 | will require different cloud-init files, e.g.: a license | ||
620 | file.</para> | ||
621 | </listitem> | ||
622 | </orderedlist> | ||
623 | |||
624 | <figure> | ||
625 | <title>Content Files Table example</title> | ||
626 | |||
627 | <mediaobject> | ||
628 | <imageobject> | ||
629 | <imagedata align="center" | ||
630 | fileref="images/content_files_table.png" scale="70" /> | ||
631 | </imageobject> | ||
632 | </mediaobject> | ||
633 | </figure> | ||
634 | |||
635 | <para>Consult with the VNF vendor to determine what is required for | ||
636 | the VNF you are onboarding.</para> | ||
637 | |||
638 | <para><emphasis role="bold">Properties Tab</emphasis></para> | ||
639 | |||
640 | <para>In this table, you can enter values for properties that will be | ||
641 | used during instantiation of the VNF. The values will augment the | ||
642 | default values in the Domain.XML file used by libvirt/virsh (running | ||
643 | in NFV Access) when creating an instance of the VNF. These property | ||
644 | names are well known to the uCPE NFV Access software, and more will be | ||
645 | added in future versions. You will need to consult with the VNF Vendor | ||
646 | or ENEA support for values needed by specific VNFs.</para> | ||
647 | |||
648 | <figure> | ||
649 | <title>Properties Tab</title> | ||
650 | |||
651 | <mediaobject> | ||
652 | <imageobject> | ||
653 | <imagedata align="center" fileref="images/properties_tab.png" | ||
654 | scale="70" /> | ||
655 | </imageobject> | ||
656 | </mediaobject> | ||
657 | </figure> | ||
658 | |||
659 | <para><emphasis role="bold">Property Values</emphasis></para> | ||
660 | |||
661 | <para><literal>numHugePages</literal> defines the number of huge | ||
662 | memory pages the VNF uses (for DPDK).</para> | ||
663 | </section> | ||
664 | </section> | ||
665 | |||
666 | <section id="instantiating_a_vnf"> | ||
667 | <title>Instantiating a VNF</title> | ||
668 | |||
669 | <para>Once the VNF has been onboarded, you can instantiate a VNF on a | ||
670 | specific uCPE device.</para> | ||
671 | |||
672 | <para><emphasis role="bold">How to instantiate a VNF using the | ||
673 | Wizard</emphasis></para> | ||
674 | |||
675 | <orderedlist> | ||
676 | <listitem> | ||
677 | <para>Make sure the uCPE device is added and placed on the map in | ||
678 | the uCPE Manager.</para> | ||
679 | </listitem> | ||
680 | |||
681 | <listitem> | ||
682 | <para>Make sure the VNF has been onboarded into the uCPE | ||
683 | Manager.</para> | ||
684 | </listitem> | ||
685 | |||
686 | <listitem> | ||
687 | <para>Select from the top toolbar <literal>VNF</literal> -> | ||
688 | <literal>Instances</literal></para> | ||
689 | </listitem> | ||
690 | |||
691 | <listitem> | ||
692 | <para>Click the <literal>Add</literal> button.</para> | ||
693 | </listitem> | ||
694 | |||
695 | <listitem> | ||
696 | <para>When prompted by the following UI, fill the required | ||
697 | fields.</para> | ||
698 | </listitem> | ||
699 | </orderedlist> | ||
700 | |||
701 | <figure> | ||
702 | <title>Instantiating a VNF</title> | ||
703 | |||
704 | <mediaobject> | ||
705 | <imageobject> | ||
706 | <imagedata align="center" fileref="images/instantiate_a_vnf.png" | ||
707 | scale="70" /> | ||
708 | </imageobject> | ||
709 | </mediaobject> | ||
710 | </figure> | ||
711 | |||
712 | <para>There are a number of parameters to be supplied before the VNF can | ||
713 | be instantiated:</para> | ||
714 | |||
715 | <itemizedlist> | ||
716 | <listitem> | ||
717 | <para><emphasis role="bold">Name</emphasis>. The name of the | ||
718 | VNF.</para> | ||
719 | </listitem> | ||
720 | |||
721 | <listitem> | ||
722 | <para><emphasis role="bold">VNF Type</emphasis>. The name of the | ||
723 | onboarded VNF. In this case <literal>VProbe</literal> VNF.</para> | ||
724 | </listitem> | ||
725 | |||
726 | <listitem> | ||
727 | <para><emphasis role="bold">Flavour</emphasis>. The flavour of VNF | ||
728 | (as specified in the descriptor) you would like to | ||
729 | instantiate.</para> | ||
730 | </listitem> | ||
731 | |||
732 | <listitem> | ||
733 | <para><emphasis role="bold">Device</emphasis>. The uCPE device on which | ||
734 | to instantiate a VNF, i.e. the uCPE device that will run this | ||
735 | VNF.</para> | ||
736 | </listitem> | ||
737 | |||
738 | <listitem> | ||
739 | <para><emphasis role="bold">Auto-start</emphasis>. If checked, the | ||
740 | VNF will be stopped and started when unreachable. When the uCPE Device reports that it has lost connection to the VNF, the uCPE Manager | ||
741 | will ask it to terminate the VM and then start it up again. If | ||
742 | unchecked, only a <literal>Disconnected</literal> notification will | ||
743 | appear in the uCPE Manager.</para> | ||
744 | </listitem> | ||
745 | </itemizedlist> | ||
746 | |||
747 | <para>Hitting the <literal>Create</literal> button will cause the VNF to | ||
748 | be instantiated and run on the specified uCPE device.</para> | ||
749 | |||
750 | <para>Selecting the<literal> VNF -> Events</literal> menu will show | ||
751 | that the VNF was created and a connection was established:</para> | ||
752 | |||
753 | <figure> | ||
754 | <title>VNF Events menu</title> | ||
755 | |||
756 | <mediaobject> | ||
757 | <imageobject> | ||
758 | <imagedata align="center" fileref="images/instantiate_a_vnf4.png" | ||
759 | scale="70" /> | ||
760 | </imageobject> | ||
761 | </mediaobject> | ||
762 | </figure> | ||
763 | </section> | ||
764 | </section> | ||
765 | </chapter> | ||