From 3a771d2bbea41011f5615eb3d94e6840ff0a49ec Mon Sep 17 00:00:00 2001 From: mrpa Date: Sun, 19 Apr 2020 18:38:46 +0200 Subject: Edited the AFTH User Guide Example Use Cases Appendix E (5) Getting Started Manual, including adding 2 new pictures, Removing 3. Change-Id: Ie8ac80572e438578c4c8552ebb776bc3cdec4e7c Signed-off-by: mrpa --- .../doc/automation_framework_test_harness.xml | 645 +++++++++++--------- .../doc/appendix_5.xml | 192 +++--- .../doc/getting_started_ucpe_manager.xml | 666 +++++++++------------ .../doc/images/edit_inter_config.png | Bin 13067 -> 37721 bytes .../doc/images/ovs_bridges_tab.png | Bin 0 -> 55326 bytes 5 files changed, 741 insertions(+), 762 deletions(-) create mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/ovs_bridges_tab.png diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml index b7de1af..cdf024c 100644 --- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml +++ b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml @@ -11,13 +11,25 @@ The /device folder contains Python scripts for adding uCPE device(s), receiving uCPE events' reports, removing a uCPE - device, and waiting for a uCPE device to connect to the uCPE - Manager. + device, waiting for a uCPE device to connect to the uCPE Manager, as well + as scripts for adding and removing an offline configuration store. The /network folder contains Python scripts for - binding or unbinding a network interface to/from a uCPE device (DPDK or + binding or unbinding a network interface to and from a uCPE device (DPDK or SR-IOV), creating or deleting an OVS network bridge, or dumping network - interface information about the available interfaces. + interface information about the available interfaces. Three of the scripts + mentioned here (binding, creating, deleting) are also applicable for an + Offline Configuration Store. + + + Commands within the network folder that include the option + -o allow the user to perform the action + in an offline configuration store alternative available for use at a + later setup time. All options contain either -n, -o or both. + One of them must always be provided, if both are provided, -o has + priority, and -n is thus ignored. + The /unittestSuite folder contains Python unit-test class and loader scripts for generating specific test cases for @@ -65,22 +77,24 @@ Usage: unittestSuite.py [options] Run selected unit-test suite against Enea uCPE Manager. Options: - --version show program's version number and exit - -h, --help show this help message and exit - -u USERNAME, --username=USERNAME - Enea uCPE Manager login username - -p PASSWORD, --password=PASSWORD - Enea uCPE Manager login password - -H HOST, --host=HOST Enea uCPE Manager host name or IP address - -n DEVICENAME, --deviceName=DEVICENAME - Name of vCPE device (Virtual Infrastructure Manager) - -s SUITEFILE, --suite=SUITEFILE - Test suite configuration file in JSON format - -d DESCRIPTION, --description=DESCRIPTION - Test suite description + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address + -n DEVICENAME, --deviceName=DEVICENAME + Name of vCPE device (Virtual Infrastructure Manager) + -s SUITEFILE, --suite=SUITEFILE + Test suite configuration file in JSON format + -d DESCRIPTION, --description=DESCRIPTION + Test suite description + -o OFFLINE, --offline=OFFLINE + Offline Configuration(ZTP) - Mandatory options: - -H/--host, -n/--deviceName, -s/--suiteFile, -d/--description + Mandatory options: + -H/--host, -n/--deviceName, -s/--suiteFile, -d/--description
@@ -319,188 +333,183 @@ NOTSET 0 scenario: $ python unittestSuite.py -u admin -p admin -H localhost -n intelc3850-2 -s -fortigateDeploy.json -d "Fortigate deployment scenario" - +fortigateDeploy.json -d "Fortigate deployment scenario" Setting the console logging level to DEBUG: consoleLoggingLevel = logging.DEBUG - Expected Output: 2019-03-07 18:03:20,791 - DEBUG: Started logging + Expected Output: + + 2020-04-15 07:58:40,668 - DEBUG: Started logging Running Fortigate deployment scenario... -test 001: Add VCPE Agent device (__main__.UnittestSuite) ... -2019-03-07 18:03:20,795 - INFO: Add uCPE device -2019-03-07 18:03:20,924 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:20,925 - DEBUG: Session token is: 876160c3-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:20,949 - DEBUG: Add new device 'intelc3850-2' to uCPE Manager host -2019-03-07 18:03:21,100 - INFO: Done -2019-03-07 18:03:21,133 - DEBUG: Logging out and exiting... -ok -test 002: Wait VCPE Agent device be up (__main__.UnittestSuite) ... -2019-03-07 18:03:21,133 - INFO: Wait uCPE device -2019-03-07 18:03:21,149 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:21,149 - DEBUG: Session token is: 8785b1a0-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:21,157 - DEBUG: Found device with name 'intelc3850-2' -2019-03-07 18:03:21,157 - DEBUG: Wait for device 'intelc3850-2' to connect -2019-03-07 18:03:29,356 - DEBUG: Status: Connected -2019-03-07 18:03:29,356 - INFO: Done -2019-03-07 18:03:29,365 - DEBUG: Logging out and exiting... +test 001: Wait VCPE Agent device be up (__main__.UnittestSuite) ... +2020-04-15 07:58:40,681 - INFO: Wait uCPE device +2020-04-15 07:58:40,722 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:58:40,723 - DEBUG: Session token is: 280028c0-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:58:40,746 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:58:40,747 - DEBUG: Wait for device 'intelc3850-2' to connect +2020-04-15 07:58:41,769 - DEBUG: HACK: sleep 30s more +2020-04-15 07:59:11,791 - DEBUG: HACK: continue +2020-04-15 07:59:11,792 - INFO: Status: Connected +2020-04-15 07:59:11,793 - INFO: Done +2020-04-15 07:59:11,827 - DEBUG: Logging out and exiting... ok -test 003: Bind lan NIC to DPDK (__main__.UnittestSuite) ... -2019-03-07 18:03:29,366 - INFO: Bind NIC -2019-03-07 18:03:29,406 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:29,406 - DEBUG: Session token is: 8c719cb0-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:29,415 - DEBUG: Found device with name 'intelc3850-2' -2019-03-07 18:03:29,415 - DEBUG: Bind NIC '0000:01:00.1' -2019-03-07 18:03:30,030 - INFO: Done -2019-03-07 18:03:30,067 - DEBUG: Logging out and exiting... +test 002: Bind lan NIC to DPDK (__main__.UnittestSuite) ... +2020-04-15 07:59:11,832 - INFO: Bind NIC +2020-04-15 07:59:11,868 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:11,870 - DEBUG: Session token is: 3a90a960-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:11,897 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:11,898 - DEBUG: Bind NIC 'eno6' to dpdk +2020-04-15 07:59:12,952 - INFO: Done +2020-04-15 07:59:12,983 - DEBUG: Logging out and exiting... ok -test 004: Bind wan NIC to DPDK (__main__.UnittestSuite) ... -2019-03-07 18:03:30,068 - INFO: Bind NIC -2019-03-07 18:03:30,086 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:30,087 - DEBUG: Session token is: 8cd95f32-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:30,095 - DEBUG: Found device with name 'intelc3850-2' -2019-03-07 18:03:30,096 - DEBUG: Bind NIC 'enp4s0f1' -2019-03-07 18:03:30,729 - INFO: Done -2019-03-07 18:03:30,767 - DEBUG: Logging out and exiting... +test 003: Bind wan NIC to DPDK (__main__.UnittestSuite) ... +2020-04-15 07:59:12,986 - INFO: Bind NIC +2020-04-15 07:59:13,023 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:13,025 - DEBUG: Session token is: 3b410da0-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:13,048 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:13,050 - DEBUG: Bind NIC 'eno8' to dpdk +2020-04-15 07:59:14,365 - INFO: Done +2020-04-15 07:59:14,392 - DEBUG: Logging out and exiting... ok -test 005: Creating network bridge LAN (__main__.UnittestSuite) ... -2019-03-07 18:03:30,768 - INFO: New OVS network bridge -2019-03-07 18:03:30,801 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:30,801 - DEBUG: Session token is: 8d454061-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:30,811 - DEBUG: Found device with name 'intelc3850-2' -2019-03-07 18:03:30,812 - DEBUG: Create new OVS network bridge 'lan_br' -2019-03-07 18:03:37,358 - INFO: Done -2019-03-07 18:03:37,402 - DEBUG: Logging out and exiting... +test 004: Creating network bridge LAN (__main__.UnittestSuite) ... +2020-04-15 07:59:14,395 - INFO: New OVS network bridge +2020-04-15 07:59:14,428 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:14,429 - DEBUG: Session token is: 3c174961-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:14,452 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:14,453 - DEBUG: Create new OVS network bridge 'lan_br' +2020-04-15 07:59:14,454 - DEBUG: Attaching interface 'eno6' to bridge 'lan_br' +2020-04-15 07:59:21,751 - INFO: Done +2020-04-15 07:59:21,779 - DEBUG: Logging out and exiting... ok -test 006: Creating network bridge WAN (__main__.UnittestSuite) ... -2019-03-07 18:03:37,402 - INFO: New OVS network bridge -2019-03-07 18:03:37,461 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:37,461 - DEBUG: Session token is: 913c4420-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:37,485 - DEBUG: Found device with name 'intelc3850-2' -2019-03-07 18:03:37,485 - DEBUG: Create new OVS network bridge 'wan_br' -2019-03-07 18:03:37,755 - INFO: Done -2019-03-07 18:03:37,792 - DEBUG: Logging out and exiting... +test 005: Creating network bridge WAN (__main__.UnittestSuite) ... +2020-04-15 07:59:21,782 - INFO: New OVS network bridge +2020-04-15 07:59:21,818 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:21,819 - DEBUG: Session token is: 407ec231-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:21,845 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:21,846 - DEBUG: Create new OVS network bridge 'wan_br' +2020-04-15 07:59:21,847 - DEBUG: Attaching interface 'eno8' to bridge 'wan_br' +2020-04-15 07:59:22,813 - INFO: Done +2020-04-15 07:59:22,845 - DEBUG: Logging out and exiting... ok -test 007: Onboarding Fortigate VNF (wizard API) (__main__.UnittestSuite) ... -2019-03-07 18:03:37,792 - INFO: Onboard wizard -2019-03-07 18:03:37,859 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:37,859 - DEBUG: Session token is: 91770330-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:37,860 - DEBUG: FTP file '../../vnf_bundles/fortios.qcow2' on host +test 006: Onboarding Fortigate VNF (wizard API) (__main__.UnittestSuite) ... +2020-04-15 07:59:22,849 - INFO: Onboard wizard +2020-04-15 07:59:22,885 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:22,886 - DEBUG: Session token is: 4121b8f1-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:22,890 - DEBUG: FTP file '../../vnf_image/fortios.qcow2' on host \ 'localhost', port '2021' -2019-03-07 18:03:38,027 - DEBUG: Onboard VNF raw: fortios.qcow2 -2019-03-07 18:03:41,701 - INFO: Done -2019-03-07 18:03:41,748 - DEBUG: Logging out and exiting... +2020-04-15 07:59:23,127 - DEBUG: Onboard VNF raw: fortios.qcow2 +2020-04-15 07:59:27,107 - INFO: Done +2020-04-15 07:59:27,140 - DEBUG: Logging out and exiting... ok -test 008: Instantiate Fortigate VNF (__main__.UnittestSuite) ... -2019-03-07 18:03:41,778 - INFO: Instantiate VNF -2019-03-07 18:03:41,813 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:41,815 - DEBUG: Session token is: 93d69e10-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:41,834 - DEBUG: Found device with name 'intelc3850-2' -2019-03-07 18:03:41,878 - DEBUG: Found VNF descriptor with name 'fortigateImage' -2019-03-07 18:03:41,888 - DEBUG: Encrypt string content: -cloudInit("vnf_config/fortigateImage/fortigateFW.conf") -2019-03-07 18:03:41,889 - DEBUG: Encrypt string content: -License("vnf_config/fortigateImage/fortigateLicense.lic") -2019-03-07 18:03:41,889 - DEBUG: Instantiate fortigateImage VNF on 'intelc3850-2' -2019-03-07 18:03:49,887 - INFO: Done -2019-03-07 18:03:49,921 - DEBUG: Logging out and exiting... +test 007: Instantiate Fortigate VNF (__main__.UnittestSuite) ... +2020-04-15 07:59:27,144 - INFO: Instantiate VNF +2020-04-15 07:59:27,182 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:27,184 - DEBUG: Session token is: 43b16480-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:27,207 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:27,281 - DEBUG: Found VNF descriptor with name 'fortigateImage' +2020-04-15 07:59:27,286 - DEBUG: Reading file content as text: \ +vnf_config/fortigateImage/fortigateFW.conf +2020-04-15 07:59:27,359 - DEBUG: Encrypt file content: \ +vnf_config/fortigateImage/fortigateFW.conf +2020-04-15 07:59:27,364 - DEBUG: Reading file content as text: \ +vnf_config/fortigateImage/fortigateLicense.lic +2020-04-15 07:59:27,407 - DEBUG: Encrypt file content: \ +vnf_config/fortigateImage/fortigateLicense.lic +2020-04-15 07:59:27,409 - DEBUG: Instantiate fortigateImage VNF on 'intelc3850-2' +2020-04-15 07:59:32,720 - INFO: Done +2020-04-15 07:59:32,747 - DEBUG: Logging out and exiting... ok -test 009: Pause Fortigate VNF instance (__main__.UnittestSuite) ... -2019-03-07 18:03:49,923 - INFO: Control VNF -2019-03-07 18:03:49,982 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:49,983 - DEBUG: Session token is: 98b17220-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:49,991 - DEBUG: Found device with name 'intelc3850-2' -2019-03-07 18:03:50,031 - DEBUG: Found VNF instance with name 'fortigateFWInstance' -2019-03-07 18:03:50,031 - DEBUG: Control VNF instance 'intelc3850-2', command: -pause -2019-03-07 18:03:50,914 - INFO: Done -2019-03-07 18:03:50,933 - DEBUG: Logging out and exiting... +test 008: Pause Fortigate VNF instance (__main__.UnittestSuite) ... +2020-04-15 07:59:32,840 - INFO: Control VNF +2020-04-15 07:59:32,877 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:32,880 - DEBUG: Session token is: 47166170-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:32,904 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:32,954 - DEBUG: Found VNF instance with name 'fortigateFWInstance' +2020-04-15 07:59:32,955 - DEBUG: Control VNF instance 'intelc3850-2', command: pause +2020-04-15 07:59:33,114 - INFO: Done +2020-04-15 07:59:33,138 - DEBUG: Logging out and exiting... ok -test 010: Resume Fortigate VNF instance (__main__.UnittestSuite) ... -2019-03-07 18:03:50,933 - INFO: Control VNF -2019-03-07 18:03:50,992 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:50,992 - DEBUG: Session token is: 994c0473-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:51,005 - DEBUG: Found device with name 'intelc3850-2' -2019-03-07 18:03:51,023 - DEBUG: Found VNF instance with name 'fortigateFWInstance' -2019-03-07 18:03:51,024 - DEBUG: Control VNF instance 'intelc3850-2', command: -resume -2019-03-07 18:03:51,963 - INFO: Done -2019-03-07 18:03:51,991 - DEBUG: Logging out and exiting... +test 009: Resume Fortigate VNF instance (__main__.UnittestSuite) ... +2020-04-15 07:59:33,142 - INFO: Control VNF +2020-04-15 07:59:33,174 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:33,177 - DEBUG: Session token is: 4743b300-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:33,209 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:33,257 - DEBUG: Found VNF instance with name 'fortigateFWInstance' +2020-04-15 07:59:33,258 - DEBUG: Control VNF instance 'intelc3850-2', command: resume +2020-04-15 07:59:33,365 - INFO: Done +2020-04-15 07:59:33,389 - DEBUG: Logging out and exiting... ok -test 011: Stop Fortigate VNF instance (__main__.UnittestSuite) ... -2019-03-07 18:03:51,992 - INFO: Control VNF -2019-03-07 18:03:52,031 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:52,031 - DEBUG: Session token is: 99ed9ba3-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:52,046 - DEBUG: Found device with name 'intelc3850-2' -2019-03-07 18:03:52,073 - DEBUG: Found VNF instance with name 'fortigateFWInstance' -2019-03-07 18:03:52,073 - DEBUG: Control VNF instance 'intelc3850-2', command: stop -2019-03-07 18:03:53,011 - INFO: Done -2019-03-07 18:03:53,047 - DEBUG: Logging out and exiting... +test 010: Stop Fortigate VNF instance (__main__.UnittestSuite) ... +2020-04-15 07:59:33,393 - INFO: Control VNF +2020-04-15 07:59:33,436 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:33,438 - DEBUG: Session token is: 476aea10-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:33,467 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:33,511 - DEBUG: Found VNF instance with name 'fortigateFWInstance' +2020-04-15 07:59:33,513 - DEBUG: Control VNF instance 'intelc3850-2', command: stop +2020-04-15 07:59:33,865 - INFO: Done +2020-04-15 07:59:33,891 - DEBUG: Logging out and exiting... ok -test 012: Start Fortigate VNF instance (__main__.UnittestSuite) ... -2019-03-07 18:03:53,048 - INFO: Control VNF -2019-03-07 18:03:53,080 - DEBUG: Login successful on host 'localhost' -2019-03-07 18:03:53,080 - DEBUG: Session token is: 9a8d8523-40f2-11e9-a81f525400d08e1d -2019-03-07 18:03:53,109 - DEBUG: Found device with name 'intelc3850-2' -2019-03-07 18:03:53,140 - DEBUG: Found VNF instance with name 'fortigateFWInstance' -2019-03-07 18:03:53,141 - DEBUG: Control VNF instance 'intelc3850-2', command: -start -2019-03-07 18:03:54,087 - INFO: Done -2019-03-07 18:03:54,123 - DEBUG: Logging out and exiting... +test 011: Start Fortigate VNF instance (__main__.UnittestSuite) ... +2020-04-15 07:59:33,895 - INFO: Control VNF +2020-04-15 07:59:33,931 - DEBUG: Login successful on host 'localhost' +2020-04-15 07:59:33,932 - DEBUG: Session token is: 47b70e41-7ede-11ea-a9a8-02429dc76bdd +2020-04-15 07:59:33,956 - DEBUG: Found device with name 'intelc3850-2' +2020-04-15 07:59:34,013 - DEBUG: Found VNF instance with name 'fortigateFWInstance' +2020-04-15 07:59:34,015 - DEBUG: Control VNF instance 'intelc3850-2', command: start +2020-04-15 07:59:36,599 - INFO: Done +2020-04-15 07:59:36,623 - DEBUG: Logging out and exiting... ok ---------------------------------------------------------------------- -Ran 12 tests in 33.328s +Ran 11 tests in 55.946s -OK +OK Below you'll find sample unit-test command line options for running the Fortigate cleanup scenario: $ python unittestSuite.py -u admin -p admin -H localhost -n intelc3850-2 -s -fortigateCleanup.json -d "Fortigate cleanup scenario" - +fortigateCleanup.json -d "Fortigate cleanup scenario" Setting the console logging level to INFO: consoleLoggingLevel = logging.INFO - Expected - Output:Running Fortigate cleanup scenario... + Expected Output: + + Running Fortigate cleanup scenario... + test 001: Destroying Fortigate VNF (__main__.UnittestSuite) ... -2019-03-07 18:04:55,997 - INFO: Destroy VNF -2019-03-07 18:04:56,668 - INFO: Done +2020-04-15 08:03:40,756 - INFO: Destroy VNF +2020-04-15 08:03:41,358 - INFO: Done ok test 002: Deleting network bridge LAN (__main__.UnittestSuite) ... -2019-03-07 18:04:56,739 - INFO: Delete OVS network bridge -2019-03-07 18:04:57,908 - INFO: Done +2020-04-15 08:03:41,494 - INFO: Delete OVS network bridge +2020-04-15 08:03:41,731 - INFO: Done ok test 003: Deleting network bridge WAN (__main__.UnittestSuite) ... -2019-03-07 18:04:57,931 - INFO: Delete OVS network bridge -2019-03-07 18:04:59,464 - INFO: Done +2020-04-15 08:03:41,766 - INFO: Delete OVS network bridge +2020-04-15 08:03:43,270 - INFO: Done ok -test 004: Unbind lan NIC from DPDK uCPE device (__main__.UnittestSuite) ... -2019-03-07 18:04:59,477 - INFO: Unbind NIC -2019-03-07 18:05:00,639 - INFO: Done +test 004: Unbind lan NIC from DPDK (__main__.UnittestSuite) ... +2020-04-15 08:03:43,375 - INFO: Unbind NIC +2020-04-15 08:03:45,405 - INFO: Done ok -test 005: Unbind wan NIC from DPDK uCPE device (__main__.UnittestSuite) ... -2019-03-07 18:05:00,658 - INFO: Unbind NIC -2019-03-07 18:05:01,533 - INFO: Done +test 005: Unbind wan NIC from DPDK (__main__.UnittestSuite) ... +2020-04-15 08:03:45,434 - INFO: Unbind NIC +2020-04-15 08:03:47,633 - INFO: Done ok test 006: Offboarding Fortigate VNF (__main__.UnittestSuite) ... -2019-03-07 18:05:01,566 - INFO: Offboard VNF -2019-03-07 18:05:01,814 - INFO: Done -ok -test 007: Remove VCPE Agent device (__main__.UnittestSuite) ... -2019-03-07 18:05:01,853 - INFO: Remove uCPE device -2019-03-07 18:05:02,184 - INFO: Done +2020-04-15 08:03:47,701 - INFO: Offboard VNF +2020-04-15 08:03:47,919 - INFO: Done ok ---------------------------------------------------------------------- -Ran 7 tests in 6.198s +Ran 6 tests in 7.192s -OK +OK
@@ -826,16 +835,22 @@ Usage: configDPDK.py [options] Configure DPDK Options: ---version show program's version number and exit --h, --help show this help message and exit --u USERNAME, --username=USERNAME Enea uCPE Manager login username --p PASSWORD, --password=PASSWORD Enea uCPE Manager login password --H HOST, --host=HOST Enea uCPE Manager host name or IP address --s STATE, --state=STATE Enable/Disable --n DEVICENAME, --device-name=DEVICENAME Name of the device + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address + -s STATE, --state=STATE + Enable/Disable + -n DEVICENAME, --device-name=DEVICENAME + Name of the device + -o STORENAME, --store-name=STORENAME + Name of the store -Mandatory options: --H/--host, -s/--state + Mandatory options: + -H/--host, -s/--state, -n/--device-name or -o/--store-name
@@ -884,24 +899,26 @@ Mandatory options: $ python bindNetworkInterface.py -h Usage: bindNetworkInterface.py [options] -Binds a physical network interface to a DPDK, standard or SR-IOV. +Binds a physical network interface to a DPDK or SR-IOV. Options: - --version show program's version number and exit - -h, --help show this help message and exit - -u USERNAME, --username=USERNAME - Enea uCPE Manager login username - -p PASSWORD, --password=PASSWORD - Enea uCPE Manager login password - -H HOST, --host=HOST Enea uCPE Manager host name or IP address - -f NICFILE, --file=NICFILE -File containing network interface Information in JSON -format - -n DEVICENAME, --device-name=DEVICENAME - Name of the device + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address + -f NICFILE, --file=NICFILE + File containing network interface Information in JSON + format + -n DEVICENAME, --device-name=DEVICENAME + Name of the device + -o STORENAME, --store-name=STORENAME + Name of the store - Mandatory options: - -H/--host, -f/--file, -n/--device-name + Mandatory options: + -H/--host, -f/--file, -n/--device-name or -o/--store-name
@@ -1164,20 +1181,22 @@ Usage: newNetworkBridge.py [options] Create an OVS Bridge on a device. Options: - --version show program's version number and exit - -h, --help show this help message and exit - -u USERNAME, --username=USERNAME - Enea uCPE Manager login username - -p PASSWORD, --password=PASSWORD - Enea uCPE Manager login password - -H HOST, --host=HOST Enea uCPE Manager host name or IP address - -f OVSFILE, --file=OVSFILE - File containing OVS bridge Information in JSON format - -n DEVICENAME, --device-name=DEVICENAME - Name of the device + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address + -f OVSFILE, --file=OVSFILE + File containing OVS bridge Information in JSON format + -n DEVICENAME, --device-name=DEVICENAME + Name of the device + -o STORENAME, --store-name=STORENAME + Name of the store - Mandatory options: - -H/--host, -f/--file, -n/--device-name + Mandatory options: + -H/--host, -f/--file, -n/--device-name or -o/--store-name
@@ -1253,20 +1272,22 @@ Usage: delNetworkBridge.py [options] Delete an OVS Bridge from a device. Options: - --version show program's version number and exit - -h, --help show this help message and exit - -u USERNAME, --username=USERNAME - Enea uCPE Manager login username - -p PASSWORD, --password=PASSWORD - Enea uCPE Manager login password - -H HOST, --host=HOST Enea uCPE Manager host name or IP address - -f OVSFILE, --file=OVSFILE - File containing OVS bridge Information in JSON format - -n DEVICENAME, --device-name=DEVICENAME - Name of the device + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address + -f OVSFILE, --file=OVSFILE + File containing OVS bridge Information in JSON format + -n DEVICENAME, --device-name=DEVICENAME + Name of the device + -o STORENAME, --store-name=STORENAME + Name of the store - Mandatory options: - -H/--host, -f/--file, -n/--device-name + Mandatory options: + -H/--host, -f/--file, -n/--device-name or -o/--store-name
@@ -1412,26 +1433,26 @@ Usage: onboardVNFRaw.py [options] Onboard a VNF in Enea uCPE Manager based upon its raw constituents. Options: - --version show program's version number and exit - -h, --help show this help message and exit - -u USERNAME, --username=USERNAME - Enea uCPE Manager login username - -p PASSWORD, --password=PASSWORD - Enea uCPE Manager login password - -H HOST, --host=HOST Enea uCPE Manager host name or IP address - -f FTPUSERNAME, --ftpUsername=FTPUSERNAME - Username for FTP - -w FTPPASSWORD, --ftpPassword=FTPPASSWORD - FTP password - -P FTPPORT, --ftpPort=FTPPORT - FTP port - -i IMAGEPATH, --imagePath=IMAGEPATH - VNF bundle image path - -b BUNDLEINFO, --bundleInfo=BUNDLEINFO - File name of VNF bundle information in JSON format + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address + -f FTPUSERNAME, --ftpUsername=FTPUSERNAME + Username for FTP + -w FTPPASSWORD, --ftpPassword=FTPPASSWORD + FTP password + -P FTPPORT, --ftpPort=FTPPORT + FTP port + -i IMAGEPATH, --imagePath=IMAGEPATH + VNF image path + -b IMAGEINFO, --imageInfo=IMAGEINFO + File name of VNF image information in JSON format - Mandatory options: - -H/--host, -b/--bundleInfo, -i/--imagePath + Mandatory options: + -H/--host, -b/--imageInfo, -i/--imagePath
@@ -1594,22 +1615,22 @@ Usage: instantiateVNFI.py [options] Instantiate a VNF via Enea uCPE Manager. Options: - --version show program's version number and exit - -h, --help show this help message and exit - -u USERNAME, --username=USERNAME - Enea uCPE Manager login username - -p PASSWORD, --password=PASSWORD - Enea uCPE Manager login password - -H HOST, --host=HOST Enea uCPE Manager host name or IP address - -t VNFTYPE, --vnfType=VNFTYPE - VNF Type (Name of VNF descriptor) - -n DEVICENAME, --device-name=DEVICENAME - Name of the device - -f PROPSFILE, --file=PROPSFILE - File containing VNF instance properties in JSON format + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address + -t VNFTYPE, --vnfType=VNFTYPE + VNF Type (Name of VNF descriptor) + -n VIMDEVICENAME, --device-name=VIMDEVICENAME + Name of the device + -f PROPSFILE, --file=PROPSFILE + File containing VNF instance properties in JSON format - Mandatory options: - -H/--host, -t/--vnfType, -n/--device-name, -f/--file + Mandatory options: + -H/--host, -t/--vnfType, -n/--device-name, -f/--file
@@ -1674,22 +1695,22 @@ Usage: controlVNFI.py [options] Controls a VNF instance from Enea uCPE Manager. Options: - --version show program's version number and exit - -h, --help show this help message and exit - -u USERNAME, --username=USERNAME - Enea uCPE Manager login username - -p PASSWORD, --password=PASSWORD - Enea uCPE Manager login password - -H HOST, --host=HOST Enea uCPE Manager host name or IP address - -i VNFINSTANCENAME, --vnfInstanceName=VNFINSTANCENAME - Name of VNF instance - -n DEVICENAME, --device-name=DEVICENAME - Name of the device - -c COMMAND, --command=COMMAND - Control command (stop, start, pause or resume) + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address + -i VNFINSTANCENAME, --vnfInstanceName=VNFINSTANCENAME + Name of VNF instance + -n VIMDEVICENAME, --device-name=VIMDEVICENAME + Name of the device + -c COMMAND, --command=COMMAND + Control command (stop, start, pause or resume) - Mandatory options: - -H/--host, -i/--vnfInstanceName, -n/--device-name, -c/--command + Mandatory options: + -H/--host, -i/--vnfInstanceName, -n/--device-name, -c/--command
@@ -1758,20 +1779,20 @@ Usage: destroyVNFI.py [options] Destroys a VNF instance from Enea uCPE Manager. Options: - --version show program's version number and exit - -h, --help show this help message and exit - -u USERNAME, --username=USERNAME - Enea uCPE Manager login username - -p PASSWORD, --password=PASSWORD - Enea uCPE Manager login password - -H HOST, --host=HOST Enea uCPE Manager host name or IP address - -i VNFINSTANCENAME, --vnfInstanceName=VNFINSTANCENAME - Name of VNF instance - -n DEVICENAME, --device-name=DEVICENAME - Name of the device + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address + -i VNFINSTANCENAME, --vnfInstanceName=VNFINSTANCENAME + Name of VNF instance + -n VIMDEVICENAME, --device-name=VIMDEVICENAME + Name of the device - Mandatory options: - -H/--host, -i/--vnfInstanceName, -n/--device-name + Mandatory options: + -H/--host, -i/--vnfInstanceName, -n/--device-name
@@ -2423,6 +2444,92 @@ phase always-after-startup from inteld1521-6 2020-04-14 14:33:52,391 - DEBUG: Logging out and exiting...
+ +
+ Setting up an Offline Configuration Store + + Steps and options on how to add and remove a Config Store in the + Enea uCPE Manager are described below. + +
+ Script Options + + To add a config store in the Enea uCPE Manager use the + addConfigStore.py script detailed below. Bear in + mind a CONFIGSTORE json file is needed to + successfully run the script in order to add an offline configuration + store. + + Example of a CONFIGSTORE json file: + + { + "descr": "intelc3850-2", + "version": "2.2.2", + "deviceGroupingTags": "", + "deviceId": "intelc3850-2", + "name": "intelc3850-2" +} + + Adding an offline config store in the Enea uCPE Manager using + the command line: + + $ python addConfigStore.py -h +Usage: addConfigStore.py [options] + +Add a config store in Enea uCPE Manager. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address + -f CONFIGSTOREFILE, --file=CONFIGSTOREFILE + File containing Store Information in JSON format + + Mandatory options: + -H/--host, -f/--file + + Removing a config store in the Enea uCPE Manager using the + command line: + + python removeConfigStore.py -h +Usage: removeConfigStore.py [options] + +Remove a config store from Enea uCPE Manager. + +Options: + --version show program's version number and exit + -h, --help show this help message and exit + -u USERNAME, --username=USERNAME + Enea uCPE Manager login username + -p PASSWORD, --password=PASSWORD + Enea uCPE Manager login password + -H HOST, --host=HOST Enea uCPE Manager host name or IP address + -o STORENAME, --store-name=STORENAME + Name of the Offline Config Store + + Mandatory options: + -H/--host, -o/--store-name + + Modifications of an Offline Configurations Store are not possible + post deployment in the uCPE Manager, as there is no option for + changing script states (e.g. changing the DPDK state in the + configDPDK.py python script or unbinding interfaces). + The offline store must be deleted and the new state(s)/changes added in, + before being deployed anew. This was not deemed necessary + for the current ZTP functionality. + + An action on a device is applied immediately, while + a configuration in an offline configuration store is something + prepared for the future (when the device is added to the + uCPE Manager and the configuration is sent to it). The + configuration is ideally created with the needed modifications from + the start. +
+
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/appendix_5.xml b/doc/book-enea-nfv-access-example-usecases/doc/appendix_5.xml index 6e30d4e..bdffa2f 100644 --- a/doc/book-enea-nfv-access-example-usecases/doc/appendix_5.xml +++ b/doc/book-enea-nfv-access-example-usecases/doc/appendix_5.xml @@ -10,42 +10,39 @@ Use Case1 - 128T Running 128T Deployment... -test 001: Add VCPE Agent from trgt-1 device (__main__.UnittestSuite) ... -2019-08-13 12:49:58,091 - INFO: Add uCPE device -2019-08-13 12:49:58,342 - INFO: Done +test 001: Wait VCPE Agent device be up (__main__.UnittestSuite) ... +2020-04-15 19:04:58,037 - INFO: Wait uCPE device +2020-04-15 19:05:29,128 - INFO: Status: Connected +2020-04-15 19:05:29,128 - INFO: Done ok -test 002: Wait VCPE Agent device be up (__main__.UnittestSuite) ... -2019-08-13 12:49:58,358 - INFO: Wait uCPE device -2019-08-13 12:50:03,470 - INFO: Done +test 002: Bind NIC to DPDK for LAN connection (__main__.UnittestSuite) ... +2020-04-15 19:05:29,154 - INFO: Bind NIC +2020-04-15 19:05:30,280 - INFO: Done ok -test 003: Bind NIC to DPDK for LAN connection (__main__.UnittestSuite) ... -2019-08-13 12:50:03,486 - INFO: Bind NIC -2019-08-13 12:50:03,901 - INFO: Done +test 003: Creating ibm bridge (__main__.UnittestSuite) ... +2020-04-15 19:05:30,302 - INFO: New OVS network bridge +2020-04-15 19:05:50,687 - INFO: Done ok -test 004: Creating ibm bridge (__main__.UnittestSuite) ... -2019-08-13 12:50:03,920 - INFO: New OVS network bridge -2019-08-13 12:50:17,465 - INFO: Done +test 004: Creating VNF Management bridge (__main__.UnittestSuite) ... +2020-04-15 19:05:50,706 - INFO: New OVS network bridge +2020-04-15 19:05:50,982 - INFO: Done ok -test 005: Creating VNF Management bridge (__main__.UnittestSuite) ... -2019-08-13 12:50:17,481 - INFO: New OVS network bridge -2019-08-13 12:50:17,626 - INFO: Done -ok -test 006: Creating LAN bridge and attaching enp4s0f1 interface to the bridge \ - (__main__.UnittestSuite) ... -2019-08-13 12:50:17,643 - INFO: New OVS network bridge -2019-08-13 12:50:18,313 - INFO: Done +test 005: Creating LAN bridge and attaching lan interface to the bridge \ +(__main__.UnittestSuite) ... +2020-04-15 19:05:51,001 - INFO: New OVS network bridge +2020-04-15 19:05:51,682 - INFO: Done ok -test 007: Onboarding 128T VNF (wizard API) (__main__.UnittestSuite) ... -2019-08-13 12:50:18,332 - INFO: Onboard wizard -2019-08-13 12:52:52,909 - INFO: Done +test 006: Onboarding 128T VNF (wizard API) (__main__.UnittestSuite) ... +2020-04-15 19:05:51,704 - INFO: Onboard wizard +2020-04-15 19:08:43,978 - INFO: Done ok -test 008: Instantiate 128T VNF (__main__.UnittestSuite) ... -2019-08-13 12:52:52,924 - INFO: Instantiate VNF -2019-08-13 12:54:06,219 - INFO: Done +test 007: Instantiate 128T VNF (__main__.UnittestSuite) ... +2020-04-15 19:08:44,000 - INFO: Instantiate VNF +2020-04-15 19:09:37,385 - INFO: Done ok ---------------------------------------------------------------------- -Ran 8 tests in 248.144s +Ran 7 tests in 279.366s OK @@ -57,36 +54,32 @@ Clean-up use-case1 Running 128T Clean-up... test 001: Destroying 128T VNF (__main__.UnittestSuite) ... -2019-08-13 13:03:02,704 - INFO: Destroy VNF -2019-08-13 13:03:03,619 - INFO: Done +2020-04-15 19:10:41,926 - INFO: Destroy VNF +2020-04-15 19:10:42,813 - INFO: Done ok test 002: Deleting network bridge LAN (__main__.UnittestSuite) ... -2019-08-13 13:03:03,635 - INFO: Delete OVS network bridge -2019-08-13 13:03:13,857 - INFO: Done +2020-04-15 19:10:42,831 - INFO: Delete OVS network bridge +2020-04-15 19:10:43,231 - INFO: Done ok test 003: Deleting VNF management bridge (__main__.UnittestSuite) ... -2019-08-13 13:03:13,877 - INFO: Delete OVS network bridge -2019-08-13 13:03:24,027 - INFO: Done +2020-04-15 19:10:43,248 - INFO: Delete OVS network bridge +2020-04-15 19:10:43,366 - INFO: Done ok test 004: Deleting ibm(In Band Management) bridge (__main__.UnittestSuite) ... -2019-08-13 13:03:24,049 - INFO: Delete OVS network bridge -2019-08-13 13:03:48,815 - INFO: Done +2020-04-15 19:10:43,383 - INFO: Delete OVS network bridge +2020-04-15 19:10:58,638 - INFO: Done ok test 005: Unbind LAN NIC from DPDK target (__main__.UnittestSuite) ... -2019-08-13 13:03:48,835 - INFO: Unbind NIC -2019-08-13 13:03:50,274 - INFO: Done +2020-04-15 19:10:58,687 - INFO: Unbind NIC +2020-04-15 19:11:00,490 - INFO: Done ok test 006: Offboarding 128t VNF (__main__.UnittestSuite) ... -2019-08-13 13:03:50,294 - INFO: Offboard VNF -2019-08-13 13:03:50,844 - INFO: Done -ok -test 007: Remove VCPE Agent trgt-1 device (__main__.UnittestSuite) ... -2019-08-13 13:03:50,858 - INFO: Remove uCPE device -2019-08-13 13:03:50,998 - INFO: Done +2020-04-15 19:11:00,509 - INFO: Offboard VNF +2020-04-15 19:11:01,416 - INFO: Done ok ---------------------------------------------------------------------- -Ran 7 tests in 48.308s +Ran 6 tests in 19.507s OK @@ -94,59 +87,58 @@ OK Use-case2 > python unittestSuite.py -u admin -p admin -H 172.24.3.109 -n trgt-1 \ -s 128t_FG_SFCDeploy.json -d "128T - Fortigate SFC Deployment" + Running 128T - Fortigate SFC Deployment... -test 001: Add VCPE Agent from trgt-1 device (__main__.UnittestSuite) ... -2019-08-13 13:09:16,146 - INFO: Add uCPE device -2019-08-13 13:09:16,272 - INFO: Done +test 001: Wait VCPE Agent device be up (__main__.UnittestSuite) ... +2020-04-15 19:12:31,906 - INFO: Wait uCPE device +2020-04-15 19:13:02,972 - INFO: Status: Connected +2020-04-15 19:13:02,973 - INFO: Done ok -test 002: Wait VCPE Agent device be up (__main__.UnittestSuite) ... -2019-08-13 13:09:16,287 - INFO: Wait uCPE device -2019-08-13 13:09:23,421 - INFO: Done +test 002: Bind NIC to DPDK for LAN connection (__main__.UnittestSuite) ... +2020-04-15 19:13:02,994 - INFO: Bind NIC +2020-04-15 19:13:04,105 - INFO: Done ok -test 003: Bind NIC to DPDK for LAN connection (__main__.UnittestSuite) ... -2019-08-13 13:09:23,445 - INFO: Bind NIC -2019-08-13 13:09:24,226 - INFO: Done +test 003: Creating ibm bridge (__main__.UnittestSuite) ... +2020-04-15 19:13:04,122 - INFO: New OVS network bridge +2020-04-15 19:13:10,939 - INFO: Done ok -test 004: Creating ibm bridge (__main__.UnittestSuite) ... -2019-08-13 13:09:24,245 - INFO: New OVS network bridge -2019-08-13 13:09:34,720 - INFO: Done +test 004: Creating VNF Management bridge (__main__.UnittestSuite) ... +2020-04-15 19:13:10,957 - INFO: New OVS network bridge +2020-04-15 19:13:11,246 - INFO: Done ok -test 005: Creating VNF Management bridge (__main__.UnittestSuite) ... -2019-08-13 13:09:34,741 - INFO: New OVS network bridge -2019-08-13 13:09:34,885 - INFO: Done -ok -test 006: Creating LAN bridge and attaching enp4s0f1 interface to the bridge \ +test 005: Creating LAN bridge and attaching lan interface to the bridge \ (__main__.UnittestSuite) ... -2019-08-13 13:09:34,903 - INFO: New OVS network bridge -2019-08-13 13:09:35,566 - INFO: Done +2020-04-15 19:13:11,264 - INFO: New OVS network bridge +2020-04-15 19:13:12,010 - INFO: Done ok -test 007: Creating SFC(service function chaining) bridge (__main__.UnittestSuite) ... -2019-08-13 13:09:35,587 - INFO: New OVS network bridge -2019-08-13 13:09:35,667 - INFO: Done +test 006: Creating SFC(service function chaining) bridge (__main__.UnittestSuite) ... +2020-04-15 19:13:12,026 - INFO: New OVS network bridge +2020-04-15 19:13:12,104 - INFO: Done ok -test 008: Onboarding 128T VNF (wizard API) (__main__.UnittestSuite) ... -2019-08-13 13:09:35,684 - INFO: Onboard wizard -2019-08-13 13:12:11,845 - INFO: Done +test 007: Onboarding 128T VNF (wizard API) (__main__.UnittestSuite) ... +2020-04-15 19:13:12,118 - INFO: Onboard wizard +2020-04-15 19:15:48,993 - INFO: Done ok -test 009: Onboarding Fortigate VNF (wizard API) (__main__.UnittestSuite) ... -2019-08-13 13:12:11,861 - INFO: Onboard wizard -2019-08-13 13:12:16,157 - INFO: Done +test 008: Onboarding Fortigate VNF (wizard API) (__main__.UnittestSuite) ... +2020-04-15 19:15:49,012 - INFO: Onboard wizard +2020-04-15 19:15:53,805 - INFO: Done ok -test 010: Instantiate 128T VNF (__main__.UnittestSuite) ... -2019-08-13 13:12:16,175 - INFO: Instantiate VNF -2019-08-13 13:13:31,681 - INFO: Done +test 009: Instantiate 128T VNF (__main__.UnittestSuite) ... +2020-04-15 19:15:53,880 - INFO: Instantiate VNF +2020-04-15 19:16:53,272 - INFO: Done ok -test 011: Instantiate Fortigate VNF (__main__.UnittestSuite) ... -2019-08-13 13:13:31,738 - INFO: Instantiate VNF -2019-08-13 13:13:35,985 - INFO: Done +test 010: Instantiate Fortigate VNF (__main__.UnittestSuite) ... +2020-04-15 19:16:53,289 - INFO: Instantiate VNF +2020-04-15 19:16:57,428 - INFO: Done ok ---------------------------------------------------------------------- -Ran 11 tests in 259.854s +Ran 10 tests in 265.536s OK + # Access 128T management interface https://172.24.12.154:60001 user: admin @@ -166,48 +158,44 @@ Use case2 clean-up Running 128T - Fortigate SFC CleanUp... test 001: Destroying Fortigate VNF (__main__.UnittestSuite) ... -2019-08-13 13:51:30,204 - INFO: Destroy VNF -2019-08-13 13:51:31,781 - INFO: Done +2020-04-15 19:31:37,255 - INFO: Destroy VNF +2020-04-15 19:31:38,941 - INFO: Done ok test 002: Destroying 128T VNF (__main__.UnittestSuite) ... -2019-08-13 13:51:31,822 - INFO: Destroy VNF -2019-08-13 13:51:32,729 - INFO: Done +2020-04-15 19:31:38,960 - INFO: Destroy VNF +2020-04-15 19:31:39,878 - INFO: Done ok test 003: Deleting network bridge SFC (__main__.UnittestSuite) ... -2019-08-13 13:51:32,756 - INFO: Delete OVS network bridge -2019-08-13 13:51:42,863 - INFO: Done +2020-04-15 19:31:39,908 - INFO: Delete OVS network bridge +2020-04-15 19:31:40,086 - INFO: Done ok test 004: Deleting network bridge LAN (__main__.UnittestSuite) ... -2019-08-13 13:51:42,878 - INFO: Delete OVS network bridge -2019-08-13 13:51:53,087 - INFO: Done +2020-04-15 19:31:40,102 - INFO: Delete OVS network bridge +2020-04-15 19:31:40,388 - INFO: Done ok test 005: Deleting VNF management bridge (__main__.UnittestSuite) ... -2019-08-13 13:51:53,103 - INFO: Delete OVS network bridge -2019-08-13 13:52:03,251 - INFO: Done +2020-04-15 19:31:40,427 - INFO: Delete OVS network bridge +2020-04-15 19:31:40,678 - INFO: Done ok test 006: Deleting ibm(In Band Management) bridge (__main__.UnittestSuite) ... -2019-08-13 13:52:03,269 - INFO: Delete OVS network bridge -2019-08-13 13:52:29,868 - INFO: Done +2020-04-15 19:31:40,701 - INFO: Delete OVS network bridge +2020-04-15 19:31:46,894 - INFO: Done ok test 007: Unbind LAN NIC from DPDK target (__main__.UnittestSuite) ... -2019-08-13 13:52:29,885 - INFO: Unbind NIC -2019-08-13 13:52:31,415 - INFO: Done +2020-04-15 19:31:46,945 - INFO: Unbind NIC +2020-04-15 19:31:48,792 - INFO: Done ok test 008: Offboarding 128t VNF (__main__.UnittestSuite) ... -2019-08-13 13:52:31,435 - INFO: Offboard VNF -2019-08-13 13:52:32,009 - INFO: Done +2020-04-15 19:31:48,808 - INFO: Offboard VNF +2020-04-15 19:31:49,554 - INFO: Done ok test 009: Offboarding Fortigate VNF (__main__.UnittestSuite) ... -2019-08-13 13:52:32,023 - INFO: Offboard VNF -2019-08-13 13:52:32,157 - INFO: Done -ok -test 010: Remove VCPE Agent trgt-1 device (__main__.UnittestSuite) ... -2019-08-13 13:52:32,170 - INFO: Remove uCPE device -2019-08-13 13:52:32,294 - INFO: Done +2020-04-15 19:31:49,572 - INFO: Offboard VNF +2020-04-15 19:31:49,837 - INFO: Done ok ---------------------------------------------------------------------- -Ran 10 tests in 62.104s +Ran 9 tests in 12.600s OK \ No newline at end of file diff --git a/doc/book-enea-nfv-access-getting-started/doc/getting_started_ucpe_manager.xml b/doc/book-enea-nfv-access-getting-started/doc/getting_started_ucpe_manager.xml index 1940eb1..fc349ac 100644 --- a/doc/book-enea-nfv-access-getting-started/doc/getting_started_ucpe_manager.xml +++ b/doc/book-enea-nfv-access-getting-started/doc/getting_started_ucpe_manager.xml @@ -254,12 +254,12 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar The service will be automatically started when the computer - boots up. The user may enable the firewall in order to allow access - to these specific ports: 80 (TCP), 443 (TCP), 54327 (UDP) and - 5701:5708 (TCP). If callhome is used access to the following ports - must also be allowed: 4334 (TCP) and 2021:2040 (TCP). Otherwise, - the user should check that the CentOS machine where the uCPE Manager is - installed has the firewall disabled. + boots up. The user may enable the firewall in order to allow access to + these specific ports: 80 (TCP), 443 (TCP), 54327 (UDP) and 5701:5708 + (TCP). If callhome is used access to the following ports must also be + allowed: 4334 (TCP) and 2021:2040 (TCP). Otherwise, the user should + check that the CentOS machine where the uCPE Manager is installed has + the firewall disabled. Verify that the installation has succeeded by: @@ -535,50 +535,32 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar Type. The type of device to be added, i.e Enea universal CPE. - - - - + + Name. The name by which the device is referred to in the uCPE Manager. - - - - - IP Address. IP address of the uCPE device. - - - - + SSH Port. The NETCONF Port used for communications. Default is set to 830. - - SSH User Name. The user name for SSH connectivity. Default user is root. - - SSH Password. Leave this blank. - - Device Calls Home. This checkbox indicates the direction of device communications. For Direct Connection, leave this flag unchecked. - - Device ID. The unique identifier of the uCPE device. @@ -590,13 +572,12 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar Follow the same steps as described in the previous section, making sure that the Device Calls Home checkbox is - selected this time. The IP Address of the uCPE device - is not required. + selected this time. When using this mechanism, the device will initiate a connection to the uCPE Manager for NETCONF traffic (over SSH), while the uCPE - Manager waits for a device connection. For more information please - see section Installing Enea NFV + Manager waits for a device connection. For more information please see + section Installing Enea NFV Access for more details.
@@ -611,295 +592,189 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar Available network interfaces can be added to the management system, for use by the networking virtualization infrastructure. + + In order to make physical network interfaces available to the + virtualization infrastructure and VNFs, they must be configured into + the management system. -
- Manual Configuration + To add an interface into the uCPE Manager, select the uCPE + device, then from the top toolbar select Configuration + -> External Interfaces -> Configuration -> Add. The available + Interface types are detailed below. - For Manual Configuration of uCPE networking, select the uCPE - device first and then Configuration -> - External Interfaces, where one can find a list of - available network interfaces and their capabilities. +
+ DPDK Interface Type -
- Configuring Interfaces + Configuring a physical interface in DPDK mode will require a + DPDK-based application (e.g. OVS-DPDK) in order to access and use + the interface. An interface set as the DPDK can be attached to an + OVS-DPDK bridge. - After networking interfaces have been added to the uCPE - Manager, the user can change the interface type (DPDK, SR-IOV, - Standard, wan). + + Make sure the Enable DPDK checkbox is + selected in Device -> Configuration -> + DPDK, otherwise no interface can be assigned to the + DPDK. + - How to Edit the Configuration of an - Interface + To add a DPDK interface under the management system, set + appropriate values for the following fields: - - -
- Configuration of External Interfaces + + + Source: name of the physical interface. + - - - - - -
+ + Type: dpdk + - To edit an interface configuration type from the uCPE - Manager, select the uCPE device, then from the top toolbar - select the Configuration menu then - External Interfaces -> Configuration. The - already configured interfaces are displayed here, as can be seen - in the figure above. -
+ + Networking-type: dpdk + - - In order to edit an already configured interface, double - click on the desired one and a popup will appear as shown in the - figure below. From the Host Interface window, a user can change - the networking type and the IP address assignment: + + Dpdk-type: the kernel module that allows user space + access to the physical interface. The vfio-pci + driver is used. + + +
-
- Editing an Interface +
+ SR-IOV Interface Type - - - - - -
- - + SR-IOV technology allows for the creation of a number of + virtual functions on the host interface, which can be used by VNFs + running on the uCPE device. - Set the IP address assignment of the - Management Interface to static + For SR-IOV mode configuration, the user must set values for + the following fields: - - - To change an interface type from the uCPE Manager, select - the uCPE device, then from the top toolbar select - Configuration and then External - Interfaces -> Configuration. The already configured - interfaces are displayed here. - + + + Source: name of the physical interface. + - - From the interfaces' list, edit the interface which has - the "Management" flag set to "true", by double clicking on it, - triggering a popup window: + + Type: sr-iov + -
- Editing the Management Interface + + Networking-type: srIov + - - - - - -
-
+ + sriov-mode: adapter-pool + - - From the Host Interface window, change the IP - address-assignment to "static". After the address - assignment is set, the user needs to set the IP - address, netmask and the - gateway of the interface. The user can use - the dropdown list to set the type of the IP version: - IPv4 or IPv6 - address: + + sriov-num-vfs: the number of virtual functions to + create. + +
+
-
- Setting the IP version +
+ Standard Interface Type - - - - - -
- - + Some of the physical network interfaces available on a uCPE + device, including Ethernet interfaces, do not have DPDK or SR-IOV + support. Instead, the Linux kernel driver has to be used. Wi-Fi + and 4G/LTE modems can also be configured and used for + virtualization infrastructure and VNFs. - Set the IP address assignment of the - Management Interface to DHCP + To add Standard interfaces under the management system, the + user must set values for the following fields: - - - To change an interface type from the uCPE Manager, select - the uCPE device, then from the top toolbar select - Configuration and then External - Interfaces -> Configuration. The already configured - interfaces are displayed here. - + + + Source: the name of physical interface. + - - From the interfaces' list, edit the interface which has - the "Management" flag set to "true", by double clicking on it, - triggering a popup window. Within the Host Interface window - change the IP address assignment to - "dhcp". + + Networking-type: standard + + +
-
- Editing the Management Interface to DHCP +
+ PCI Passthrough Interface Type + + For the PCI Passthrough a user does not have to configure a + physical interface, instead simply select the PCI address and + connect it to a virtual port when the VNF instantiation step is + reached. +
+ +
+ Manual Configuration + + For Manual Configuration of uCPE networking, select the uCPE + device first and then Configuration -> + External Interfaces, where one can find a list of + available network interfaces and their capabilities. + +
+ Configuring Interfaces + + After networking interfaces have been added to the uCPE + Manager, the user can change the interface type (DPDK, SR-IOV, + Standard, WAN). + + WAN interfaces, which are configured during the + installation of the device, do not need to be added, they will + be automatically listed as such in the uCPE manager when the + device connects. + +
+ Configuration of External Interfaces - +
- - - Changing the static IP of the Management + How to Edit the Configuration of an Interface - To change an interface type from the uCPE Manager, select - the uCPE device, then from the top toolbar select - Configuration and then External - Interfaces -> Configuration. The already configured - interfaces are displayed here. + To edit an interface configuration type from the uCPE + Manager, select the uCPE device, then from the top toolbar + select the Configuration menu then + External Interfaces -> Configuration. The + already configured interfaces are displayed here, as can be seen + in the figure above. - From the interfaces' list, edit the interface which has - the "Management" flag set to "true", by double clicking on it, - triggering a popup window. Within the Host Interface window - change the "static" IP address as well as the - netmask and the - gateway. + In order to edit an already configured interface, (as in + the example popup shown below, a WAN interface) double click + on the desired one and a popup will appear. A different popup + appears for each type of interface. From the Host Interface window, a user can + change the networking type and the IP address assignment:
- Changing the Static, Netmask and Gateway IPs + Editing an Interface + fileref="images/edit_inter.png" />
- - - The user can use the dropdown list to set the type of - the IP version: IPv4 or - IPv6 address. -
- In order to make physical network interfaces available to the - virtualization infrastructure and VNFs, they must be configured into - the management system. - - To add an interface into the uCPE Manager, select the uCPE - device, then from the top toolbar select Configuration - -> OpenVSwitch -> Host Interfaces. The available - Interface types are detailed below. - - DPDK Interface Type - - Configuring a physical interface in DPDK mode will require a - DPDK-based application (e.g. OVS-DPDK) in order to access and use - the interface. An interface set as the DPDK can be attached to an - OVS-DPDK bridge. - - Make sure the Enable DPDK checkbox is - selected in Device -> Configuration -> - DPDK, otherwise no interface can be assigned to the - DPDK. + The IP address assignment of an interface can be set as + static or dynamic for each type of interface. - - To add a DPDK interface under the management system, set - appropriate values for the following fields: - - - - Source: name of the physical interface. - - - - Type: dpdk - - - - Networking-type: dpdk - - - - Dpdk-type: the kernel module that allows user space access - to the physical interface. Enea recommends using the - vfio-pci driver. - - - - SR-IOV Interface Type - - SR-IOV technology allows for the creation of a number of - virtual functions on the host interface, which can be used by VNFs - running on the uCPE device. - - For SR-IOV mode configuration, the user must set values for - the following fields: - - - - Source: name of the physical interface. - - - - Type: sr-iov - - - - Networking-type: srIov - - - - sriov-mode: adapter-pool - - - - sriov-num-vfs: the number of virtual functions to - create. - - - - Standard Interface - Type - - Some of the physical network interfaces available on a uCPE - device, including Ethernet interfaces, do not have DPDK or SR-IOV - support. Instead, the Linux kernel driver has to be used. Wi-Fi and - 4G/LTE modems can also be configured and used for virtualization - infrastructure and VNFs. - - To add Standard interfaces under the management system, the - user must set values for the following fields: - - - - Source: the name of physical interface. - - - - Networking-type: standard - - - - PCI Passthrough - Interface Type - - For the PCI Passthrough a user does not - have to configure a physical interface, instead simply select the - PCI address and connect it to a virtual port when the VNF - instantiation step is reached.
@@ -908,6 +783,17 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar After networking interfaces have been added to the uCPE Manager, the user can create the necessary OVS bridges. +
+ OVS Bridges + + + + + + +
+ How to add OVS bridges in the uCPE Manager @@ -936,145 +822,139 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar There are three types of bridges which can be created, each - one fulfiling a different role: + one fulfiling a different role. - uCPE In-band Management - bridge +
+ uCPE In-band Management bridge - In-band Management refers to a model where both the data plane - and control plane flow over the same network path. In some - situations (e.g. the uCPE device has only one routable IP address), - this is the only option available to both control and configure the - uCPE device, while also allowing for data-path traffic to pass over - the same physical interface. + In-band Management refers to a model where both the data + plane and control plane flow over the same network path. In some + situations (e.g. the uCPE device has only one routable IP + address), this is the only option available to both control and + configure the uCPE device, while also allowing for data-path + traffic to pass over the same physical interface. - The solution provided by Enea for in-band management is based - upon an OpenvSwitch bridge fielding all traffic passing through the - WAN physical port. As a prerequisite, the WAN physical port has to - be configured to get its IP through DHCP. Any standard or - DPDK-assigned network interface can be used for the In-Band - management bridge. + The solution provided by Enea for in-band management is + based upon an OpenvSwitch bridge fielding all traffic passing + through the WAN physical port. Any standard + or DPDK-assigned network interface can be used for the In-Band + management bridge. - - The In-Band Management bridge must be recreated each time - the uCPE Manager IP address is changed. - + + The In-Band Management bridge must be recreated each time + the uCPE Manager IP address is changed. + - To create the In-Band Management bridge, the user must set - values for the following fields: + To create the In-Band Management bridge, the user must set + values for the following fields: - - - name: name of the bridge. - - - - ovs-bridge-type: inbandMgmt - + + + name: name of the bridge. + - - mgmt-address: select IPv4 as the type and fill in the IP - address of the uCPE Manager. - + + ovs-bridge-type: inbandMgmt + + - - mgmt-port: the NETCONF management port. Enea recommeneds - leaving this field unchanged. - - + + The first VNF instantiated on the uCPE device must be + connected to the In-Band Management bridge and its WAN interface + must be configured as the DHCP client. + +
- - The first VNF instantiated on the uCPE device must be - connected to the In-Band Management bridge and its WAN interface - must be configured as the DHCP client. - +
+ In-band Management bridge for VNFs - In-band Management bridge for - VNFs + If VNF management can be done over a dedicated virtual + interface, its possible to extend the networking infrastructure + configuration to also access the VNF's management interface over + the WAN port. - If VNF management can be done over a dedicated virtual - interface, its possible to extend the networking infrastructure - configuration to also access the VNF's management interface over the - WAN port. + For this setup, three types of traffic will pass over the + WAN physical interface: - For this setup, three types of traffic will pass over the WAN - physical interface: + + + Device management. Part of the device configuration done + by the uCPE Manager. + - - - Device management. Part of the device configuration done - by the uCPE Manager. - + + VNF(s) management. Enabling or disabling features of a + VNF. E.g. enabling/disabling the firewall or VPN setup. + - - VNF(s) management. Enabling or disabling features of a - VNF. E.g. enabling/disabling the firewall or VPN setup. - + + Data-path. All other traffic that is not used in the + control plane and needs to reach a LAN network. + + - - Data-path. All other traffic that is not used in the - control plane and needs to reach a LAN network. - - + To create a VNF In-Band Management bridge, the user must set + values for the following fields: - To create a VNF In-Band Management bridge, the user must set - values for the following fields: + + + name: name of the bridge. + - - - name: name of the bridge. - + + ovs-bridge-type: vnfMgmt + - - ovs-bridge-type: vnfMgmt - + + vnf-mgmt-address: select IPv4 as the type and fill in + the IP address for management network, e.g 10.0.0.1. + + - - vnf-mgmt-address: select IPv4 as the type and fill in the - IP address for management network, e.g 10.0.0.1. - - + + VNF management interfaces must be configured in same + network as the vnf-mgmt-address of the + bridge. For more information, please see 4.4 VNF Management. + +
- - VNF management interfaces must be configured in same network - as the vnf-mgmt-address of the bridge. For more - information, please see 4.4 VNF - Management. - +
+ Data-plane Bridge - Data-plane Bridge Data-plane - bridges are generic bridges used for the VNF data-plane. There are - two supported sub-types: + Data-plane bridges are generic bridges used for the VNF + data-plane. There are two supported sub-types: - - - communication: allows for VNF communication towards - LAN/WAN networks. This bridge type has at least one physical - port attached to it. - + + + communication: allows for VNF communication towards + LAN/WAN networks. This bridge type has at least one physical + port attached to it. + - - integration: allows for VNF-to-VNF communication (usually - for service function chaining). This bridge type does not have - any physical port attached. - - + + integration: allows for VNF-to-VNF communication + (usually for service function chaining). This bridge type does + not have any physical port attached. + + - To create a Data-plane bridge, the user must set values for - the following fields: + To create a Data-plane bridge, the user must set values for + the following fields: - - - name: name of the bridge. - + + + name: name of the bridge. + - - ovs-bridge-type: select communication - or integration, depending on intended usage. - For communication bridges, physical interfaces can be added to - the bridge. - - + + ovs-bridge-type: select communication + or integration, depending on intended + usage. For communication bridges, physical interfaces can be + added to the bridge. + + +
@@ -1138,7 +1018,8 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar - Device Grouping Tags: a tag to group devices. + Device Grouping Tags: a tag to group devices. These tags match + the customer tags provided during the installation of the device. @@ -1413,9 +1294,10 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar Click on Choose File to provide the path - to the image file (must be of type rootfs.ostree.tar.bz2). - Select the target hardware platform corresponding to the image - being uploaded (xeon-d or atomc-3000). + to the image file (must be of type + rootfs.ostree.tar.bz2). Select the target + hardware platform corresponding to the image being uploaded + (xeon-d or atomc-3000). @@ -1481,7 +1363,8 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar minute for when to run the upgrade. - The hour represents the local uCPE Manager server hour. + The hour represents the local uCPE Manager server + hour. @@ -1888,8 +1771,8 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar Manager. - CAUTION: The user MUST conserve the same order for the - virtual interfaces during both onboarding and instantiation phases. + CAUTION: The user MUST conserve the same order for the virtual + interfaces during both onboarding and instantiation phases. Cloud Init Tab @@ -2046,7 +1929,8 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar - uCPE Device: the uCPE device to instantiate the VNF on. + uCPE Device: the uCPE device to instantiate the VNF + on. @@ -2125,4 +2009,4 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar - + \ No newline at end of file diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/edit_inter_config.png b/doc/book-enea-nfv-access-getting-started/doc/images/edit_inter_config.png index 211984c..f9ab8aa 100755 Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/edit_inter_config.png and b/doc/book-enea-nfv-access-getting-started/doc/images/edit_inter_config.png differ diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/ovs_bridges_tab.png b/doc/book-enea-nfv-access-getting-started/doc/images/ovs_bridges_tab.png new file mode 100755 index 0000000..0b3ec54 Binary files /dev/null and b/doc/book-enea-nfv-access-getting-started/doc/images/ovs_bridges_tab.png differ -- cgit v1.2.3-54-g00ecf