From 802a6c3c0f26327f014e097dc205f0916b91a8a0 Mon Sep 17 00:00:00 2001 From: Martin Borg Date: Fri, 30 Aug 2019 14:07:10 +0200 Subject: Example Use-cases: Update Enea VNF example - Replace bundle with VNF image and update onboarding/instantiation instructions - Add cloud-init configurations - Remove descriptions of how to navigate the uCPE manager GUI - Remove images that are incorrect Change-Id: I6e8d05ae37a360e6957648049b1469a439df6981 Signed-off-by: Martin Borg --- .../doc/enea_vnf_examples.xml | 252 ++++++++++++--------- 1 file changed, 141 insertions(+), 111 deletions(-) diff --git a/doc/book-enea-nfv-access-example-usecases/doc/enea_vnf_examples.xml b/doc/book-enea-nfv-access-example-usecases/doc/enea_vnf_examples.xml index 8f11107..3cc5a18 100644 --- a/doc/book-enea-nfv-access-example-usecases/doc/enea_vnf_examples.xml +++ b/doc/book-enea-nfv-access-example-usecases/doc/enea_vnf_examples.xml @@ -1,30 +1,40 @@ - Enea VNF Example Use-cases - - Enea NFV Access is a complete NFV Infrastructure (NFVI) platform - designed for deployment on white box uCPEs at the customer premise, and - optimized for common Virtual Customer Premises Equipment (vCPE) and SD-WAN - use cases. + Enea NFV Access VNF Example Use-cases
Prerequisites - The following file(s) are needed for this example use-case: - enea-nfv-access-vnf-qemux86-64.qcow2. This image is - provided with your release. + The following files are needed for this example use-case: + + FIXME: These filenames may need to be updated + + + + enea-nfv-access-vnf-qemux86-64.wic.qcow2 + + + + enea-vnf-testpmd-fwd.cfg + + + + enea-vnf-testpmd-term.cfg + +
TestPMD VNF - In this use-case, uCPE device 1 will run pktgen - (the DPDK application) and uCPE device 2 will onboard - and instantiate two VNFs. One VNF will run testpmd_fwd, - forwarding traffic, and the other will run testpmd_term - which will terminate traffic. + In this use-case, uCPE device 1 runs the pktgen DPDK application to + generate traffic and uCPE device 2 runs two Enea NFV Access VNFs. One VNF + runs the TestPMD DPDK application forwarding traffic, and the other runs + the TestPMD in order to terminate traffic. -
+ FIXME: New image needed + +
Enea TestPMD VNF Overview @@ -38,164 +48,183 @@
Use-case Setup - Configuring Network Interfaces on uCPE - devices: + Network Configuration: - Bind the host interfaces to the DPDK by selecting - uCPE device 1 first, then accessing - Configuration -> - OpenVSwitch -> Host - Interfaces -> Add. + Select uCPE device 1, access Configuration, + add the network interface that will be used and configure it for + DPDK. Note the PCI address of the interface, it will be used later + to run the pktgen application. - Select the network interface that will be used to connect to - the second uCPE device and configure it for the DPDK. + Select uCPE device 2, access Configuration, + add the network interface that will be used and configure it for + DPDK. - Select the Create button to send the - configuration to uCPE device 1. + Create an OVS bridge on uCPE device 2 and attach the DPDK + interface. + + Onboarding the VNF: + + Onboard the Enea NFV Access VNF by filling the required fields + with the following values: + + - Repeat these same steps on uCPE device - 2. + VM Image File: Provide the + path to the Enea NFV Access VNF qcow2 image. - Click the Add button from the Bridges - tab. + Memory in MB: 2048 - Create an Open vSwitch bridge (ovsbr0) on - uCPE device 1 that uses one DPDK interface, by - selecting uCPE device 1, then: - Configuration ->OpenVSwitch - ->Bridges. + Num of CPUs: 2 - - Onboarding the VNF: + + Storage in GB: 10 + - - Select VNF - ->Descriptor -> - On-board. + Interfaces: Add 1 + interface. - Select the VM Image radio button. + Cloud-init Datasource: + NoCloud - Provide the path to the qcow image by selecting - Browse from the VM image file - option. + Cloud-init Disk Type: + disk + + Instantiating the VNFs: + + - Fill the required fields below and press - Onboard: + Instantiate the Enea NFV Access TestPMD forwarding VNF on uCPE + Device 2 by filling the required fields with the following + values: - Memory in MB: 1024 + Name: testpmd_fwd - Nr. of CPUs: 1 + VNF Type: Select Enea NFV + Access VNF. - Storage in GB: 10 + uCPE Device: Select uCPE + device 2. - - - - Instantiating two VNFs on uCPE device - 2: + + Cloud Init File: Provide + the path to the Enea VNF TestPMD forwarding cloud-init + file. + - - - Select uCPE device 2, then access VNF -> - Instances -> Add. + + Interfaces: Set the + interface type to DPDK and select the OVS + bridge created above. + + - Fill-in the required fields and click - Create. - + Instantiate the Enea NFV Access TestPMD termination VNF on + uCPE Device 2 by filling the required fields with the following + values: - - Configure VNF 1 to forward traffic. - + + + Name: testpmd_term + - - Configure VNF 2 to terminate traffic. - + + VNF Type: Select Enea NFV + Access VNF. + - - Add Open vSwitch flows to control this traffic: + + uCPE Device: Select uCPE + device 2. + -
- Configuring the FWD flow + + Cloud Init File: Provide + the path to the Enea VNF TestPMD termination cloud-init + file. + - - - - - -
+ + Interfaces: Set the + interface type to DPDK and select the OVS + bridge created above. + +
+ +
-
- Configuring the TERM flow + Creating OVS flow rules: - - - - - -
- + Select uCPE device 2, access Configuration, + open the OVS bridge and add two flow rules: + - Start pktgen on uCPE device 1. Connect to the device by - selecting it first, then access SSH -> - user (root) and perform the following: - - cd /usr/share/apps/pktgen/ -./pktgen -c 0x7 -n 4 --proc-type auto --socket-mem 256 -w 0000:05:00.3 -- \ --P -m "[1:2].0" -Pktgen:/> start 0 + Source: DPDK interface, Target: testpmd_fwd + - - The PCI address <0000:05:00.3> used in this example - varies depending on the uCPE device. To determine the exact PCI - address used, look in the uCPE device specific Network - configuration. - + + Source: testpmd_fwd, Target: testpmd_term - +
Testing the Use-case - Connect to the forwarder VNF in order to check the traffic - statistics, by selecting the uCPE device first, then accessing - SSH -> user (root): + + + SSH to uCPE device 1 (Username: root) and start the pktgen + application: + + cd /usr/share/apps/pktgen/ +./pktgen -c 0x7 -n 4 --proc-type auto --socket-mem 256 -w 0000:01:00.0 -- \ + -P -m "[1:2].0" + +Pktgen:/> start 0 + + + Replace 0000:01:00.0 with the actual PCI address of the network + interface used on uCPE device 1. + - Virsh list -Virsh console 1 -# Qemux86-64 login: root + SSH to uCPE device 2 and connect to the TestPMD forwarding VNF + console: + + virsh list +virsh console <id of testpmd fwd> + + Check the TestPMD traffic forwarding statistics: + + # qemux86-64 login: root tail -f /var/log/testpmd-out
@@ -207,7 +236,8 @@ tail -f /var/log/testpmd-out fileref="images/connection_information.png" scale="70" /> -
+
+
-- cgit v1.2.3-54-g00ecf