From 8670db9d7faf33f35789a4e344c52228b40f71f2 Mon Sep 17 00:00:00 2001
From: mrpa
Date: Wed, 17 Mar 2021 01:05:26 +0100
Subject: Updated the relevant pictures in all books with the new naming
protocol.
Change-Id: I3c5b846b368520f073266738baa770e3ee19f43f
Signed-off-by: mrpa
---
.../doc/images/ChainedVNFsService_setup.png | Bin 105328 -> 83776 bytes
.../doc/images/autofw_testh_overview.png | Bin 92459 -> 60150 bytes
.../doc/images/environment_basicsetup.png | Bin 97013 -> 79325 bytes
.../doc/images/br_to_br_conn_overview.png | Bin 133012 -> 56307 bytes
.../doc/images/br_to_br_conn_setup.png | Bin 99837 -> 38971 bytes
.../doc/images/trgt.png | Bin 49114 -> 50826 bytes
.../doc/images/trgt.svg | 197 ++-
.../doc/images/trgt_servicechain.png | Bin 67568 -> 69317 bytes
.../doc/images/trgt_servicechain.svg | 1263 ++++++++++----------
.../doc/images/uc_clavister_bridge.png | Bin 34561 -> 36145 bytes
.../doc/images/uc_clavister_bridge.svg | 145 ++-
.../doc/images/uc_clavister_sriov.png | Bin 38010 -> 40185 bytes
.../doc/images/uc_clavister_sriov.svg | 142 +--
.../doc/images/uc_enea_test_vnf.png | Bin 36212 -> 37660 bytes
.../doc/images/uc_enea_test_vnf.svg | 105 +-
.../doc/images/uc_fortigate_fw.png | Bin 25416 -> 27026 bytes
.../doc/images/uc_fortigate_fw.svg | 190 +--
.../doc/images/uc_fortigate_sdwan.png | Bin 43532 -> 45248 bytes
.../doc/images/uc_fortigate_sdwan.svg | 312 +++--
.../doc/images/uc_vnf_chaining.png | Bin 39325 -> 41097 bytes
.../doc/images/uc_vnf_chaining.svg | 202 ++--
.../doc/images/high_av_setup.png | Bin 100018 -> 66687 bytes
.../doc/images/vnf_space.png | Bin 44338 -> 39641 bytes
23 files changed, 1208 insertions(+), 1348 deletions(-)
mode change 100755 => 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.png
mode change 100755 => 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_sriov.png
mode change 100755 => 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_enea_test_vnf.png
mode change 100755 => 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_fw.png
mode change 100755 => 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.png
mode change 100755 => 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.png
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png
index a345989..0329450 100755
Binary files a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png and b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png differ
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png
index a597a91..a384877 100755
Binary files a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png and b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png differ
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/environment_basicsetup.png b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/environment_basicsetup.png
index 6bd35d4..c30dcfd 100755
Binary files a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/environment_basicsetup.png and b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/environment_basicsetup.png differ
diff --git a/doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_overview.png b/doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_overview.png
index 10984da..1367d32 100644
Binary files a/doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_overview.png and b/doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_overview.png differ
diff --git a/doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_setup.png b/doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_setup.png
index 8f18afc..12e45f9 100644
Binary files a/doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_setup.png and b/doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_setup.png differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.png b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.png
index 791f542..2977524 100644
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.png and b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.png differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.svg
index d933a63..86f4d12 100755
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.svg
+++ b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.svg
@@ -1,6 +1,4 @@
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.png b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.png
index da0824d..7cb5af0 100644
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.png and b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.png differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.svg
index 931bcaf..4bd6d85 100755
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.svg
+++ b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.svg
@@ -1,6 +1,4 @@
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.png b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.png
old mode 100755
new mode 100644
index 6366b61..97492ca
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.png and b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.png differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.svg
index 6aafc23..2890881 100755
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.svg
+++ b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.svg
@@ -1,6 +1,4 @@
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.png b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.png
old mode 100755
new mode 100644
index cd82461..b71b02e
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.png and b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.png differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.svg
index 4255bf6..3de54dd 100755
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.svg
+++ b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.svg
@@ -1,6 +1,4 @@
-
-
+ showborder="false"
+ inkscape:document-rotation="0" />
Cloud
+ style="font-size:8.46667px;stroke-width:0.264583">Cloud
uCPEuCPEDeviceuCPEManager
@@ -568,9 +567,9 @@
id="text6011"
y="111.3953"
x="104.96505"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.46666622px;line-height:1.25;font-family:Arial;-inkscape-font-specification:Arial;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.46667px;line-height:1.25;font-family:Arial;-inkscape-font-specification:Arial;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
xml:space="preserve">
+ style="display:inline"
+ sodipodi:insensitive="true">
-
@@ -774,64 +765,73 @@
inkscape:connector-curvature="0"
id="path5091-2"
d="m 445.81065,75.822009 a 38.855204,52.805708 0 0 0 -25.4146,12.949601 27.874385,29.472953 0 0 0 -5.83847,-0.669151 27.874385,29.472953 0 0 0 -23.90343,14.379051 38.701484,43.266581 0 0 0 -3.81757,-0.21342 38.701484,43.266581 0 0 0 -38.70176,43.26683 38.701484,43.266581 0 0 0 10.45454,29.52569 19.427603,20.876675 0 0 0 -0.62526,5.14477 19.427603,20.876675 0 0 0 19.42759,20.87671 19.427603,20.876675 0 0 0 6.81189,-1.33599 17.738246,34.385112 0 0 0 11.77104,8.70425 17.738246,34.385112 0 0 0 10.05859,-6.10906 32.097777,36.841192 0 0 0 22.88385,11.02119 32.097777,36.841192 0 0 0 24.82399,-13.52037 47.301991,30.700992 0 0 0 22.47804,3.69605 47.301991,30.700992 0 0 0 47.30198,-30.70098 47.301991,30.700992 0 0 0 -2.81288,-10.33994 36.611017,34.385112 0 0 0 11.83871,-25.27322 36.611017,34.385112 0 0 0 -36.60986,-34.3851 36.611017,34.385112 0 0 0 -15.08215,3.09888 38.855204,52.805708 0 0 0 -35.04424,-30.11573 z"
- style="fill:#8fd0f6;fill-opacity:1;stroke:#000000;stroke-width:0.96103942;stroke-opacity:1" />
+ style="fill:#8fd0f6;fill-opacity:1;stroke:#000000;stroke-width:0.961039;stroke-opacity:1" />
Internet
- uCPEManager
+
+
+ Enea Edge Management
+
+
+ style="display:inline"
+ sodipodi:insensitive="true">
+ id="text16006" />
uCPE Device 2
@@ -878,7 +878,7 @@
ry="1.8328245" />
@@ -917,7 +917,7 @@
id="g1507">
vnfmgmt_br
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:1">vnfmgmt_br
Fortigate
@@ -988,15 +988,15 @@
height="40.235157"
width="69.460823"
id="rect6098-9-0-8-7"
- style="fill:#ffe699;fill-opacity:1;stroke:#000000;stroke-width:0.44231871;stroke-opacity:1"
+ style="fill:#ffe699;fill-opacity:1;stroke:#000000;stroke-width:0.442319;stroke-opacity:1"
ry="9.5899591" />
lan_br
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:1">lan_br
@@ -1058,27 +1058,18 @@
id="layer7"
inkscape:label="Test Machines"
style="display:inline"
- transform="translate(-314.7295,-31.73299)">
+ transform="translate(-314.7295,-31.73299)"
+ sodipodi:insensitive="true">
+ id="text15008-4" />
+ style="font-style:normal;font-weight:normal;font-size:10.5833px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#ac9d93;fill-opacity:1;stroke:none;stroke-width:0.264583"
+ xml:space="preserve" />
+ style="font-style:normal;font-weight:normal;font-size:10.5833px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#ac9d93;fill-opacity:1;stroke:none;stroke-width:0.264583"
+ xml:space="preserve" />
+ style="display:inline"
+ sodipodi:insensitive="true">
@@ -1222,23 +1194,23 @@
uCPE Device 1
@@ -1270,7 +1242,7 @@
transform="translate(-3.3059349,7.7197473)"
id="g1576">
wan_br
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:1">wan_brlan_br
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:1">lan_br
+ id="text1355" />
vnfmgmt_br
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:1">vnfmgmt_br
Fortigate
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:24px;font-family:Arial;-inkscape-font-specification:Arial;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;stroke-width:1">Fortigate
@@ -1422,7 +1390,8 @@
id="layer13"
inkscape:label="Legend"
transform="translate(-23.865391,-45.497822)"
- style="display:inline">
+ style="display:inline"
+ sodipodi:insensitive="true">
@@ -1431,38 +1400,35 @@
id="text4338"
y="284.13779"
x="-0.59244788"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:18.66666603px;line-height:1.25;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994;filter:url(#filter4332)"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:18.6667px;line-height:1.25;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1;filter:url(#filter4332)"
xml:space="preserve">Legend: - Connection via cloud/internet:- VPN/BTB:
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.png b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.png
old mode 100755
new mode 100644
index d2527e5..6aaf4c0
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.png and b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.png differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.svg
index 67e0250..2bb15af 100755
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.svg
+++ b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.svg
@@ -1,6 +1,4 @@
-
-
+ showborder="false"
+ inkscape:document-rotation="0" />
Cloud
+ style="font-size:8.46667px;stroke-width:0.264583">Cloud
uCPEuCPEDeviceuCPEManager
@@ -293,9 +292,9 @@
id="text6011"
y="111.3953"
x="104.96505"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.46666622px;line-height:1.25;font-family:Arial;-inkscape-font-specification:Arial;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332"
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.46667px;line-height:1.25;font-family:Arial;-inkscape-font-specification:Arial;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
xml:space="preserve">
+ id="text16006" />
sfc_br
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:1">sfc_brdpdk
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start">dpdklan_br
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:1">lan_brlan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:Arial;-inkscape-font-specification:Arial;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start">lanwan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:Arial;-inkscape-font-specification:Arial;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start">wan
wan_br
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:1">wan_bruCPE Device 2
+ sfc_br
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:1">sfc_br
wan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:Arial;-inkscape-font-specification:Arial;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start">wan
lan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:Arial;-inkscape-font-specification:Arial;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start">lan
@@ -851,7 +847,7 @@
x="53.709198"
style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;display:inline;fill:#000000;fill-opacity:1;stroke:none"
xml:space="preserve">wan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:Arial;-inkscape-font-specification:Arial;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start">wanlan
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:Arial;-inkscape-font-specification:Arial;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start">lan
lan_br
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;writing-mode:lr-tb;text-anchor:middle;stroke-width:1">lan_br
uCPE Device 1Legend: - Connection via cloud/internet:- VPN/BTB:- VPN/BTB:
+ style="display:inline"
+ sodipodi:insensitive="true">
+ id="text756" />
+ style="display:inline;fill:none;stroke:#e90000;stroke-width:0.887434;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ style="display:inline;fill:none;stroke:#e90000;stroke-width:0.887434;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
+ style="display:inline;fill:none;stroke:#000000;stroke-width:1.23514;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:2.47028, 1.23514, 0.617569, 1.23514;stroke-dashoffset:0;stroke-opacity:1" />
+ style="display:inline;fill:none;stroke:#000000;stroke-width:1.23819;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:2.47638, 1.23819, 0.619094, 1.23819;stroke-dashoffset:0;stroke-opacity:1" />
+ style="display:inline;opacity:1;vector-effect:none;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.93169;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
@@ -1153,33 +1143,33 @@
inkscape:connector-curvature="0"
id="path5091-2-9"
d="m 285.79578,282.35384 a 38.855204,52.805708 0 0 0 -25.4146,12.9496 27.874385,29.472953 0 0 0 -5.83847,-0.66915 27.874385,29.472953 0 0 0 -23.90343,14.37905 38.701484,43.266581 0 0 0 -3.81757,-0.21342 38.701484,43.266581 0 0 0 -38.70176,43.26683 38.701484,43.266581 0 0 0 10.45454,29.52569 19.427603,20.876675 0 0 0 -0.62526,5.14477 19.427603,20.876675 0 0 0 19.42759,20.87671 19.427603,20.876675 0 0 0 6.81189,-1.33599 17.738246,34.385112 0 0 0 11.77104,8.70425 17.738246,34.385112 0 0 0 10.05859,-6.10906 32.097777,36.841192 0 0 0 22.88385,11.02119 32.097777,36.841192 0 0 0 24.82399,-13.52037 47.301991,30.700992 0 0 0 22.47804,3.69605 47.301991,30.700992 0 0 0 47.30198,-30.70098 47.301991,30.700992 0 0 0 -2.81288,-10.33994 36.611017,34.385112 0 0 0 11.83871,-25.27322 36.611017,34.385112 0 0 0 -36.60986,-34.3851 36.611017,34.385112 0 0 0 -15.08215,3.09888 38.855204,52.805708 0 0 0 -35.04424,-30.11573 z"
- style="fill:#8fd0f6;fill-opacity:1;stroke:#000000;stroke-width:0.96103942;stroke-opacity:1" />
+ style="fill:#8fd0f6;fill-opacity:1;stroke:#000000;stroke-width:0.961039;stroke-opacity:1" />
Internet
+ id="g219">
uCPEManager
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:18.0039px;font-family:Arial;-inkscape-font-specification:'Arial, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:center;writing-mode:lr-tb;text-anchor:middle">Enea Edge Management
+
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/high_av_setup.png b/doc/book-enea-nfv-access-getting-started/doc/images/high_av_setup.png
index 23cc973..d119ecb 100644
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/high_av_setup.png and b/doc/book-enea-nfv-access-getting-started/doc/images/high_av_setup.png differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/vnf_space.png b/doc/book-enea-nfv-access-getting-started/doc/images/vnf_space.png
index 1a5ddab..57ed581 100755
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/vnf_space.png and b/doc/book-enea-nfv-access-getting-started/doc/images/vnf_space.png differ
--
cgit v1.2.3-54-g00ecf
From e55c3d2a23de3eac0ae2f312b27a478e041b48e8 Mon Sep 17 00:00:00 2001
From: iosc
Date: Fri, 19 Mar 2021 13:07:53 +0100
Subject: USERDOCAP-636 - all books changes
Change-Id: I944098c2d726657c91edff3d62dc4a40fc8df8bb
Signed-off-by: iosc
---
doc/Makefile | 8 +-
.../doc/about.xml | 2 +-
.../doc/book.xml | 2 +-
.../doc/licenses.xml | 4 +-
.../swcomp.mk | 2 +-
.../book-enea-nfv-access-auto-fw-th-user-guide.pdf | Bin 0 -> 401538 bytes
.../doc/automation_framework_test_harness.xml | 364 ++++++++++-----------
.../doc/book.xml | 2 +-
.../doc/components.xml | 51 ++-
.../doc/getting_started.xml | 32 +-
.../doc/overview.xml | 23 +-
.../doc/troubleshooting_guide.xml | 4 +-
.../swcomp.mk | 2 +-
.../doc/128t_vnf_router.xml | 6 +-
.../doc/appendix_4.xml | 4 +-
.../doc/appendix_5.xml | 6 +-
.../doc/book.xml | 2 +-
.../doc/clav_vnf_examples.xml | 4 +-
.../doc/enea_test_vnf_examples.xml | 12 +-
.../doc/forti_vnf_examples.xml | 8 +-
.../doc/introduction.xml | 4 +-
.../doc/service_chaining_128t_fortigate.xml | 4 +-
.../doc/vnf_chaining.xml | 10 +-
.../swcomp.mk | 2 +-
.../doc/advanced_configurations.xml | 178 +++++-----
.../doc/book.xml | 2 +-
.../doc/grafana.xml | 209 ++++++------
.../doc/installation_guide.xml | 256 +++++++--------
.../doc/introduction.xml | 46 +--
.../doc/log_collector.xml | 46 +--
.../doc/net_config_options.xml | 123 +++----
.../doc/troubleshooting.xml | 74 ++---
.../doc/upgrade_ena.xml | 79 ++---
.../doc/vnf_mg.xml | 102 +++---
doc/book-enea-nfv-access-getting-started/swcomp.mk | 2 +-
.../doc/about.xml | 2 +-
.../doc/book.xml | 2 +-
.../doc/licenses.xml | 10 +-
.../swcomp.mk | 2 +-
.../doc/about_release.xml | 36 +-
doc/book-enea-nfv-access-release-info/doc/book.xml | 2 +-
.../doc/known_bugs_and_limitations.xml | 37 +--
.../doc/main_changes.xml | 45 ++-
doc/book-enea-nfv-access-release-info/swcomp.mk | 2 +-
.../doc/book.xml | 2 +-
.../doc/configuration.xml | 6 +-
.../doc/overview.xml | 14 +-
.../doc/sample_test_cases.xml | 153 +++++----
.../swcomp.mk | 2 +-
.../doc/about.xml | 2 +-
.../doc/book.xml | 2 +-
.../swcomp.mk | 2 +-
.../doc/about.xml | 2 +-
.../doc/book.xml | 2 +-
.../swcomp.mk | 2 +-
55 files changed, 1002 insertions(+), 1000 deletions(-)
create mode 100644 doc/book-enea-nfv-access-auto-fw-th-user-guide/book-enea-nfv-access-auto-fw-th-user-guide.pdf
diff --git a/doc/Makefile b/doc/Makefile
index a0956d4..1a415b3 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -26,8 +26,8 @@ include init.mk
#BUILDBOOT_XML := book-enea-nfv-access-release-info/doc/build_boot_generated.xml
#BUILDBOOT_TEMPLATE := book-enea-nfv-access-release-info/doc/build_boot_template.xml
-PKGDIFF_GEN_XML := book-enea-nfv-access-release-info/doc/pkgdiff_generated.xml
-JIRA_ISSUES_GEN_XML := book-enea-nfv-access-release-info/doc/jiraissues_generated.xml
+#PKGDIFF_GEN_XML := book-enea-nfv-access-release-info/doc/pkgdiff_generated.xml
+#JIRA_ISSUES_GEN_XML := book-enea-nfv-access-release-info/doc/jiraissues_generated.xml
MACHINE_LIST_XML := book-enea-nfv-access-release-info/doc/machine_list_generated.xml
@@ -50,7 +50,7 @@ DOCBOOK_TO_BOOKDIR ?= yes
DOCBOOK_CLEANTMP ?= yes
#Components (books) in this subsystem. Now use all books found here
-COMPONENTS := book-enea-nfv-access-auto-fw-th-open-source book-enea-nfv-access-auto-fw-th-user-guide book-enea-nfv-access-cmc-example-usecases book-enea-nfv-access-example-usecases book-enea-nfv-access-getting-started book-enea-nfv-access-platform-open-source book-enea-nfv-access-getting-started book-enea-nfv-access-ucpem-open-source book-enea-nfv-access-telemetry-open-source book-enea-nfv-access-release-info book-enea-nfv-access-system-test-specification book-enea-nfv-access-evalkit
+COMPONENTS := book-enea-nfv-access-auto-fw-th-open-source book-enea-nfv-access-auto-fw-th-user-guide book-enea-nfv-access-cmc-example-usecases book-enea-nfv-access-example-usecases book-enea-nfv-access-getting-started book-enea-nfv-access-platform-open-source book-enea-nfv-access-ucpem-open-source book-enea-nfv-access-telemetry-open-source book-enea-nfv-access-release-info book-enea-nfv-access-system-test-specification book-enea-nfv-access-evalkit book-enea-nfv-access-auto-fw-open-source book-enea-nfv-access-auto-fw-user-guide
# --------------------------------------------------------------
@@ -184,7 +184,7 @@ endif
books: init
# BOOKPACKAGES is defined in all book-*/swcomp.mk
$(VERB)DISTRO_VERSION=`egrep '"EneaLinux_REL_VER">' $(ELTF_PARAMS_UPDATED) | sed 's/.*//;s/<\/phrase>.*//'` ; \
- BOOKVER="Enea NFV Access-$$DISTRO_VERSION"-$(shell date +"%Y.%m.%d"); \
+ BOOKVER="Enea Edge-$$DISTRO_VERSION"-$(shell date +"%Y.%m.%d"); \
for book in $(BOOKPACKAGES); do \
for format in $(FORMAT); do \
$(MAKE) -f $(DOCBOOKMAKE)/make_docbook_standalone.mk BOOK=$$book FORMAT=$$format BOOK_VER="$$BOOKVER" books || exit 10; \
diff --git a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/about.xml b/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/about.xml
index dbf06e3..4dc19aa 100644
--- a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/about.xml
+++ b/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/about.xml
@@ -6,7 +6,7 @@
This document contains the open source and license information
pertaining to the Automation Framework and Test Harness provided with
- Enea NFV Access .
diff --git a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/book.xml b/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/book.xml
index 3305873..f849ad4 100644
--- a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/book.xml
+++ b/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/book.xml
@@ -4,7 +4,7 @@
]>
- Enea NFV Access Automation Framework and Test Harness Open Source Report
+ Enea Edge Automation Framework and Test Harness Open Source ReportRelease Version
- Configuration and Automation Framework for the uCPE Manager
+ Configuration and Automation Framework for the Edge Manager
GUI.ENEA-SRC-R2
@@ -54,7 +54,7 @@
xmlns:xi="http://www.w3.org/2001/XInclude"
xpointer="element(EneaLinux_REL_VER/1)" />
- Configuration and Automation Framework for the uCPE Manager
+ Configuration and Automation Framework for the Edge Manager
GUI.ENEA-EXAMPLE-R2
diff --git a/doc/book-enea-nfv-access-auto-fw-th-open-source/swcomp.mk b/doc/book-enea-nfv-access-auto-fw-th-open-source/swcomp.mk
index 2f2e677..702e86f 100644
--- a/doc/book-enea-nfv-access-auto-fw-th-open-source/swcomp.mk
+++ b/doc/book-enea-nfv-access-auto-fw-th-open-source/swcomp.mk
@@ -6,5 +6,5 @@ BOOK_VER ?= $(REL_VER)-dev
DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
BOOKPACKAGES := book-enea-nfv-access-auto-fw-th-open-source
-BOOKDESC_$(BOOKPACKAGES) := "Enea NFV Access $(PROD_VER) AF&TH Open Source Report"
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge $(PROD_VER) AF&TH Open Source Report"
BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/book-enea-nfv-access-auto-fw-th-user-guide.pdf b/doc/book-enea-nfv-access-auto-fw-th-user-guide/book-enea-nfv-access-auto-fw-th-user-guide.pdf
new file mode 100644
index 0000000..5d601c1
Binary files /dev/null and b/doc/book-enea-nfv-access-auto-fw-th-user-guide/book-enea-nfv-access-auto-fw-th-user-guide.pdf differ
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 5e6ba24..a569d59 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,15 +11,15 @@
The /device folder contains Python scripts for
adding uCPE device(s), receiving uCPE events' reports, removing a uCPE
- device, waiting for a uCPE device to connect to the uCPE Manager, as well
+ device, waiting for a uCPE device to connect to the Enea Edge Management, as well
as scripts for adding and removing an offline configuration store. This
folder also contains scripts for uploading and removing an NFVA image into
- the uCPE Manager, and for installing and activating a NFVA image on a uCPE
+ the Enea Edge Management, and for installing and activating a NFVA image on a uCPE
Device.The /customScripts folder contains Python scripts
- for uploading custom scripts onto the uCPE Manager and uCPE device(s), for
- removing custom scripts from the uCPE Manager and uCPE device(s).
+ for uploading custom scripts onto the Enea Edge Management and uCPE device(s), for
+ removing custom scripts from the Enea Edge Management and uCPE device(s).
The /network folder contains Python scripts for
binding or unbinding a network interface to and from a uCPE device (DPDK
@@ -79,7 +79,7 @@
the path to the file describing the test cases to be performed against
the designated script.
- Steps for running the Python unit-test suite on the uCPE Manager
+ Steps for running the Python unit-test suite on the Enea Edge Management
are provided below.
@@ -88,16 +88,16 @@
$ python unittestSuite.py -h
Usage: unittestSuite.py [options]
-Run selected unit-test suite against Enea uCPE Manager.
+Run selected unit-test suite against Enea Edge Management.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-n DEVICENAME, --deviceName=DEVICENAME
Name of vCPE device (Virtual Infrastructure Manager)
-s SUITEFILE, --suite=SUITEFILE
@@ -234,8 +234,8 @@ consoleLoggingLevel = logging.INFO
username
- The user authentication used to log into the uCPE
- Manager. This can be overwritten by setting the Python
+ The user authentication used to log into the
+ Enea Edge Management. This can be overwritten by setting the Python
unit-test suite command line option
-u.
@@ -243,7 +243,7 @@ consoleLoggingLevel = logging.INFO
password
- The password used to log into the uCPE Manager. This
+ The password used to log into the Enea Edge Management. This
can be overwritten by setting the Python unit-test suite
command line option -p.
@@ -251,7 +251,7 @@ consoleLoggingLevel = logging.INFO
host
- The IP address of the uCPE Manager host. This can be
+ The IP address of the Enea Edge Management host. This can be
overwritten by setting the Python unit-test suite command line
option -H.
@@ -540,7 +540,7 @@ OKAdding a uCPE DeviceSteps for adding, configuring and running a uCPE device onto the
- uCPE manager are described below .
+ Enea Edge Management are described below .Script Options
@@ -548,16 +548,16 @@ OK
$ python addDevice.py -h
Usage: addDevice.py [options]
-Add a uCPE device in Enea uCPE Manager.
+Add a uCPE device in Enea Edge Management.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-f DEVICEFILE, --file=DEVICEFILE
File containing uCPE Information in JSON format
@@ -615,7 +615,7 @@ Options:
2019-03-07 17:33:10,756 - INFO: Add uCPE device
2019-03-07 17:33:10,975 - DEBUG: Login successful on host 'localhost'
2019-03-07 17:33:10,979 - DEBUG: Session token is: 508b6ea2-40ee-11e9-a81f525400d08e1d
-2019-03-07 17:33:11,049 - DEBUG: Add new device 'intelc3850-2' to uCPE Manager host
+2019-03-07 17:33:11,049 - DEBUG: Add new device 'intelc3850-2' to Enea Edge Management host
2019-03-07 17:33:11,483 - INFO: Done
2019-03-07 17:33:11,501 - DEBUG: Logging out and exiting....
@@ -624,7 +624,7 @@ Options:
Removing a uCPE Device
- Steps for removing a uCPE device from the uCPE manager are
+ Steps for removing a uCPE device from the Enea Edge Management are
described below.
@@ -633,16 +633,16 @@ Options:
$ python removeDevice.py -h
Usage: removeDevice.py [options]
-Remove a uCPE from Enea uCPE Manager.
+Remove a uCPE from Enea Edge Management.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-f DEVICEFILE, --file=DEVICEFILE
File containing uCPE Information in JSON format
@@ -689,7 +689,7 @@ Options:
2019-03-07 17:33:56,835 - INFO: Remove uCPE device
2019-03-07 17:33:56,856 - DEBUG: Login successful on host 'localhost'
2019-03-07 17:33:56,856 - DEBUG: Session token is: 6bebcb43-40ee-11e9-a81f525400d08e1d
-2019-03-07 17:33:56,856 - DEBUG: Delete device 'intelc3850-2' from uCPE Manager
+2019-03-07 17:33:56,856 - DEBUG: Delete device 'intelc3850-2' from Enea Edge Management
host
2019-03-07 17:33:56,875 - DEBUG: Found device with name 'intelc3850-2'
2019-03-07 17:33:57,159 - INFO: Done
@@ -701,7 +701,7 @@ host
Waiting a uCPE DeviceSteps and details for how to Wait a uCPE device to connect to the
- uCPE Manager after installation, are described below.
+ Enea Edge Management after installation, are described below.Script Options
@@ -709,16 +709,16 @@ host
$ python waitDeviceUp.py -h
Usage: waitDeviceUp.py [options]
-Wait for uCPE to connect to the Enea uCPE Manager after installation.
+Wait for uCPE to connect to the Enea Edge Management after installation.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-f DEVICEFILE, --file=DEVICEFILE
File containing uCPE Information in JSON format
-t TIMEOUT, --timeout=TIMEOUT
@@ -779,7 +779,7 @@ Options:
Printing the uCPE Device LogSteps and details on how to Print the events log for a specific
- uCPE device installed in the uCPE Manager, are explained below.
+ uCPE device installed in the Enea Edge Management, are explained below.
Script Options
@@ -787,14 +787,14 @@ Options:
$ python getEventsForUcpe.py -h
Usage: getEventsForUcpe.py [options]
-Print the events log for a specific uCPE installed in Enea uCPE Manager.
+Print the events log for a specific uCPE installed in Enea Edge Management.
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
+-u USERNAME, --username=USERNAME Enea Edge Management login username
+-p PASSWORD, --password=PASSWORD Enea Edge Management login password
+-H HOST, --host=HOST Enea Edge Management host name or IP address
-f DEVICEFILE, --file=DEVICEFILE File containing uCPE Information in JSON format
-s SEVERITY, --severity=SEVERITY Event severity level (Critical|Major|Minor)
@@ -869,10 +869,10 @@ 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-s STATE, --state=STATE
Enable/Disable
-n DEVICENAME, --device-name=DEVICENAME
@@ -936,10 +936,10 @@ 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-f NICFILE, --file=NICFILE
File containing network interface Information in JSON
format
@@ -1042,10 +1042,10 @@ 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-f NICFILE, --file=NICFILE
File containing network interface Information in JSON
format
@@ -1131,9 +1131,9 @@ Usage: getNetworkInterfaces.py [options]
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
+ -u USERNAME, --username=USERNAME Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-n DEVICENAME, --device-name=DEVICENAME Name of the uCPE to get network /
interfaces from
@@ -1215,10 +1215,10 @@ 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-f OVSFILE, --file=OVSFILE
File containing OVS bridge Information in JSON format
-n DEVICENAME, --device-name=DEVICENAME
@@ -1306,10 +1306,10 @@ 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-f OVSFILE, --file=OVSFILE
File containing OVS bridge Information in JSON format
-n DEVICENAME, --device-name=DEVICENAME
@@ -1380,7 +1380,7 @@ Options:
Onboarding a VNF Image Raw
- How to Onboard a VNF image in the uCPE Manager based upon its raw
+ How to Onboard a VNF image in the Enea Edge Management based upon its raw
constituents, is detailed in depth below.
@@ -1389,16 +1389,16 @@ Options:
$ python onboardVNFRaw.py -h
Usage: onboardVNFRaw.py [options]
-Onboard a VNF in Enea uCPE Manager based upon its raw constituents.
+Onboard a VNF in Enea Edge Management 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-f FTPUSERNAME, --ftpUsername=FTPUSERNAME
Username for FTP
-w FTPPASSWORD, --ftpPassword=FTPPASSWORD
@@ -1497,7 +1497,7 @@ Options:
Offboarding a VNF
- Steps on how to Offboard a VNF from the uCPE Manager are detailed
+ Steps on how to Offboard a VNF from the Enea Edge Management are detailed
below.
@@ -1506,16 +1506,16 @@ Options:
$ python offboardVNF.py -h
Usage: offboardVNF.py [options]
-Offboard a VNF from Enea uCPE Manager.
+Offboard a VNF from Enea Edge Management.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-n VNFDNAME, --vnfdName=VNFDNAME
Name of VNF descriptor to offboard
@@ -1563,7 +1563,7 @@ Options:
Instantiating a VNF
- Instantiating a VNF via the uCPE Manager is detailed below.
+ Instantiating a VNF via the Enea Edge Management is detailed below.Script Options
@@ -1571,16 +1571,16 @@ Options:
$ python instantiateVNFI.py -h
Usage: instantiateVNFI.py [options]
-Instantiate a VNF via Enea uCPE Manager.
+Instantiate a VNF via Enea Edge Management.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-t VNFTYPE, --vnfType=VNFTYPE
VNF Type (Name of VNF descriptor)
-n VIMDEVICENAME, --device-name=VIMDEVICENAME
@@ -1642,7 +1642,7 @@ License("vnf_config/fortigateImage/fortigateLicense.lic")
Controlling a VNF Instance
- How to Control a VNF instance from the Enea uCPE Manager is
+ How to Control a VNF instance from the Enea Edge Management is
detailed below.
@@ -1651,7 +1651,7 @@ License("vnf_config/fortigateImage/fortigateLicense.lic")
become unresponsive. Depending on the actual VNF, the time required
between life-cycle operations may vary from several seconds to half a
minute or even more. If a VNF becomes unresponsive, the only possible
- action is to "Force Delete" the instance from the uCPE Manager.
+ action is to "Force Delete" the instance from the Enea Edge Management.
@@ -1660,16 +1660,16 @@ License("vnf_config/fortigateImage/fortigateLicense.lic")
$ python controlVNFI.py -h
Usage: controlVNFI.py [options]
-Controls a VNF instance from Enea uCPE Manager.
+Controls a VNF instance from Enea Edge Management.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-i VNFINSTANCENAME, --vnfInstanceName=VNFINSTANCENAME
Name of VNF instance
-n VIMDEVICENAME, --device-name=VIMDEVICENAME
@@ -1736,7 +1736,7 @@ fortigateFWInstance -c stop
Destroying a VNF InstanceSteps and options on how to Destroy a VNF instance from the Enea
- uCPE Manager are described below.
+ Edge Management are described below.Script Options
@@ -1744,16 +1744,16 @@ fortigateFWInstance -c stop
$ python destroyVNFI.py -h
Usage: destroyVNFI.py [options]
-Destroys a VNF instance from Enea uCPE Manager.
+Destroys a VNF instance from Enea Edge Management.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-i VNFINSTANCENAME, --vnfInstanceName=VNFINSTANCENAME
Name of VNF instance
-n VIMDEVICENAME, --device-name=VIMDEVICENAME
@@ -1801,28 +1801,28 @@ fortigateFWInstance
- Uploading a NFV Access image onto the Enea uCPE Manager
+ Uploading a Enea Edge image onto the Enea Edge Management
- Steps and options on how to Upload a NFV Access image onto the
- Enea uCPE Manager are described below.
+ Steps and options on how to Upload a Enea Edge image onto the
+ Enea Edge Management are described below.Script Options$ python uploadImage.py -h
-Upload NFVA image on uCPE Manager
+Upload NFVA image on Enea Edge Management
Usage: uploadImage.py [options]
-Upload NFVA image on uCPE Manager.
+Upload NFVA image on Enea Edge Management.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-f FILENAME, --fileName=FILENAME
Path to NFVA image file name
-m MODULE, --module=MODULE
@@ -1838,7 +1838,7 @@ Options:
Configuring the JSON File
- The JSON configuration file needed to upload a NFV Access image
+ The JSON configuration file needed to upload a Enea Edge image
should contain a list of dictionaries. Each dictionary indicates the
test case name and the test case arguments passed to the
uploadImage Python module.
@@ -1846,7 +1846,7 @@ Options:
Sample unit-test JSON file
format:[
{
- "name": "Upload NFVA image on uCPE Manager",
+ "name": "Upload NFVA image on Enea Edge Management",
"args": "-f /tmp/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d"
}
]
@@ -1861,7 +1861,7 @@ Options:
$ python uploadImage.py -u admin -p admin -H localhost \
-f /tmp/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d
2020-02-28 11:38:42,754 - DEBUG: Started logging
-2020-02-28 11:38:42,755 - INFO: Upload NFVA image on uCPE Manager
+2020-02-28 11:38:42,755 - INFO: Upload NFVA image on Enea Edge Management
2020-02-28 11:38:43,307 - DEBUG: Login successful on host 'localhost'
2020-02-28 11:38:43,308 - DEBUG: Session token is: 7da3f960-5a16-11ea-a3de-5652b3ac1c30
2020-02-28 11:41:29,148 - INFO: Verify image validation flag
@@ -1874,29 +1874,29 @@ Options:
- Deleting a NFV Access image file from the Enea uCPE
- Manager
+ Deleting a Enea Edge image file from the
+ Enea Edge Management
- Steps and options on how to Delete a NFV Access image from the
- Enea uCPE Manager are described below.
+ Steps and options on how to Delete a Enea Edge image from the
+ Enea Edge Management are described below.Script Options$ python deleteUpgradeFile.py -h
-Delete NFVA image from uCPE Manager
+Delete NFVA image from Enea Edge Management
Usage: deleteUpgradeFile.py [options]
-Delete NFVA image from uCPE Manager.
+Delete NFVA image from Enea Edge Management.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-i IMAGENAME, --imageName=IMAGENAME
NFVA Image name
-m MODULE, --module=MODULE
@@ -1909,7 +1909,7 @@ Options:
Configuring the JSON File
- The JSON configuration file needed to delete a NFV Access image
+ The JSON configuration file needed to delete a Enea Edge image
should contain a list of dictionaries. Each dictionary indicates the
test case name and the test case arguments passed to the
deleteUpgradeFile Python module.
@@ -1917,7 +1917,7 @@ Options:
Sample unit-test JSON file
format:[
{
- "name": "Delete NFVA image on uCPE Manager",
+ "name": "Delete NFVA image on Enea Edge Management",
"args": "-i enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2"
}
]
@@ -1932,7 +1932,7 @@ Options:
$ python deleteUpgradeFile.py -u admin -p admin -H localhost -i \
enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2
2020-02-28 12:06:20,111 - DEBUG: Started logging
-2020-02-28 12:06:20,112 - INFO: Delete NFVA image from uCPE Manager
+2020-02-28 12:06:20,112 - INFO: Delete NFVA image from Enea Edge Management
2020-02-28 12:06:20,210 - DEBUG: Login successful on host 'localhost'
2020-02-28 12:06:20,211 - DEBUG: Session token is: 594b2d50-5a1a-11ea-a3de-5652b3ac1c30
2020-02-28 12:06:20,255 - INFO: The image \
@@ -1948,30 +1948,30 @@ image was successfully removed
- Installing and activating a NFV Access image on an uCPE device
- from the Enea uCPE Manager
+ Installing and activating a Enea Edge image on an uCPE device
+ from the Enea Edge Management
- Steps and options on how to Install and Activate a NFV Access
- image on an uCPE device from the Enea uCPE Manager are described
+ Steps and options on how to Install and Activate a Enea Edge
+ image on an uCPE device from the Enea Edge Management are described
below.Script Options$ python installAndActivate.py -h
-Install and activate NFVA image from uCPE Manager
+Install and activate NFVA image from Enea Edge Management
Usage: installAndActivate.py [options]
-Install and activate NFVA image from uCPE Manager.
+Install and activate NFVA image from Enea Edge Management.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-i IMAGENAME, --imageName=IMAGENAME
Image name
-m MODULE, --module=MODULE
@@ -1989,8 +1989,8 @@ Options:
Configuring the JSON File
- The JSON configuration file needed to install and activate a NFV
- Access image on a uCPE device from the Enea uCPE Manager should
+ The JSON configuration file needed to install and activate a Enea Edge
+ image on a uCPE device from the Enea Edge Management should
contain a list of dictionaries. Each dictionary indicates the test
case name and the test case arguments passed to the
installAndActivate Python module.
@@ -2000,7 +2000,7 @@ Options:
[
{
- "name": "Install and activate NFVA image on uCPE device from uCPE Manager",
+ "name": "Install and activate NFVA image on uCPE device from Enea Edge Management",
"args": "-i enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d -d inteld1521-16"
}
]
@@ -2015,7 +2015,7 @@ Options:
$ python installAndActivate.py -u admin -p admin -H localhost -i \
enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d -d inteld1521-16
2020-02-28 12:36:46,137 - DEBUG: Started logging
-2020-02-28 12:36:46,138 - INFO: Install and activate NFVA image from uCPE Manager
+2020-02-28 12:36:46,138 - INFO: Install and activate NFVA image from Enea Edge Management
2020-02-28 12:36:46,288 - DEBUG: Login successful on host 'localhost'
2020-02-28 12:36:46,288 - DEBUG: Session token is: 99b7cde0-5a1e-11ea-a3de-5652b3ac1c30
2020-02-28 12:36:46,325 - DEBUG: Found device with name 'inteld1521-16'
@@ -2055,10 +2055,10 @@ enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [20]
Clearing information about completed upgrades of uCPE devices
- from the Enea uCPE Manager
+ from the Enea Edge Management
Steps and options on how to clear information about completed
- upgrades of uCPE devices from the Enea uCPE Manager are described
+ upgrades of uCPE devices from the Enea Edge Management are described
below.
@@ -2074,10 +2074,10 @@ 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
Mandatory options:
-H/--host
@@ -2087,7 +2087,7 @@ Options:
Configuring the JSON FileNo JSON configuration file is needed to clear information about
- completed upgrades of uCPE devices from the Enea uCPE Manager. The
+ completed upgrades of uCPE devices from the Enea Edge Management. The
clearCompletedUpgradesInfo Python module can be
run without a JSON file as a parameter.
@@ -2110,10 +2110,10 @@ Options:
- Uploading a Custom Script to the uCPE Manager
+ Uploading a Custom Script to the Enea Edge Management
- Steps and options on how to upload a custom script to the uCPE
- Manager are described below.
+ Steps and options on how to upload a custom script to the
+ Enea Edge Management are described below.Script Options
@@ -2122,16 +2122,16 @@ Options:
2020-04-14 10:26:23,582 - INFO: Upload Custom Script
Usage: upload.py [options]
-Add a Custom Script to Enea uCPE Manager
+Add a Custom Script to Enea Edge Management
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-f CUSTOMSCRIPT, --file=CUSTOMSCRIPT
Custom Script File
-e PHASE, --phase=PHASE
@@ -2147,7 +2147,7 @@ Options:
Configuring the JSON FileThe JSON configuration file needed to upload a Custom Script to
- the uCPE Manager must contain a list of dictionaries. Each dictionary
+ the Enea Edge Management must contain a list of dictionaries. Each dictionary
indicates the test case name and the test case arguments passed to the
customScripts/upload Python module.
@@ -2156,7 +2156,7 @@ Options:
[
{
- "name": "Uploading a Custom Script to the uCPE Manager",
+ "name": "Uploading a Custom Script to the Enea Edge Management",
"args": "-f ../../lab_config/customScripts/test_success_after_always \
-e always-after-startup"
}
@@ -2175,7 +2175,7 @@ Options:
2020-04-14 14:08:02,915 - INFO: Upload Custom Script
2020-04-14 14:08:02,994 - DEBUG: Login successful on host '172.24.3.109'
2020-04-14 14:08:02,995 - DEBUG: Session token is: 97544990-7e48-11ea-835c-02423a1c239f
-2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to uCPE Manager. \
+2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to Enea Edge Management. \
Content: #!/bin/bash
echo test_success_after_always
2020-04-14 14:08:03,138 - INFO: Done
@@ -2184,11 +2184,11 @@ echo test_success_after_always
- Uploading a Custom Script from the uCPE Manager to a
+ Uploading a Custom Script from the Enea Edge Management to a
Device
- Steps and options on how to upload a custom script from the uCPE
- Manager to a Device are described below.
+ Steps and options on how to upload a custom script from the
+ Enea Edge Management to a Device are described below.Script Options
@@ -2203,12 +2203,12 @@ 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME
- Custom Script Name that resides on Enea uCPE Manager
+ Custom Script Name that resides on Enea Edge Management
-e PHASE, --phase=PHASE
Execution phase. Must be one of the following: once-
before-startup | always-before-startup | once-after-
@@ -2225,7 +2225,7 @@ Options:
Configuring the JSON FileThe JSON configuration file needed to upload a Custom Script
- from the uCPE Manager to a Device must contain a list of dictionaries.
+ from the Enea Edge Management to a Device must contain a list of dictionaries.
Each dictionary indicates the test case name and the test case
arguments passed to the
customScripts/uploadOnDevice Python
@@ -2236,7 +2236,7 @@ Options:
[
{
-"name": "Uploading a Custom Script from uCPE Manager to device",
+"name": "Uploading a Custom Script from Enea Edge Management to device",
"args": "-c test_success_after_always -e always-after-startup -n inteld1521-6"
}
]
@@ -2263,16 +2263,16 @@ test_success_after_always -e always-after-startup -n inteld1521-6
- Removing a Custom Script from the uCPE Manager
+ Removing a Custom Script from the Enea Edge Management
- Steps and options on how to remove a custom script from the uCPE
- Manager are described below.
+ Steps and options on how to remove a custom script from the
+ Enea Edge Management are described below.Script Options$ python customScripts/delete.py -h
-2020-04-14 14:36:52,010 - INFO: Delete Custom Script on uCPE Manager
+2020-04-14 14:36:52,010 - INFO: Delete Custom Script on Enea Edge Management
Usage: delete.py [options]
Delete a Custom Script from a Device
@@ -2281,10 +2281,10 @@ 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME
Custom Script Name that resides on a Device
-e PHASE, --phase=PHASE
@@ -2300,8 +2300,8 @@ Options:
Configuring the JSON FileThe JSON configuration file needed to remove a Custom Script
- from the uCPE Managerdid you mean device or uCPE
- Manager? must contain a list of dictionaries. Each dictionary
+ from the Enea Edge Managementdid you mean device or
+ Enea Edge Management? must contain a list of dictionaries. Each dictionary
indicates the test case name and the test case arguments passed to the
customScripts/delete Python module.
@@ -2310,7 +2310,7 @@ Options:
[
{
-"name": "Removing a Custom Script from uCPE Manager",
+"name": "Removing a Custom Script from Enea Edge Management",
"args": "-c test_success_after_always -e always-after-startup"
}
]
@@ -2325,12 +2325,12 @@ Options:
$ python automation_framework/customScripts/delete.py -c \
test_success_after_always -e always-after-startup
2020-04-14 14:39:22,042 - DEBUG: Started logging
-2020-04-14 14:39:22,042 - INFO: Delete Custom Script on uCPE Manager
+2020-04-14 14:39:22,042 - INFO: Delete Custom Script on Enea Edge Management
2020-04-14 14:39:22,081 - DEBUG: Login successful on host '172.24.3.109'
2020-04-14 14:39:22,082 - DEBUG: Session token is: f75a83a0-7e4c-11ea-835c-02423a1c239f
2020-04-14 14:39:22,099 - DEBUG: Found custom script: 'test_success_after_always'
2020-04-14 14:39:22,099 - DEBUG: Delete script test_success_after_always, \
-phase always-after-startup from uCPE Manager
+phase always-after-startup from Enea Edge Management
2020-04-14 14:39:22,118 - INFO: Done
2020-04-14 14:39:22,135 - DEBUG: Logging out and exiting...
@@ -2355,10 +2355,10 @@ 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME
Custom Script Name that resides on a Device
-e PHASE, --phase=PHASE
@@ -2469,7 +2469,7 @@ phase always-after-startup from inteld1521-6
- Uploading a Custom Script to the uCPE Manager
+ Uploading a Custom Script to the Enea Edge Management$ python automation_framework/customScripts/upload.py \
-f lab_config/customScripts/test_success_after_always -e always-after-startup
@@ -2477,7 +2477,7 @@ phase always-after-startup from inteld1521-6
2020-04-14 14:08:02,915 - INFO: Upload Custom Script
2020-04-14 14:08:02,994 - DEBUG: Login successful on host '172.24.3.109'
2020-04-14 14:08:02,995 - DEBUG: Session token is: 97544990-7e48-11ea-835c-02423a1c239f
-2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to uCPE Manager. \
+2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to Enea Edge Management. \
Content: #!/bin/bash
echo test_success_after_always
2020-04-14 14:08:03,138 - INFO: Done
@@ -2485,7 +2485,7 @@ echo test_success_after_always
- Uploading a Custom Script from the uCPE Manager to a
+ Uploading a Custom Script from the Enea Edge Management to a
Device$ python automation_framework/customScripts/uploadOnDevice.py -c \
@@ -2517,17 +2517,17 @@ phase always-after-startup from inteld1521-6
- Removing a Custom Script from the uCPE Manager
+ Removing a Custom Script from the Enea Edge Management$ python automation_framework/customScripts/delete.py -c \
test_success_after_always -e always-after-startup
2020-04-14 14:39:22,042 - DEBUG: Started logging
-2020-04-14 14:39:22,042 - INFO: Delete Custom Script on uCPE Manager
+2020-04-14 14:39:22,042 - INFO: Delete Custom Script on Enea Edge Management
2020-04-14 14:39:22,081 - DEBUG: Login successful on host '172.24.3.109'
2020-04-14 14:39:22,082 - DEBUG: Session token is: f75a83a0-7e4c-11ea-835c-02423a1c239f
2020-04-14 14:39:22,099 - DEBUG: Found custom script: 'test_success_after_always'
2020-04-14 14:39:22,099 - DEBUG: Delete script test_success_after_always, \
-phase always-after-startup from uCPE Manager
+phase always-after-startup from Enea Edge Management
2020-04-14 14:39:22,118 - INFO: Done
2020-04-14 14:39:22,135 - DEBUG: Logging out and exiting...
@@ -2536,13 +2536,13 @@ phase always-after-startup from uCPE Manager
Adding an Offline Configuration Store
- Steps and options on how to add a Config Store in the Enea uCPE
- Manager are described below.
+ Steps and options on how to add a Config Store in the
+ Enea Edge Management are described below.Script Options
- To add a config store in the Enea uCPE Manager use the
+ To add a config store in the Enea Edge Management 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
@@ -2566,7 +2566,7 @@ phase always-after-startup from uCPE Manager
Running the Python Module
- Adding an offline config store in the Enea uCPE Manager using
+ Adding an offline config store in the Enea Edge Management using
the command line:python automation_framework/device/addConfigStore.py -f \
@@ -2599,10 +2599,10 @@ 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-s STORE, --store=STORE
Offline config store name
-d DEVICE, --device=DEVICE
@@ -2645,10 +2645,10 @@ 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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-d DEVICE, --device=DEVICE
Device Name
@@ -2670,15 +2670,15 @@ Options:
- Removing an Offline Configuration Store in the Enea uCPE
- Manager
+ Removing an Offline Configuration Store in the
+ Enea Edge ManagementSteps and options on how to remove an upload of a Config Store
- from the uCPE Manager are described below.
+ from the Enea Edge Management are described below.Modifications of an Offline Configurations Store are not
- possible post deployment in the uCPE Manager, as there is no option
+ possible post deployment in the Enea Edge Management, 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
@@ -2689,23 +2689,23 @@ Options:
Script options
- To remove a config store from the uCPE Manager use the
+ To remove a config store from the Enea Edge Management use the
removeConfigStore.py script detailed
below.python removeConfigStore.py -h
Usage: removeConfigStore.py [options]
-Remove a config store from Enea uCPE Manager.
+Remove a config store from Enea Edge Management.
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
+ Enea Edge Management login username
-p PASSWORD, --password=PASSWORD
- Enea uCPE Manager login password
- -H HOST, --host=HOST Enea uCPE Manager host name or IP address
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
-o STORENAME, --store-name=STORENAME
Name of the Offline Config Store
@@ -2770,8 +2770,8 @@ Options:
Manual.The /uCPEM_config directory stores JSON
- configuration files needed for the setup of the uCPE Manager used by TH.
- One configuration file is needed per uCPE Manager installation, to be used
+ configuration files needed for the setup of the Enea Edge Management used by TH.
+ One configuration file is needed per Enea Edge Management installation, to be used
in the TH.The /vnf_image directory stores the VNF Images
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/book.xml b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/book.xml
index 0b96de2..6398606 100644
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/book.xml
+++ b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/book.xml
@@ -4,7 +4,7 @@
]>
- Enea NFV Access Automation Framework and Test Harness User Guide
+ Enea Enea Edge Automation Framework and Test Harness User GuideRelease Version
Components
- An overview of the Enea NFV Access Runtime Platform and the uCPE
- Manager in cooperation with the Automation Framework and Test Harness, will
+ An overview of the Enea Edge Runtime and the Edge Management
+ in cooperation with the Automation Framework and Test Harness, will
be presented in detail.
@@ -18,23 +18,23 @@
- Enea NFV Access
+ Enea Edge
- Enea NFV Access is comprised of the Enea uCPE Manager and the Enea
- NFV Access Runtime Platform.
+ Enea Edge is comprised of the Enea Edge Management and the Enea
+ Edge Runtime.
- Enea uCPE Manager
+ Enea Edge Management
- The Enea uCPE Manager application needs to be installed on a
+ The Enea Edge Management application needs to be installed on a
supported platform. Upon installation, the system will be set up to
- manage Enea NFV Access "devices", these are the virtualized CPE devices
+ manage Enea Edge "devices", these are the virtualized CPE devices
used in testing.
- For more on Enea uCPE Manager installation instructions, please
+ For more on Enea Edge Management installation instructions, please
refer to the section on how to Installing the Enea uCPE Manager in the
+ targetptr="install_ucpe_mg">Installing the Enea Edge Management in the
@@ -42,38 +42,37 @@
- Enea NFV Access Runtime Platform
+ Enea Edge Runtime
- One or more uCPE devices running the Enea NFV Access Runtime
- Platform are required as hosts to run the VNF(s). The uCPE device is
- known to the uCPE Manager as the "VcpeAgent" device module.
+ One or more uCPE devices running the Enea Edge Runtime
+ are required as hosts to run the VNF(s). The uCPE device is
+ known to the Enea Edge Management as the "VcpeAgent" device module.Before running any use case with the Automation Framework or the
- Test Harness, make sure the uCPE device(s) have been added to the uCPE
- Manager.
+ Test Harness, make sure the uCPE device(s) have been added to the Edge Management.Adding a VcpeAgent device can be done via two methods:
- Through the uCPE Manager GUI. Add the device using the
+ Through the Enea Edge Management GUI. Add the device using the
appropriate parameters by launching the UI under
Devices -> Manage in the
main screen.
- REST API. Invoke the uCPE Manager REST API to add a
+ REST API. Invoke the Enea Edge Management REST API to add a
device.
- For more on Enea NFV Access installation instructions, please
+ For more on Enea Edge installation instructions, please
refer to chapter Preparing the USB stick for installation of the
- Enea NFV Access Runtime Platform in the
@@ -85,14 +84,14 @@
Automation FrameworkTesting can be performed by running the available Python scripts
- against the uCPE Manager REST API (Python samples supplied). This can be
+ against the Enea Edge Management REST API (Python samples supplied). This can be
done by using the Python scripts individually or by using the Python
unit-test suite that is able to automatically run test-cases defined for
each available Python script.In either case, it is desirable to use a different host (instead of
- running the tests on the same system as the uCPE Manager) in order to
- ensure that the uCPE Manager is setup and installed correctly in terms of
+ running the tests on the same system as the Enea Edge Management) in order to
+ ensure that the Enea Edge Management is setup and installed correctly in terms of
allowing external users to access it and use it effectively.
@@ -102,7 +101,7 @@
The Test Harness (TH) provides a way for driving configuration with
Ansible Playbooks, by running the python modules from the Automation
Framework (AF) and by direct connection over SSH to the boards that run
- Enea NFV Access.
+ Enea Edge.The Test Harness includes an automated test suite that
contains:
@@ -110,14 +109,14 @@
VNF, Device and Network Smoke Test Cases. A sample test suite
- that acts as basic smoke tests for Enea NFV Access and also as a
+ that acts as basic smoke tests for Enea Edge and also as a
sanity-check test suite for the AF and TH.VNF Deployment and Lifecycle. A sample test suite that verifies
the instantiation, lifecycle control and destruction of a VNF for Enea
- NFV Access.
+ Edge.
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/getting_started.xml b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/getting_started.xml
index eee6636..97666cf 100644
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/getting_started.xml
+++ b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/getting_started.xml
@@ -29,7 +29,7 @@
The Automation Framework and Test Harness installation may be done
- on the same machine used for uCPE Manager installation, although this is
+ on the same machine used for Enea Edge Management installation, although this is
not encouraged. For more details see section Automation Framework in the
- uCPE Manager Host
+ Enea Edge Management Host
Requirements
@@ -82,12 +82,12 @@
- uCPE Manager installed.
+ Enea Edge Management installed.
- For details on how to install the uCPE Manager, see For details on how to install the Enea Edge Management, see Installing the Enea uCPE Manager in the
+ targetptr="install_ucpe_mg">Installing the Enea Edge Management in the
@@ -111,13 +111,13 @@
- Enea NFV Access Runtime Platform installed.
+ Enea Edge Runtime installed.
- For information on how to install Enea NFV Access refer to
+ For information on how to install Enea Edge refer to
Preparing the USB stick for installation
- of the Enea NFV Access Runtime Platform in the
@@ -155,7 +155,7 @@
- Enea NFV Access Runtime Platform installed.
+ Enea Edge Runtime installed.
@@ -180,16 +180,16 @@
- Set up the uCPE Manager which will be used by the TH:
+ Set up the Enea Edge Management which will be used by the TH:
- Create the uCPE Manager JSON config file in the
+ Create the Enea Edge Management JSON config file in the
<AF-TH-install-dir>/uCPEM_config/
directory:{
-"ucpe_usr":"uCPE Manager Username",
-"ucpe_pass":"uCPE Manager Password",
-"ucpe_host":"uCPE Manager IP/Hostname",
+"ucpe_usr":"Enea Edge Management Username",
+"ucpe_pass":"Enea Edge Management Password",
+"ucpe_host":"Enea Edge Management IP/Hostname",
"ftp_usr":"FTP Username",
"ftp_pass":"FTP Password",
"ftp_port":"FTP Port"
@@ -225,10 +225,10 @@
source
<AF-TH-install-dir>/testHarness-venv/bin/activate.
- Furthermore, if a user wants to use a new uCPE Manager instance for
+ Furthermore, if a user wants to use a new Enea Edge Management instance for
a new session, the user also has to re-run the
setupuCPEManager.yml playbook with the corresponding
- JSON config for the new uCPE Manager instance.
+ JSON config for the new Enea Edge Management instance.Automation Framework and Test Harness History Information can be
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/overview.xml b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/overview.xml
index eadc1d5..b2486a0 100644
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/overview.xml
+++ b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/overview.xml
@@ -3,21 +3,20 @@
OverviewThis document describes the Automation Framework and Test Harness for
- Enea NFV Access, along with instructions regarding the necessary steps to
+ Enea Edge, along with instructions regarding the necessary steps to
run these software tools.DescriptionThe Automation Framework provides a way for driving configuration
- with Python scripting. It complements the Enea uCPE Manager GUI and uses
- the northbound REST APIs, given to provide full usability of the Enea uCPE
- Manager features.
+ with Python scripting. It complements the Enea Edge Management GUI and uses
+ the northbound REST APIs, given to provide full usability of the Enea Management
+ features.The Test Harness is based on running Ansible Playbooks to complete
different test cases, which make use of the Automation Framework Python
- modules and/or direct commands on the uCPE devices running the Enea NFV
- Access Runtime Platform.
+ modules and/or direct commands on the uCPE devices running the Enea Edge Runtime.
@@ -39,10 +38,10 @@
- Enea NFV Access
+ Enea Edge
- The Enea NFV Access (with ODM) Runtime Platform and the
- Enea uCPE Manager.
+ The Enea Edge (with ODM) Runtime and the
+ Enea Edge Management.
@@ -66,7 +65,7 @@
AF
- Automation Framework for Enea NFV Access.
+ Automation Framework for Enea Edge.
@@ -162,11 +161,11 @@
TH
- Test Harness for Enea NFV Access.
+ Test Harness for Enea Edge.
- uCPE Manager
+ Enea Edge ManagementEnea Universal Customer Premises Equipment Manager.
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/troubleshooting_guide.xml b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/troubleshooting_guide.xml
index f51fe11..a5cd664 100644
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/troubleshooting_guide.xml
+++ b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/troubleshooting_guide.xml
@@ -21,11 +21,11 @@
- When setting up the uCPE Manager to be used by the TH through the
+ When setting up the Enea Edge Management to be used by the TH through the
setupuCPEManager.yml Playbook, if the uCPE
username/password/host are incorrect or are missing, all the Sample test
cases will fail. If the FTP username/password/port are wrong or are
- missing, the tests that require file transfer to the uCPE Manager will
+ missing, the tests that require file transfer to the Enea Edge Management will
fail.
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/swcomp.mk b/doc/book-enea-nfv-access-auto-fw-th-user-guide/swcomp.mk
index 9f0a075..6b65cff 100755
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/swcomp.mk
+++ b/doc/book-enea-nfv-access-auto-fw-th-user-guide/swcomp.mk
@@ -6,5 +6,5 @@ BOOK_VER ?= $(REL_VER)-dev
DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
BOOKPACKAGES := book-enea-nfv-access-auto-fw-th-user-guide
-BOOKDESC_$(BOOKPACKAGES) := "Enea NFV Access $(PROD_VER) Automation Framework and Test Harness User Guide"
+BOOKDESC_$(BOOKPACKAGES) := "Enea Enea Edge $(PROD_VER) Automation Framework and Test Harness User Guide"
BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/128t_vnf_router.xml b/doc/book-enea-nfv-access-example-usecases/doc/128t_vnf_router.xml
index 7ba8a7b..89692b0 100644
--- a/doc/book-enea-nfv-access-example-usecases/doc/128t_vnf_router.xml
+++ b/doc/book-enea-nfv-access-example-usecases/doc/128t_vnf_router.xml
@@ -68,7 +68,7 @@
Configuring Network Interfaces on uCPE
devices:
- Add the trgt uCPE device into the uCPE Manager:
+ Add the trgt uCPE device into Enea Edge Management:
Devices -> Manage -> Add.Fill in the required fields with the following data:
@@ -266,8 +266,8 @@
CreateThe system will automatically select the
- physical interface that has access to the uCPE
- Manager.
+ physical interface that has access to Enea Edge
+ Management.
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/appendix_4.xml b/doc/book-enea-nfv-access-example-usecases/doc/appendix_4.xml
index 45689e5..0e207ae 100644
--- a/doc/book-enea-nfv-access-example-usecases/doc/appendix_4.xml
+++ b/doc/book-enea-nfv-access-example-usecases/doc/appendix_4.xml
@@ -1,6 +1,6 @@
- Running Enea Automation Framework tests
+ Running Enea Automation Framework and Test HarnessFor more detailed information regarding the Automation Framework and
Test Harness please see the Before starting the two usecases detailed in the following appendix,
- the uCPE Device needs to be added into the uCPE Manager.
+ the uCPE Device needs to be added into Enea Edge Management.To properly set up the Automation Framework and Test Harness please
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 71dee09..67f38e5 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
@@ -1,6 +1,6 @@
- Example Tests Results using the Automation Framework
+ Example Tests Results using the Automation Framework and Test HarnessIn order to run the following example usecases, certain configuration
file entries need to be modified according to the network setup that it will
@@ -39,7 +39,7 @@
"maintMode": "false",
"version": "2.2.3",
"deviceId": "inteld1521-17"
-}The IP address of the uCPE Manager that will be used in
+}The IP address of Enea Edge Management that will be used in
these examples is 172.24.3.92.The FortiGate and 128T VNF images need to be copied into the
@@ -138,7 +138,7 @@ OK
Use-case 2: Service Chaining 128T - Fortigate Example
- Usecase
+ Use-case
> python unittestSuite.py -u admin -p admin -H 172.24.3.92 -n inteld1521-17 \
-s 128t_FG_SFCDeploy.json -d "128T - Fortigate SFC Deployment"
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/book.xml b/doc/book-enea-nfv-access-example-usecases/doc/book.xml
index eb8b0c8..9879c28 100644
--- a/doc/book-enea-nfv-access-example-usecases/doc/book.xml
+++ b/doc/book-enea-nfv-access-example-usecases/doc/book.xml
@@ -4,7 +4,7 @@
]>
- Enea NFV Access Example Use-cases
+ Enea Edge Example Use-casesRelease Version
VNF Configuration files. These files are provided with your Enea
- NFV Access release:
+ Edge release:clavister-cloudinit.conf.
@@ -333,7 +333,7 @@ root@qemux86-64:~# iperf3 -c 192.168.10.10
VNF Configuration files. These files are provided with your Enea
- NFV Access release:
+ Edge release:clavister-cloudinit.conf.enea-vnf-iperf-client.conf.
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/enea_test_vnf_examples.xml b/doc/book-enea-nfv-access-example-usecases/doc/enea_test_vnf_examples.xml
index 1f10dbf..bee5a63 100644
--- a/doc/book-enea-nfv-access-example-usecases/doc/enea_test_vnf_examples.xml
+++ b/doc/book-enea-nfv-access-example-usecases/doc/enea_test_vnf_examples.xml
@@ -17,7 +17,7 @@
- 2 Network Interfaces. One for the uCPE manager and one for data
+ 2 Network Interfaces. One for Enea Edge Management and one for data
traffic.
@@ -35,7 +35,7 @@
VNF Configuration files. These files are provided with your Enea
- NFV Access release:
+ Edge release:
enea-vnf-testpmd-fwd.conf.
@@ -134,7 +134,7 @@
- Instantiate the Enea NFV Access TestPMD forwarding VNF on uCPE
+ Instantiate the Enea Edge TestPMD forwarding VNF on uCPE
Device 2 by filling the required fields with the following
values:
@@ -168,7 +168,7 @@
- Instantiate the Enea NFV Access TestPMD termination VNF on
+ Instantiate the Enea Edge TestPMD termination VNF on
uCPE Device 2 by filling the required fields with the following
values:
@@ -218,8 +218,8 @@
testpmd_term.
- The flow rules can be described using either the uCPE
- manager interface or the configuration files.
+ The flow rules can be described using either the Enea Edge
+ Management interface or the configuration files.
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/forti_vnf_examples.xml b/doc/book-enea-nfv-access-example-usecases/doc/forti_vnf_examples.xml
index 36c7114..bb38140 100644
--- a/doc/book-enea-nfv-access-example-usecases/doc/forti_vnf_examples.xml
+++ b/doc/book-enea-nfv-access-example-usecases/doc/forti_vnf_examples.xml
@@ -50,7 +50,7 @@
- VNF Configuration file(s), provided with your Enea NFV Access
+ VNF Configuration file(s), provided with your Enea Edge
release: fortigate-basic-fw.conf.
@@ -93,7 +93,7 @@
- Connect ETH0 to the Lab Network (for Enea uCPE Manager
+ Connect ETH0 to the Lab Network (for Enea Edge Management
communications).
@@ -302,7 +302,7 @@
- VNF Configuration file(s), provided with your Enea NFV Access
+ VNF Configuration file(s), provided with your Enea Edge
release: fortigate-sdwan<x>.conf.
@@ -359,7 +359,7 @@
Connect the ETH0 interfaces to the Lab
- Network (for Enea uCPE Manager communications).
+ Network (for Enea Edge Management communications).
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/introduction.xml b/doc/book-enea-nfv-access-example-usecases/doc/introduction.xml
index fc3559b..b502e8b 100644
--- a/doc/book-enea-nfv-access-example-usecases/doc/introduction.xml
+++ b/doc/book-enea-nfv-access-example-usecases/doc/introduction.xml
@@ -7,8 +7,8 @@
etc.
Before running any example use case make sure the uCPE device(s) have
- been added to the uCPE Manager and placed on the map. For detailed
- information on how to add a device to the uCPE Manager, how to configure the
+ been added to Enea Edge Management and placed on the map. For detailed
+ information on how to add a device to Enea Edge Management, how to configure the
network interfaces to use DPDK, PCI-passthrough or SR-IOV drivers, or VNF
configuration, please refer to the Service Chaining 128T - Fortigate Example Use-case
The following is an example of how to setup and configure a service
- chain on top of the Enea NFV Access virtualization platform, using the
+ chain on top of the Enea Edge Runtime, using the
following commercial VNFs: 128T router and FortiGate.
@@ -86,7 +86,7 @@
Configuring Network Interfaces on uCPE
devices:
- Add the trgt uCPE device into the uCPE Manager:
+ Add the trgt uCPE device into Enea Edge Management:
Devices -> Manage -> Add, and fill in the
required fields with the following data:
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/vnf_chaining.xml b/doc/book-enea-nfv-access-example-usecases/doc/vnf_chaining.xml
index 8b82337..24442af 100644
--- a/doc/book-enea-nfv-access-example-usecases/doc/vnf_chaining.xml
+++ b/doc/book-enea-nfv-access-example-usecases/doc/vnf_chaining.xml
@@ -11,9 +11,9 @@
The following is an example of how to setup and configure a
branch-to-branch service comprised on two commercial VNFs (SD-WAN +
- Firewall). This service will run in a service chain on top of the Enea NFV
- Access virtualization platform, deployed through the Enea uCPE
- Manager.
+ Firewall). This service will run in a service chain on top of the Enea
+ Edge Runtime, deployed through the Enea Edge
+ Management.In the example setup the following commercial VNFs are used: Juniper
vSRX as the SD-WAN VNF and Fortigate as the Router/Firewall.
@@ -61,7 +61,7 @@
- VNF Configuration files, provided with your Enea NFV Access
+ VNF Configuration files, provided with your Enea Edge
Release:
@@ -152,7 +152,7 @@
The networking setup (Steps 1-3) can be modeled using the
Offline Configuration entry, so that it is automatically
provisioned on the uCPE device, once it gets enrolled into the
- management system (uCPE Manager).
+ management system (Enea Edge Management).
diff --git a/doc/book-enea-nfv-access-example-usecases/swcomp.mk b/doc/book-enea-nfv-access-example-usecases/swcomp.mk
index 972746a..5f5ab16 100755
--- a/doc/book-enea-nfv-access-example-usecases/swcomp.mk
+++ b/doc/book-enea-nfv-access-example-usecases/swcomp.mk
@@ -6,5 +6,5 @@ BOOK_VER ?= $(REL_VER)-dev
DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
BOOKPACKAGES := book-enea-nfv-access-example-usecases
-BOOKDESC_$(BOOKPACKAGES) := "Enea NFV Access $(PROD_VER) Example Use-cases"
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge $(PROD_VER) Example Use-cases"
BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-nfv-access-getting-started/doc/advanced_configurations.xml b/doc/book-enea-nfv-access-getting-started/doc/advanced_configurations.xml
index cb0ae5b..70a9978 100644
--- a/doc/book-enea-nfv-access-getting-started/doc/advanced_configurations.xml
+++ b/doc/book-enea-nfv-access-getting-started/doc/advanced_configurations.xml
@@ -1,4 +1,4 @@
-
+
@@ -12,26 +12,24 @@
Bare Metal ProvisioningBare Metal Provisioning can be used for automated deployment of the
- Enea NFV Access Runtime Platform on a large number of uCPE devices. The
- uCPE devices may have no previous operating system installed, or are
- reinstalled without preserving any existing data. Enea NFV Access Bare
- Metal Provisioning is based on standardized Pre-Boot Execution environment
- (PXE) booting.
+ Enea Edge Runtime on a large number of uCPE devices. The uCPE devices may
+ have no previous operating system installed, or are reinstalled without
+ preserving any existing data. Enea Edge Bare Metal Provisioning is based
+ on standardized Pre-Boot Execution environment (PXE) booting.The Bare Metal Provisioning process begins by PXE booting an Enea
- NFV Access installer initramfs image. The installer
- downloads a configuration file, as well as the Enea NFV Access Runtime
- Platform image and then proceeds to install the system by dividing the
- disk into 2 partitions: a GPT partition containing the GRUB boot loader
- and a second partition containing the Enea NFV Access Runtime Platform
- root filesystem. When the installation is complete, the uCPE device is
- automatically rebooted into Enea NFV Access Runtime Platform.
+ Edge installer initramfs image. The installer downloads
+ a configuration file, as well as the Enea Edge Runtime image and then
+ proceeds to install the system by dividing the disk into 2 partitions: a
+ GPT partition containing the GRUB boot loader and a second partition
+ containing the Enea Edge Runtime root filesystem. When the installation is
+ complete, the uCPE device is automatically rebooted into Enea Edge
+ Runtime.The .hddimg, initramfs, and
bzImage files are available in the
- Enea_NFV_Access_Run_Time_Platform_
- <processor>_<version>-<build_number>.tar.gz
+ Enea_Edge_Runtime_<processor>_<version>-<build_number>.tar.gz
file you downloaded with your release.
@@ -56,16 +54,15 @@
The uCPE devices are preconfigured in BIOS to boot from the
- hard drive where the Enea NFV Access Runtime Platform will be
- installed.
+ hard drive where the Enea Edge Runtime will be installed.
CSM support and Dual Boot must be enabled in BIOS (i.e. PXE
- booting in legacy mode), while the final Enea NFV Access image will
- boot in UEFI mode. Doing a mass deployment using legacy PXE booting
- usually means that Secure Boot is disabled, Secure Boot will need to
- be enabled afterwards.
+ booting in legacy mode), while the final Enea Edge Runtime image
+ will boot in UEFI mode. Doing a mass deployment using legacy PXE
+ booting usually means that Secure Boot is disabled, Secure Boot will
+ need to be enabled afterwards.
@@ -80,23 +77,22 @@
Server Configuration
- The following images provided with your Enea NFV Access release
- need to be made available on the PXE and HTTP servers:
+ The following images provided with your Enea Edge release need to
+ be made available on the PXE and HTTP servers:
- Copy the Enea NFV Access installer
- initramfs image and kernel
- bzImage for your uCPE device architecture to the
- TFTP directory on the PXE server (e.g
+ Copy the Enea Edge installer initramfs
+ image and kernel bzImage for your uCPE device
+ architecture to the TFTP directory on the PXE server (e.g
/var/lib/tftpboot).
- Compress the Enea NFV Access Runtime Platform
- .hddimg image for the uCPE device architecture
- using gzip and copy the resulting
- hddimg.gz file to the HTTP server.
+ Compress the Enea Edge Runtime .hddimg
+ image for the uCPE device architecture using gzip
+ and copy the resulting hddimg.gz file to the HTTP
+ server.
@@ -113,7 +109,7 @@
image_url. The HTTP server URL used for
- downloading the Enea NFV Access Runtime Platform image.
+ downloading the Enea Edge Runtime image.
@@ -122,7 +118,7 @@
install_drive. The name of the drive
- where the Enea NFV Access Runtime Platform will be installed (e.g
+ where the Enea Edge Runtime will be installed (e.g
/dev/sda). If not set, the installer will use
the largest detected (non-USB) drive on the uCPE device.
@@ -149,10 +145,10 @@ install_drive = /dev/sda
PXE Configuration
- A PXE entry for the Enea NFV Access installation needs to be
- added as the default boot selection in the pxelinux configuration file
- (e.g /var/lib/tftpboot/pxelinux.cfg/default). The
- PXE entry should have the following settings:
+ A PXE entry for the Enea Edge installation needs to be added as
+ the default boot selection in the pxelinux configuration file (e.g
+ /var/lib/tftpboot/pxelinux.cfg/default). The PXE
+ entry should have the following settings:default nfv_access
label nfv_access
@@ -179,8 +175,8 @@ ipappend 2
ipmitool -U <user> -P <password> -H <uCPE device IPMI IP address> power reset
The uCPE devices should be configured in BIOS to boot from the
- installation drive first in order to automatically start the Enea NFV
- Access Runtime Platform when the installation is finished.
+ installation drive first in order to automatically start the Enea Edge
+ Runtime when the installation is finished.
@@ -205,7 +201,7 @@ ipmitool -U <user> -P <password> -H <uCPE device IPMI IP address&
Enabling UEFI Secure Boot
- All Enea NFV Access image artifacts delivered with the release are
+ All Enea Edge image artifacts delivered with the release are
signed using the Enea UEFI Secure boot private keys. These artifacts can
be used on a uCPE device that doesn't have Secure Boot enabled. To use
the Secure Boot feature, however, the user must make the Enea UEFI
@@ -247,9 +243,9 @@ ipmitool -U <user> -P <password> -H <uCPE device IPMI IP address&
The Enea UEFI Secure Boot certificates are installed together
- with the Enea NFV Access Runtime Platform onto the hard drive. They
- can be found on the EFI partition (usually the first partition of the
- drive) under /uefi_sb_keys.
+ with the Enea Edge Runtime onto the hard drive. They can be found on
+ the EFI partition (usually the first partition of the drive) under
+ /uefi_sb_keys.These certificates need to be manually enrolled in BIOS. The
exact details on how to proceed may vary depending the version of the
@@ -278,12 +274,12 @@ ipmitool -U <user> -P <password> -H <uCPE device IPMI IP address&
are contiguous blocks of memory that come in 2MB or 1GB sizes. By using
huge page allocations, less memory is used for page tables and the
Translation Lookaside Buffer (TLB) miss rate is significantly reduced.
- Enea NFV Access uses huge page backed memory in KVM guests in order to
+ Enea Edge Runtime uses huge page backed memory in KVM guests in order to
improve performance.
- Enea NFV Access implements an automatic hugepage allocation service
- that is triggered at each startup. The service is skipped if hugepages
- have been allocated in the kernel boot command line.
+ Enea Edge Runtime implements an automatic hugepage allocation
+ service that is triggered at each startup. The service is skipped if
+ hugepages have been allocated in the kernel boot command line.There are two strategies outlined for hugepage allocation:
@@ -422,11 +418,12 @@ node0.1048576kB = 3
- Installing the Enea uCPE Manager in High Availability Mode
+ Installing the Enea Edge Management in High Availability
+ Mode
- The following describes the setup needed for running the Enea uCPE
- Manager in High Availabilty (HA) mode, with a MariaDB database cluster. A
- setup example is illustrated in the diagram below.
+ The following describes the setup needed for running the Enea Edge
+ Management in High Availabilty (HA) mode, with a MariaDB database cluster.
+ A setup example is illustrated in the diagram below.
The High Availability setup
@@ -442,17 +439,17 @@ node0.1048576kB = 3
The setup consists of two sub-clusters, placed in different
geographical locations, each consisting of three MariaDB servers. In this
example, two of the machines are running only MariaDB, while the rest are
- hosting a MariaDB server and an Enea uCPE Manager instance. The entire
+ hosting a MariaDB server and an Enea Edge Management instance. The entire
network is hidden behind a firewall that performs NAT. While in protection
- (cluster) mode, the Enea uCPE Manager instances promote a Virtual IP (VIP)
- that represents the IP address of the entire cluster. The firewall in this
- case will allocate a public IP for the outside world that will be
+ (cluster) mode, the Enea Edge Management instances promote a Virtual IP
+ (VIP) that represents the IP address of the entire cluster. The firewall
+ in this case will allocate a public IP for the outside world that will be
translated into the VIP. Also in this example, the traffic towards the
cluster from outside the firewall is done through HTTPS, which will be
translated to HTTP inside the private network.
- By default, communication to the Enea uCPE Manager is done with
+ By default, communication to the Enea Edge Management is done with
HTTPS. To enable HTTP, go to System,
Configuration, click on the Web Access tab and check the
- Machines running the Enea uCPE Manager and MariaDB:
+ Machines running the Enea Edge Management and MariaDB:
@@ -509,9 +506,9 @@ node0.1048576kB = 3
Please refer to Firewall Configuration in the Firewall Configuration in the
Manual. In addition, the following configuration is needed:
@@ -533,10 +530,10 @@ SELINUXTYPE=targeted
The following ports should be opened in the local firewall (not
- the one doing NAT), for each Enea uCPE Manager machine:
+ the one doing NAT), for each Enea Edge Management machine:
- Ports for Enea uCPE Manager Machines
+ Ports for Enea Edge Management Machines
@@ -590,7 +587,7 @@ SELINUXTYPE=targeted
For MariaDB, the following ports must be opened (on each MariaDB
- server, including the ones hosting the Enea uCPE Manager):
+ server, including the ones hosting the Enea Edge Management):
Ports for MariaDB Machines
@@ -685,9 +682,9 @@ SELINUXTYPE=targeted
Installing High Availability
- The Enea uCPE Manager can be installed in High Availability mode
- with a MariaDB database cluster by performing the following steps. The
- mandatory Java configuration is also detailed.
+ The Enea Edge Management can be installed in High Availability
+ mode with a MariaDB database cluster by performing the following steps.
+ The mandatory Java configuration is also detailed.Installing and configuring the MariaDB cluster
@@ -825,20 +822,20 @@ Switch to unix_socket authentication [Y/n] Y
Enabled successfully!
Reloading privilege tables..
... Success!
-…
+…
Change the root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
-…
+…
Remove anonymous users? [Y/n] Y
... Success!
-…
+…
Disallow root login remotely? [Y/n] Y
... Success!
-…
+…
Remove test database and access to it? [Y/n] Y (optional)
- Dropping test database...
... Success!
@@ -875,9 +872,9 @@ TO 'enea'@'%' IDENTIFIED BY 'somepassword' WITH GRANT OPTION;
Please refer to Configuring OpenJDK and
- PostgreSQL in the
Manual, for details on how to install and configure Java
OpenJDK.
@@ -891,16 +888,16 @@ TO 'enea'@'%' IDENTIFIED BY 'somepassword' WITH GRANT OPTION;
- Installing the Enea uCPE Manager in High Availabilty
+ Installing the Enea Edge Management in High Availabilty
modeThese steps must be taken on each of the CentOS 7 machines that
- will host the Enea uCPE Manager. The Enea uCPE Manager will be
+ will host the Enea Edge Management. The Enea Edge Management will be
installed and the setup for the external database cluster will be
prepared.
- As the root user, go to the distribution folder of the Enea uCPE
- Manager, and run:
+ As the root user, go to the distribution folder of the Enea Edge
+ Management, and run:[root@localhost distro]#./install.sh /opt/ \
Enea_NFV_Access_uCPEManager_2.3.0-build23.tar.gz
@@ -911,7 +908,7 @@ External database selected, getting user information ...
Press 1 for PostgreSQL, 2 for MariaDB, 3 for SQL Server, 4 for Oracle and 5 \
for MySQL: 2
Specify database server name(s) or IP Address(es): \
-192.168.10.11,192.168.10.12,…,192.168.10.16 *(see note)
+192.168.10.11,192.168.10.12,…,192.168.10.16 *(see note)
Specify database ID (or name) [ucpemanager]:
Specify database server port [3306]:
Specify database user name [root]: enea
@@ -920,11 +917,11 @@ Specify database startup thread pool size [1]:
Creating database configuration file \
/opt//ucpemanager/application/config/databaseConfig.xml ...
Done .
-…
+…
Installing ucpemanager service ..
Specify service username [ucpemanager]:
Specify service password [ucpemanager]: somepassword
-…
+…
Specify the IP address of the local interface: 192.168.10.11
Is this server part of a cluster? [Y/N]: Y
Specify the name of the cluster [ucpemanager]:
@@ -934,9 +931,9 @@ HA Configuration files modified successfully.
Configuration complete.
- For each Enea uCPE Manager installation, place the local
+ For each Enea Edge Management installation, place the local
interface IP first in the list of IPs. This will optimize database
- communication, since the Enea uCPE Manager uses the list of IPs
+ communication, since the Enea Edge Management uses the list of IPs
sequentially, therefore using the internal loopback interface for
communicating with the database.
@@ -944,8 +941,8 @@ Configuration complete.
Once the servers are up and running, log into the Primary and go to System and select Cluster
- View. The list of Enea uCPE Managers should be displayed,
- with one listed as Primary and the rest as Backup.
+ View. The list of Enea Edge Management servers should be
+ displayed, with one listed as Primary and the rest as Backup.
@@ -977,7 +974,7 @@ Configuration complete.
Run the upgrade process on ucpeManager-3
and ucpeManager-4. This will upgrade the service
to the current release. Once the upgrade process completes, shutdown
- the Enea uCPE Manager service on both machines.
+ the Enea Edge Management service on both machines.
@@ -989,10 +986,11 @@ Configuration complete.
- Shutdown the MariaDB-2 process and run the Enea uCPE Manager
- upgrade process on ucpeManager-2. This will
- upgrade the service to the current release. Once the upgrade process
- completes, shutdown the uCPE Manager service on the machine.
+ Shutdown the MariaDB-2 process and run the Enea Edge
+ Management upgrade process on ucpeManager-2. This
+ will upgrade the service to the current release. Once the upgrade
+ process completes, shutdown the Enea Edge Management service on the
+ machine.
@@ -1013,7 +1011,7 @@ Configuration complete.
- Start the Enea uCPE Manager services on
+ Start the Enea Edge Management services on
ucpeManager-2. This machine will come up as the
new "PRIMARY" with the upgraded software. As part of the startup
process, it will upgrade the database and perform any other
@@ -1026,14 +1024,14 @@ Configuration complete.
- Start the Enea uCPE Manager services on
+ Start the Enea Edge Management services on
ucpeManager-3 and
ucpeManager-4. At this point, we are in
highly-available mode.
- Upgrade the Enea uCPE Manager on
+ Upgrade the Enea Edge Management on
ucpeManager-1 (the one that has been shut down).
Once that upgrade is complete and the service restarts, the entire
setup has been upgraded to the new version.
diff --git a/doc/book-enea-nfv-access-getting-started/doc/book.xml b/doc/book-enea-nfv-access-getting-started/doc/book.xml
index fa3fc4f..0704dd0 100644
--- a/doc/book-enea-nfv-access-getting-started/doc/book.xml
+++ b/doc/book-enea-nfv-access-getting-started/doc/book.xml
@@ -4,7 +4,7 @@
]>
- Enea NFV Access Getting Started
+ Enea Edge Getting StartedRelease Version
Using Grafana and InfluxDB
-
- InfluxDB is essentially a time series database process that runs on a
- server, while Grafana is a visualization tool for time series data.
- Grafana is a very lightweight server-side application, and most of the
- monitoring runs in a browser.
+
+ InfluxDB is essentially a time series database process that runs on a
+ server, while Grafana is a visualization tool for time series data. Grafana
+ is a very lightweight server-side application, and most of the monitoring
+ runs in a browser.Deploying Grafana and InfluxDB
-
- Grafana and InfluxDB can be deployed using images for Docker on linux.
- These images are provided by Enea along with a deploy script and
- predefined dashboards.
-
- The Grafana and InfluxDB images can be deployed on the same machine
- or on separate machines.
+
+ Grafana and InfluxDB can be deployed using images for Docker on
+ linux. These images are provided by Enea along with a deploy script and
+ predefined dashboards.
+
+ The Grafana and InfluxDB images can be deployed on the same machine
+ or on separate machines.
- Prerequisites for Deploying an Image
-
+ Prerequisites for Deploying an Image
+
The following must be present in order to deploy an image:
-
-
-
- CentOS 7 Linux.
-
-
-
- Docker for CentOS 7 installed on the machine and set to
- autostart as a service.
-
-
-
- Superuser rights on the CentOS 7 machine.
-
-
-
-
+
+
+
+ CentOS 7 Linux.
+
+
+
+ Docker for CentOS 7 installed on the machine and set to
+ autostart as a service.
+
+
+
+ Superuser rights on the CentOS 7 machine.
+
+
+
+
Deploying Grafana and InfluxDB
-
- On the CentOS 7 server open a terminal, log into a bash shell
- with the root account and perform the following:
-
-
-
- Extract
- Enea_NFV_Access_Telemetry_Deploy_<version>-build<build_number>.tar.gz.
-
- The directory in which the archive will be unpacked will be
- denoted as: <Telemetry-installdir>.
-
-
-
- Enter <Telemetry-installdir>.
-
-
-
- Run the provided telemetry_deploy.sh script.
-
-
-
- When prompted, select what images you want to deploy.
-
- If an image is already deployed, you will be prompted to replace it.
-
-
-
- During the InfluxDB deployment, you will be prompted to provide
- a username and password. These must match the ones configured in the
- Enea uCPE Manager for Telemetry.
-
-
-
- Changing the InfluxDB username and password requires redeploying
- the InfluxDB image.
-
-
-
-
- Verify the installation by running the command docker ps -a.
- The Grafana and InfluxDB containers should be present and have
- the status Up.
-
-
-
-
+
+ On the CentOS 7 server open a terminal, log into a bash shell with
+ the root account and perform the following:
+
+
+
+ Extract
+ Enea_Edge_Telemetry_Deploy_<version>-build<build_number>.tar.gz.
+
+ The directory in which the archive will be unpacked will be
+ denoted as: <Telemetry-installdir>.
+
+
+
+ Enter <Telemetry-installdir>.
+
+
+
+ Run the provided telemetry_deploy.sh
+ script.
+
+
+
+ When prompted, select what images you want to deploy.
+
+ If an image is already deployed, you will be prompted to
+ replace it.
+
+
+
+ During the InfluxDB deployment, you will be prompted to
+ provide a username and password. These must match the ones
+ configured in the Enea Edge Management for Telemetry.
+
+
+ Changing the InfluxDB username and password requires
+ redeploying the InfluxDB image.
+
+
+
+
+ Verify the installation by running the command docker
+ ps -a. The Grafana and InfluxDB containers should be
+ present and have the status Up.
+
+
+
Setting Grafana and InfluxDB parametersCustomizing InfluxDB and Grafana parameters can be done by selecting
- System, then the Configuration
- menu, accessing the Properties tab, and clicking on the
- Telemetry tab. The settings that can be changed
- are listed in the table below:
+ System, then the Configuration menu, accessing the Properties tab, and clicking on the Telemetry tab. The settings that can be changed are
+ listed in the table below:
Telemetry settings
@@ -138,7 +139,7 @@
Grafana DashboardThe dashboard that should be used when opening Grafana
- using the Enea uCPE Manager.
+ using the Enea Edge Management.
host
@@ -183,8 +184,8 @@
When changing any of the settings in the Telemetry tab, the Enea uCPE Manager will inform all
- uCPE devices of the change if they have telemetry running.
+ role="bold">Telemetry tab, the Enea Edge Management will inform
+ all uCPE devices of the change if they have telemetry running.
Telemetry Properties
@@ -203,11 +204,11 @@
When a uCPE Device is selected, in the Operations menu, the Start
- Telemetry and Stop
- Telemetry options are available.
+ Telemetry and Stop Telemetry
+ options are available.
- When starting Telemetry for a uCPE device, the Enea uCPE Manager sends
- the following information about the InfluxDB:
+ When starting Telemetry for a uCPE device, the Enea Edge Management
+ sends the following information about the InfluxDB:
@@ -226,10 +227,10 @@
These fields are read-only and are populated with the values already
- set in the System Configuration. If one of the
- fields is not set or if it does not have the desired value, modify it in the
- System Configuration. The password is sent
- encrypted using the Base64 scheme.
+ set in the System Configuration. If one
+ of the fields is not set or if it does not have the desired value, modify
+ it in the System Configuration. The
+ password is sent encrypted using the Base64 scheme.
Telemetry Start Dialog
@@ -241,25 +242,25 @@
- When the Telemetry status is changed on a uCPE device, a notification is
- sent to the Enea uCPE Manager. These notifications can be inspected under
- Fault found in the
- Event menu.
+ When the Telemetry status is changed on a uCPE device, a
+ notification is sent to the Enea Edge Management. These notifications can
+ be inspected under Fault found in the
+ Event menu.Launching GrafanaWhen a uCPE Device is selected, the Telemetry button is available. Pressing this
- button will open a new window pointing to Grafana. The current uCPE device will
+ role="bold">Telemetry button is available. Pressing this button
+ will open a new window pointing to Grafana. The current uCPE device will
be selected in Grafana.The hostname or IP Address and the port of the Grafana installation
- can be customized by selecting System, then the
- Configuration menu, accessing the
- Properties tab, and clicking on the
- Telemetry tab. The default dashboard available when
- launching Grafana can be customized as well.
+ can be customized by selecting System,
+ then the Configuration menu, accessing
+ the Properties tab, and clicking on the
+ Telemetry tab. The default dashboard
+ available when launching Grafana can be customized as well.
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-getting-started/doc/installation_guide.xml b/doc/book-enea-nfv-access-getting-started/doc/installation_guide.xml
index be4342f..f8da56d 100644
--- a/doc/book-enea-nfv-access-getting-started/doc/installation_guide.xml
+++ b/doc/book-enea-nfv-access-getting-started/doc/installation_guide.xml
@@ -1,7 +1,6 @@
-
+
- Setting up and Installing the Enea NFV Access Base
- Configuration
+ Setting up and Installing the Enea Edge Base ConfigurationThe setup and installation steps detailed below will deploy a base
configuration which will be used as a reference for more complex deployment
@@ -19,11 +18,11 @@
The CentOS 7 server must be updated to the latest revision
- before installing Enea NFV Access.
+ before installing Enea Edge.The following will detail CPU, RAM and storage requirements for
- the uCPE Manager.
+ the Enea Edge Management.
@@ -81,31 +80,30 @@
- The purpose of the CentOS 7 server is to host the Enea uCPE
- Manager. Network access between the CentOS 7 server and the uCPE
- devices is required. The Enea uCPE Manager and the uCPE devices will
- be connected on separate subnets to avoid inconsistencies.
+ The purpose of the CentOS 7 server is to host the Enea Edge
+ Management. Network access between the CentOS 7 server and the uCPE
+ devices is required. The Enea Edge Management and the uCPE devices
+ will be connected on separate subnets to avoid inconsistencies.One or more uCPE devices.
- Whitebox devices where the Enea NFV Access Runtime Platform will
- be installed, containing a minimum of 2 cores and 4 GB RAM and at
- least two ethernet ports that will be configured as WAN and LAN during
- deployment.
+ Whitebox devices where the Enea Edge Runtime will be installed,
+ containing a minimum of 2 cores and 4 GB RAM and at least two ethernet
+ ports that will be configured as WAN and LAN during deployment.When hosting an entire solution including one or several network
services, the hardware must also have the resources to host one or
more VNFs. During a typical evaluation, a dual VNF service on the Enea
- NFV Access Runtime Platform needs a CPU with 4-8 cores and at least 8
- GB RAM. The supported Intel CPUs of Enea NFV Access are documented in
- the
manual.
- Enea NFV Access needs EFI support in BIOS to boot. When
+ Enea Edge Runtime needs EFI support in BIOS to boot. When
configuring the uCPE device BIOS a serial connection is
required.
@@ -117,12 +115,11 @@
- Installing the Enea NFV Access Runtime Platform on uCPE
- Devices.
+ Installing the Enea Edge Runtime on uCPE Devices.
- Connecting to the GUI of the Enea uCPE Manager for
+ Connecting to the GUI of the Enea Edge Management for
management and configuration. Network access between the CentOS 7
server and the laptop is required. Please see the Any firewall running on the CentOS 7 server may block the
management protocols required to communicate between the uCPE device and
- the Enea uCPE Manager as well as between the Enea uCPE Manager and its
- northbound clients. Quick handling of a blocking firewall would be to
- disable it, typical for a lab environment, through:
+ the Enea Edge Management as well as between the Enea Edge Management and
+ its northbound clients. Quick handling of a blocking firewall would be
+ to disable it, typical for a lab environment, through:sudo systemctl stop firewalld
sudo systemctl disable firewalld
@@ -189,7 +186,7 @@ sudo systemctl mask now firewalldUDP
- Required for the Enea uCPE Manager High Availability
+ Required for the Enea Edge Management High Availability
Configuration.
@@ -198,7 +195,7 @@ sudo systemctl mask now firewalld
TCP
- Required for the Enea uCPE Manager High Availability
+ Required for the Enea Edge Management High Availability
Configuration.
@@ -223,7 +220,7 @@ sudo systemctl mask now firewalld
Use the following command sequence to enable the required ports
- for deployment of the Enea uCPE Manager:
+ for deployment of the Enea Edge Management:
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
@@ -234,21 +231,21 @@ sudo firewall-cmd --permanent --add-port=2021-2040/tcp
sudo firewall-cmd --reload
- If the uCPE Manager host resides behind a corporate
+ If the Enea Edge Management host resides behind a corporate
port-filtering firewall, then all the aforementioned ports need to
also be enabled on the respective firewall. As an additional
requirement, port 22/TCP also needs to be enabled for reverse SSH to
- the Enea uCPE Manager.
+ the Enea Edge Management.No enabling and no forwarding rules are necessary for ports
- 2021-2040 if the version of Enea NFV Access is 2.4.0 or newer.
+ 2021-2040 if using Enea Edge 2.4.0 or newer.
Configuring OpenJDK and PostgreSQL
- The Enea uCPE Manager requires a specific Java version (OpenJDK
+ The Enea Edge Management requires a specific Java version (OpenJDK
11) and a PostgreSQL version to operate correctly.Installing OpenJDK
@@ -299,8 +296,8 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
- The Enea uCPE Manager requires a specific PostgreeSQL version.
- This is embedded in the Enea uCPE Manager installation. In order to
+ The Enea Edge Management requires a specific PostgreeSQL version.
+ This is embedded in the Enea Edge Management installation. In order to
avoid conflicts, any existing PostgreeSQL installation needs to be
uninstalled.
@@ -324,8 +321,8 @@ export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
- This step is not necessary if the Enea uCPE Manager will be
- using an external database (like MariaDB).
+ This step is not necessary if the Enea Edge Management will
+ be using an external database (like MariaDB).yum remove postgres\*
@@ -356,10 +353,10 @@ userdel postgres
- Follow the installation steps for the Enea uCPE Manager
+ Follow the installation steps for the Enea Edge Management
available in Installing the uCPE Manager in the
- Installing the Enea Edge Management in
+ the
Manual.
@@ -377,7 +374,7 @@ userdel postgres
A typical whitebox comes with multiple physical network ports,
ready to be used. The user must determine the purpose and allocation of
each port. The allocation is later aligned with the software
- configuration within the Enea NFV Access installer.
+ configuration within the Web-installer.A common way is to allocate the left ports to WANs and the right
ports to LANs. At least one port must be allocated to WAN and one to
@@ -388,8 +385,8 @@ userdel postgres
Determining the Device IDEach uCPE device needs a unique identifier. This identifier is
- used to match the registration in the Enea uCPE Manager and the offline
- configuration of the uCPE device during ZTP (Zero Touch
+ used to match the registration in the Enea Edge Management and the
+ offline configuration of the uCPE device during ZTP (Zero Touch
Provisioning).Select a text string to represent the uCPE device, e.g.
@@ -404,7 +401,7 @@ userdel postgres
Configuring the BIOSThe factory configuration of the BIOS may not match the
- requirements of Enea NFV Access. The BIOS configuration needs to be
+ requirements of Enea Edge Runtime. The BIOS configuration needs to be
reviewed and potentially reconfigured to prepare for a successful
installation.
@@ -434,8 +431,8 @@ userdel postgres
The boot order may also need to be modified to support
- installation and execution of the Enea NFV Access Runtime Platform on
- the uCPE device.
+ installation and execution of the Enea Edge Runtime on the uCPE
+ device.The following boot order is recommended for a base
configuration:
@@ -459,14 +456,14 @@ userdel postgres
Preparing the Deployment
- Installing the Enea uCPE Manager
+ Installing the Enea Edge Management
- The Enea uCPE Manager can be installed using a fresh (first-time)
- configuration or using a backup file of a previous installation, created
- within the Enea uCPE Manager GUI.
+ The Enea Edge Management can be installed using a fresh
+ (first-time) configuration or using a backup file of a previous
+ installation, created within the Enea Edge Management GUI.
- Fresh Installation of the Enea uCPE Manager
+ Fresh Installation of the Enea Edge ManagementOn the CentOS 7 server open a terminal, log into a bash shell
with the root account and perform the following:
@@ -474,7 +471,7 @@ userdel postgres
Extract
- Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
+ Enea_Edge_Management_<version>-build<build_number>.tar.gzThe directory in which the archive has been unpacked will be
denoted as: <uCPEM-installdir>.
@@ -510,8 +507,8 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
The same configuration values set now will need to be
- provided when upgrading or uninstalling the Enea uCPE
- Manager.
+ provided when upgrading or uninstalling the Enea Edge
+ Management.
@@ -590,13 +587,13 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
- Heap Configuration: Please enter the new Maximum Heap
- Size [4g]:
+ Heap Configuration: Please enter the new
+ Maximum Heap Size [4g]:
- Create the self-signed certificate:
- Specify IP or domain name:
+ Create the self-signed certificate: Specify IP
+ or domain name:The certificate can be generated again by running the
@@ -619,8 +616,8 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
- Install the Enea uCPE Manager as a service with the name
- ucpemanager.
+ Install the Enea Edge Management as a service with the
+ name ucpemanager.
@@ -631,8 +628,8 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
Using the IPv4 address of the CentOS 7 Server in a web
- browser, running on the laptop, log into the Enea uCPE Manager GUI
- using the default username and password:
+ browser, running on the laptop, log into the Enea Edge Management
+ GUI using the default username and password:
admin/admin.
@@ -645,47 +642,48 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gzIf the CentOS 7 Server is installed behind NAT, the IPv4
address used will be the public IP of the NAT device and port
forwarding rules must be created to ensure the uCPE device can
- access the Enea uCPE Manager. For more details, please see Firewall Configuration.
- Installation of the Enea uCPE Manager using a System
+ Installation of the Enea Edge Management using a System
Back-up
- The Enea uCPE Manager can be restored if a backup file has been
- previously created.
+ The Enea Edge Management can be restored if a backup file has
+ been previously created.A backup file can be created by accessing the System menu, and clicking System Backup, from the Enea uCPE Manager GUI.
- The resulting zip archive will be located in the
+ role="bold">System Backup, from the Enea Edge Management
+ GUI. The resulting zip archive will be located in the
/opt/ems/ucpemanager/application/backup folder
and will be named
SystemBackup_MMMDD_YYYY_HHMM_SS.zip (e.g
System-Backup_Feb19_2013_2257_42.zip). Save the archive to another
- location outside the Enea uCPE Manager installation folder for future
- use.
+ location outside the Enea Edge Management installation folder for
+ future use.
- The System Back-up file obtained from the Enea uCPE Manager
+ The System Back-up file obtained from the Enea Edge Management
GUI (SystemBackup_MMMDD_YYYY_HHMM_SS.zip) is
- different from the snapshot obtained during a Enea uCPE Manager
+ different from the snapshot obtained during a Enea Edge Management
Upgrade or Uninstall operation
(ucpemanager-Backup-YYYYddMMHHmm.tar.gz) needed
- for recovery of the Enea uCPE Manager. For more details, see Restoring a previous uCPE
- Manager installation in the Restoring a previous Enea Edge
+ Management installation in the
Manual.
- To install the Enea uCPE Manager with the restore option provide
- an additional argument as shown below during installation:
+ To install the Enea Edge Management with the restore option
+ provide an additional argument as shown below during
+ installation:./install.sh \
/opt/ems Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz \
@@ -694,11 +692,11 @@ SystemBackup_MMMDD_YYYY_HHMM_SS.zip
- Preparing the USB stick for installation of the Enea NFV Access
- Runtime Platform
+ Preparing the USB stick for installation of the Enea Edge
+ Runtime
- To install the Enea NFV Access Runtime Platform, create a bootable
- USB stick with the image you intend to install.
+ To install the Enea Edge Runtime, create a bootable USB stick with
+ the image you intend to install.In the example below, step by step instructions are provided for
the CentOS 7 distribution. It's possible with the appropriate tools to
@@ -706,7 +704,7 @@ SystemBackup_MMMDD_YYYY_HHMM_SS.zip
The .hddimg image is available in the
- Enea_NFV_Access_Run_Time_Platform_
+ Enea_Edge_Runtime_Platform_
<processor>_<version>-build<build_number>.tar.gz
file you downloaded with your release.
@@ -760,16 +758,16 @@ of=/dev/sdb bs=4M conv=fsync
While the uCPE device is powered off, in order to install and
- configure the Enea NFV Access Runtime Platform (using the prepared USB
- stick), connect the laptop to a uCPE device LAN port. For this purpose,
- a Layer 2 switch or direct cable connection can be used.
+ configure the Enea Edge Runtime (using the prepared USB stick), connect
+ the laptop to a uCPE device LAN port. For this purpose, a Layer 2 switch
+ or direct cable connection can be used.
- Installing Enea NFV Access - uCPE Device Installation
+ Installing Enea Edge - uCPE Device Installation
- To initiate the installation of the Enea NFV Access Runtime
- Platform do the following:
+ To initiate the installation of the Enea Edge Runtime do the
+ following:
@@ -852,24 +850,24 @@ of=/dev/sdb bs=4M conv=fsync
- On the Enea uCPE Manager
+ On the Enea Edge Management
settings page of the Web-installer, the user must fill
in:
- The static Enea uCPE Manager IP Address. This can be
+ The static Enea Edge Management IP Address. This can be
either:
- The IP address of the Enea uCPE Manager host machine,
- if the device can directly access it.
+ The IP address of the Enea Edge Management host
+ machine, if the device can directly access it.
- The IP address of the NAT device, if the Enea uCPE
- Manager host is located behind a NAT. For more details,
+ The IP address of the NAT device, if the Enea Edge
+ Management host is located behind a NAT. For more details,
please see Firewall
Configuration.
@@ -885,7 +883,7 @@ of=/dev/sdb bs=4M conv=fsync
Customer Tags. They are used for Zero Touch Provisioning
(ZTP) and can be left empty for a base configuration. What can
be entered here (if needed), are the tag(s) specified when
- creating an offline configuration in the Enea uCPE Manager. A
+ creating an offline configuration in the Enea Edge Management. A
later addition of customer tags can only be done by reinstalling
the uCPE devices.
@@ -905,7 +903,7 @@ of=/dev/sdb bs=4M conv=fsync
Select a WAN interface to use as the management network
- interface. This interface is used by the Enea uCPE Manager to
+ interface. This interface is used by the Enea Edge Management to
communicate with the uCPE device.
@@ -918,10 +916,10 @@ of=/dev/sdb bs=4M conv=fsync
When the user has completed the configuration steps in the
- Web-installer, Enea NFV Access is installed on the hard drive. At this
+ Web-installer, Enea Edge Runtime is installed on the hard drive. At this
stage, the user should remove the USB stick and the LAN cable, and
shutdown the uCPE device. It will be started after necessary
- configurations are done in the Enea uCPE Manager, as described
+ configurations are done in the Enea Edge Management, as described
below.
@@ -953,13 +951,13 @@ of=/dev/sdb bs=4M conv=fsync
- Network connection between the server running the Enea uCPE
- Manager and the laptop.
+ Network connection between the server running the Enea Edge
+ Management and the laptop.
- Network connection between the server running the Enea uCPE
- Manager and the uCPE device.
+ Network connection between the server running the Enea Edge
+ Management and the uCPE device.
@@ -969,14 +967,14 @@ of=/dev/sdb bs=4M conv=fsync
Management of uCPE DevicesWhen the installation is complete the uCPE device can be managed in
- the Enea uCPE Manager.
+ the Enea Edge Management.
Add a default Offline ConfigurationZero Touch Provisioning is always turned on when a uCPE device
- connects to the Enea uCPE Manager. To enable it in the Enea uCPE
- Manager, an offline configuration needs to be registered for Day-0
+ connects to the Enea Edge Management. To enable it in the Enea Edge
+ Management, an offline configuration needs to be registered for Day-0
configuration.
@@ -990,8 +988,8 @@ of=/dev/sdb bs=4M conv=fsync
The offline configuration consists of data and parameters that are
meant to be automatically set when a uCPE device connects to the Enea
- uCPE Manager for the first time. The configuration is typically focused
- on setting up the network management of the uCPE device, e.g.
+ Edge Management for the first time. The configuration is typically
+ focused on setting up the network management of the uCPE device, e.g.
configuring network interfaces, WAN and LAN networking and service
chains.
@@ -1003,14 +1001,14 @@ of=/dev/sdb bs=4M conv=fsync
If the offline configuration is not configured, an alarm will be
raised: Day-0 Config:ZTP:Major when the uCPE device
- tries to connect to the Enea uCPE Manager, informing the user that the
- ZTP setup failed for the uCPE device.
+ tries to connect to the Enea Edge Management, informing the user that
+ the ZTP setup failed for the uCPE device.
To create an offline
configuration
- In a browser access the Enea uCPE Manager, open In a browser access the Enea Edge Management, open Applications and select Offline Config.
@@ -1024,7 +1022,7 @@ of=/dev/sdb bs=4M conv=fsync
The name is user defined and can be set to any unique text
string identifying the configuration. The
- deviceVersion must match the Enea NFV Access
+ deviceVersion must match the Enea Edge Runtime
version of the uCPE device and the deviceId
must be the previously set identifier of the uCPE device
(DeviceId).
@@ -1037,8 +1035,8 @@ of=/dev/sdb bs=4M conv=fsync
In order to enroll a uCPE device in the management system and
establish a management connection, the user will add uCPE device
- information in the Enea uCPE Manager. This is accomplished by going to
- Devices, selecting Devices, selecting Manage and then clicking the Add button.
@@ -1052,7 +1050,7 @@ of=/dev/sdb bs=4M conv=fsync
Name. The name by which the
- uCPE device is referred to in the Enea uCPE Manager.
+ uCPE device is referred to in the Enea Edge Management.
(Mandatory).
@@ -1096,8 +1094,8 @@ of=/dev/sdb bs=4M conv=fsync
Booting the uCPE device and adding it to the Map
- When connectivity is established with the Enea uCPE Manager and a
- uCPE device is already registered with a matching Device
+ When connectivity is established with the Enea Edge Management and
+ a uCPE device is already registered with a matching Device
ID, the installation is complete, and the connection is
established.
@@ -1108,12 +1106,13 @@ of=/dev/sdb bs=4M conv=fsync
In case of management connection failure (e.g. due to a
misconfiguration), the uCPE device status will be seen as RED
- (disconnected) in the Enea uCPE Manager. The uCPE device configuration
- can be corrected by removing the WAN cable(s), reconnecting the laptop
- to the LAN interface of the uCPE device and rebooting it. At this point,
- the Web-installer can be accessed from the laptop as described in Installing Enea NFV Access - uCPE Device
+ targetptr="install_ena_device">Installing Enea Edge - uCPE Device
installation in the uCPE Device Monitorization and Control
- Once the uCPE device is connected to the Enea uCPE Manager, it is
+ Once the uCPE device is connected to the Enea Edge Management, it is
ready for central management. Two important functions available in the
- Enea uCPE Manager GUI are alarm checking and resource allocation.
+ Enea Edge Management GUI are alarm checking and resource
+ allocation.Checking Alarms
- The Enea uCPE Manager dashboard presents alarms in a specific
+ The Enea Edge Management dashboard presents alarms in a specific
window on the front page.An alarm can be easily triggered by disconnecting and reconnecting
@@ -1141,15 +1141,15 @@ of=/dev/sdb bs=4M conv=fsync
Disconnected::Critical.A separate Alarm Management window can be accessed from the Enea
- uCPE Manager menu for in-depth access and programming of Alarms and
+ Edge Management menu for in-depth access and programming of Alarms and
Events.Checking uCPE device Resource Allocation
- When the uCPE device is connected to the Enea uCPE Manager it is
- of interest to check the amount of hardware resources in use.
+ When the uCPE device is connected to the Enea Edge Management it
+ is of interest to check the amount of hardware resources in use.To check CPU, RAM and disk utilization simply select the uCPE
device and go to the Virtual Machines
@@ -1167,9 +1167,9 @@ of=/dev/sdb bs=4M conv=fsync
access. The default user and password are root and
blank, respectively.
- The Enea NFV Access CLI is a pure Linux CLI providing access to
- standard Linux CLI commands. The CLI is a central feature for running
- custom scripting.
+ This is a pure Linux CLI providing access to standard Linux CLI
+ commands. The CLI is a central feature for running custom
+ scripting.In case the uCPE device was installed behind a NAT device, the
diff --git a/doc/book-enea-nfv-access-getting-started/doc/introduction.xml b/doc/book-enea-nfv-access-getting-started/doc/introduction.xml
index 5f8a5ad..4dec1e1 100644
--- a/doc/book-enea-nfv-access-getting-started/doc/introduction.xml
+++ b/doc/book-enea-nfv-access-getting-started/doc/introduction.xml
@@ -4,12 +4,12 @@
Overview
- This document describes the Enea NFV Access and provides installation
+ This document describes the Enea Edge and provides installation
steps for deploying a base configuration in order to create:
- A functional uCPE Management installation ready to manage uCPE
+ A functional Enea Edge Management installation ready to manage uCPE
devices.
@@ -23,32 +23,32 @@
following chapters.
- Enea NFV Access
+ Enea Edge
- Enea NFV Access for universal Customer Premise Equipment (uCPE) is a
+ Enea Edge for universal Customer Premise Equipment (uCPE) is a
virtualization and management platform, which allows end-users to onboard,
instantiate, and run third-party VNFs onto their systems. It is comprised
of two major components working in close cooperation:
- The Enea NFV Access Runtime Platform, which acts as the host
+ The Enea Edge Runtime, which acts as the host
for Virtualized Network Functions (VNFs) and provides management over
NETCONF.
- The Enea uCPE Manager, a solution that runs on an external
+ The Enea Edge Management, a solution that runs on an external
server, used for VNF Management and managing large numbers of uCPE
devices.
- In addition, Enea NFV Access also includes a software framework for
- Automation and Testing (AFTH). More information can be found in
+ In addition, Enea Edge includes a framework for
+ automation and testing. More information can be found in
.
+ xpointer="element(book_enea_nfv_access_auto_fw_user_guide/1)" />.Details concerning release content, including documentation
structure, are provided in the
- Enea NFV Access Runtime Platform
+ Enea Edge Runtime
- Enea NFV Access Runtime Platform is a lightweight,
+ Enea Edge Runtime is a lightweight,
multi-architecture virtualization platform built on de-facto standards
in an SDN/NFV ecosystem. It is designed for a high networking
performance with minimal hardware footprint, by only providing relevant
@@ -87,19 +87,19 @@
- Enea uCPE Manager
+ Enea Edge Management
- The Enea uCPE Manager is centralized control system providing
+ The Enea Edge Management is centralized control system providing
uCPEs domain management capabilities through a GUI and REST API. It can
be deployed on a host or a virtual machine running 64-bit CentOS 7 on an
- x86 platform. The Enea uCPE Manager uses a southbound NETCONF protocol
+ x86 platform. The Enea Edge Management uses a southbound NETCONF protocol
to connect and manage uCPE devices.
- The Enea uCPE Manager provides the following key features:
+ The Enea Edge Management provides the following key features:
- Enea NFV Access Runtime Platform Software Management
+ Enea Edge Runtime Software Management
@@ -141,21 +141,21 @@
- Enea NFV Access
+ Enea Edge
- The Enea NFV Access Runtime Platform and the Enea uCPE
- Manager.
+ The Enea Edge Runtime and the Enea Edge
+ Management.
- Enea NFV Access Runtime Platform
+ Enea Edge RuntimeA lightweight, multi-architecture virtualization
platform, supporting Virtual Machines.
- Enea uCPE Manager
+ Enea Edge ManagementEnea Universal Customer Premises Equipment
Manager.
@@ -164,8 +164,8 @@
uCPE device
- A whitebox running the Enea NFV Access Runtime
- Platform.
+ A whitebox running the Enea Edge
+ Runtime.
diff --git a/doc/book-enea-nfv-access-getting-started/doc/log_collector.xml b/doc/book-enea-nfv-access-getting-started/doc/log_collector.xml
index 1b415a2..baa1340 100644
--- a/doc/book-enea-nfv-access-getting-started/doc/log_collector.xml
+++ b/doc/book-enea-nfv-access-getting-started/doc/log_collector.xml
@@ -4,13 +4,13 @@
Troubleshooting problems on the uCPE device require an analysis of a
set of information i.e. logs collected from the uCPE device and/or the Enea
- uCPE Manager. The following information describes how the log collection
+ Edge Management. The following information describes how the log collection
mechanism works.
- Log collecting using the Enea uCPE Manager
+ Log collecting using the Enea Edge Management
- The Enea uCPE Manager allows for collecting a set of logs and state
+ The Enea Edge Management allows for collecting a set of logs and state
information from a uCPE device.
@@ -53,7 +53,7 @@
It might take some time for the archive to be created. When the
operation completes, a "CollectLogsComplete" notification is sent from
- the uCPE device to the Enea uCPE Manager. This can be viewed in the
+ the uCPE device to the Enea Edge Management. This can be viewed in the
GUI in the Faults menu, after selecting
Events.
@@ -110,7 +110,7 @@
Downloading Logs from the uCPE DeviceThis option transfers a debug file archive from the uCPE device to
- Enea uCPE Manager.
+ Enea Edge Management.
@@ -124,8 +124,8 @@
In the Device File Listing table, select
- the archive you want to download from the uCPE device to Enea uCPE
- Manager.
+ the archive you want to download from the uCPE device to Enea Edge
+ Management.
@@ -133,7 +133,7 @@
button.
The archive will be downloaded from the uCPE device and stored
- on the Enea uCPE Manager.
+ on the Enea Edge Management.
@@ -146,9 +146,9 @@
Downloading collected Logs locally
- This option downloads a logs archive from the Enea uCPE Manager to
+ This option downloads a logs archive from the Enea Edge Management to
a local (user) machine for analysis. The archive must first be available
- in the Enea uCPE Manager in order to be downloaded.
+ in the Enea Edge Management in order to be downloaded.
@@ -236,10 +236,10 @@ select Delete Debug Log Archive.
- Deleting a Logs Archive from the Enea uCPE Manager
+ Deleting a Logs Archive from the Enea Edge Management
- This option deletes a logs archive from the Enea uCPE
- Manager.
+ This option deletes a logs archive from the Enea Edge
+ Management.
@@ -259,13 +259,13 @@ table.
Click the Delete button.
- The file will be deleted from the Enea uCPE Manager and the
+ The file will be deleted from the Enea Edge Management and the
table will be updated.
- Deleting the logs file from the Enea uCPE Manager does not
+ Deleting the logs file from the Enea Edge Management does not
affect the file located on the uCPE device.
@@ -274,7 +274,7 @@ table.
Enabling/Disabling of the Log Collector via PermissionsTo disable the ability to access/download the uCPE device's
- debug-log files from the Enea uCPE Manager, the appropriate permissions
+ debug-log files from the Enea Edge Management, the appropriate permissions
must be changed:
@@ -320,19 +320,19 @@ then select Configuration.
- Downloading Enea uCPE Manager Logs
+ Downloading Enea Edge Management Logs
- Often, sending the Enea uCPE Manager logs together with collected
+ Often, sending the Enea Edge Management logs together with collected
uCPE device logs to the support team provides important information for
troubleshooting (especially in cases of connectivity issues with the
uCPE device and error popups).
- Enea uCPE Manager log files are located in
- application/logs/ in the Enea uCPE Manager's
+ Enea Edge Management log files are located in
+ application/logs/ in the Enea Edge Management's
installation folder
(e.g./opt/ems/ucpemanager/application/logs). They
can be copied from that location, or they can be downloaded using the
- Enea uCPE Manager GUI by performing the following:
+ Enea Edge Management GUI by performing the following:
@@ -372,10 +372,10 @@ then select Configuration.
- Log collecting without using the Enea uCPE Manager
+ Log collecting without using the Enea Edge ManagementLog collection from uCPE Devices can also be done when there is no
- Enea uCPE Manager connection. A SSH connection to uCPE Device is needed
+ Enea Edge Management connection. A SSH connection to uCPE Device is needed
for use of the log collector script, which can be found in the uCPE Device
file system in /usr/local/enea/.
diff --git a/doc/book-enea-nfv-access-getting-started/doc/net_config_options.xml b/doc/book-enea-nfv-access-getting-started/doc/net_config_options.xml
index f610651..65dfb2b 100644
--- a/doc/book-enea-nfv-access-getting-started/doc/net_config_options.xml
+++ b/doc/book-enea-nfv-access-getting-started/doc/net_config_options.xml
@@ -1,24 +1,24 @@
-
+
Network Configuration OptionsVarious Advanced Network Configuration options can be done from Enea
- uCPE Manager GUI.
+ Edge Management GUI.
Device Call Home Connection for Deployment behind NATThe Device Call Home option enables the initiation of the connection
- between the uCPE Device and the Enea uCPE Manager, from the uCPE device.
- The Device Call Home option is required when deploying a uCPE device
- behind NAT since the IP address of the uCPE device is hidden for the Enea
- uCPE Manager.
+ between the uCPE Device and the Enea Edge Management, from the uCPE
+ device. The Device Call Home option is required when deploying a uCPE
+ device behind NAT since the IP address of the uCPE device is hidden for
+ the Enea Edge Management.
Enable Device Call Home by marking the Device Call Home checkbox
- when registering the uCPE device in Enea uCPE Manager. When using this
- mechanism, the device will initiate a connection to the Enea uCPE Manager
- for NETCONF traffic (over SSH), while the Enea uCPE Manager waits for a
- device connection.
+ when registering the uCPE device in Enea Edge Management. When using this
+ mechanism, the device will initiate a connection to the Enea Edge
+ Management for NETCONF traffic (over SSH), while the Enea Edge Management
+ waits for a device connection.
@@ -90,7 +90,7 @@
virtualization infrastructure and VNFs, they must be configured into the
management system.
- To add an interface into the Enea uCPE Manager, select the uCPE
+ To add an interface into the Enea Edge Management, select the uCPE
device, then from the top toolbar select Configuration, then External Interfaces, Wan Interface Type
WAN interfaces configured during the installation of the uCPE
- device are automatically added in the Enea uCPE manager as type
+ device are automatically added in the Enea Edge Management as type
wan. The WAN interface used for management of the
uCPE device is marked with the Management property
set to True.
@@ -207,12 +207,13 @@
- To edit an interface configuration type from the Enea uCPE
- Manager, select the uCPE device, then from the top toolbar select
- the Configuration menu, then
- External Interfaces and Configuration. The already configured
- interfaces are displayed here, as seen in the figure above.
+ To edit an interface configuration type from the Enea Edge
+ Management, select the uCPE device, then from the top toolbar
+ select the Configuration menu,
+ then External Interfaces and
+ Configuration. The already
+ configured interfaces are displayed here, as seen in the figure
+ above.
@@ -259,11 +260,11 @@
- To edit an interface configuration from the Enea uCPE
- Manager, select the uCPE device, then from the top toolbar select
- the Configuration menu then
- External Interfaces and select
- Configuration. The already
+ To edit an interface configuration from the Enea Edge
+ Management, select the uCPE device, then from the top toolbar
+ select the Configuration menu
+ then External Interfaces and
+ select Configuration. The already
configured interfaces will be displayed here.
@@ -304,9 +305,9 @@
Correct Country Code
selection is mandatory. All configuration options are available in
- the Enea uCPE Manager GUI but only the Radio Settings that conform
- with the selected country's official regulatory laws will be applied
- when the Wireless AP is started on the uCPE Device.
+ the Enea Edge Management GUI but only the Radio Settings that
+ conform with the selected country's official regulatory laws will be
+ applied when the Wireless AP is started on the uCPE Device.
@@ -319,8 +320,8 @@
role="bold">External Interfaces, where a list of available
network interfaces and their capabilities can be found.
- After networking interfaces have been added to the Enea uCPE
- Manager, the user can change the interface type (DPDK, SR-IOV,
+ After networking interfaces have been added to the Enea Edge
+ Management, the user can change the interface type (DPDK, SR-IOV,
Standard, WAN, WAP).
@@ -339,8 +340,8 @@
Configuring Bridges
- After networking interfaces have been added to the Enea uCPE
- Manager, the user can create the necessary OVS bridges.
+ After networking interfaces have been added to the Enea Edge
+ Management, the user can create the necessary OVS bridges.OVS Bridges
@@ -353,8 +354,8 @@
- How to add OVS bridges in the Enea uCPE
- Manager
+ How to add OVS bridges in the Enea Edge
+ Management
@@ -428,7 +429,7 @@
Device management. Part of
- the device configuration done by the Enea uCPE Manager.
+ the device configuration done by the Enea Edge Management.
@@ -537,7 +538,7 @@
physically present (initially) to manage the device.
An offline configuration is usually prepared in advance for the Enea
- uCPE Manager to setup the virtualization infrastructure on the uCPE
+ Edge Management to setup the virtualization infrastructure on the uCPE
device, as soon as a device enrolls into the management system.
@@ -551,12 +552,12 @@
Alternatively, a wildcard can be used in the Device
ID field, which results in a configuration being pushed on all
- uCPE devices upon their initial connection towards the Enea uCPE
- Manager.
+ uCPE devices upon their initial connection towards the Enea Edge
+ Management.
If the offline configuration is not configured for a uCPE device,
an alarm will be raised: Day-0 Config:ZTP:Major,
- which occurs when the uCPE device connects to the Enea uCPE Manager
+ which occurs when the uCPE device connects to the Enea Edge Management
informing that the ZTP setup failed for the specific uCPE device.To create an offline configuration, select from the top toolbar
@@ -598,10 +599,10 @@
The Name is user defined and can be set to any unique text string
identifying the configuration. The Device Version will match the Enea
- NFV Access version of the uCPE device and the Device ID will be set to
- the previously set identifier of the uCPE device.
+ Edge version of the uCPE device and the Device ID will be set to the
+ previously set identifier of the uCPE device.
- When a device connects to the Enea uCPE Manager for the first
+ When a device connects to the Enea Edge Management for the first
time, it checks the device to see if it has been Zero Touch Provisioned
(ZTP). If not, it looks for an offline configuration that matches these
values, in the following order:
@@ -632,7 +633,7 @@
The ZTP will only be triggered the first time a uCPE device
- connects to the Enea uCPE Manager. Just changing an offline
+ connects to the Enea Edge Management. Just changing an offline
configuration will not push the new changes to the device. If an
offline configuration is changed after uCPE device registration, a
factory reset can be executed to force a new ZTP to execute. Select
@@ -654,29 +655,29 @@
Uploading Scripts
- The scripts need to be uploaded to the Enea uCPE Manager prior to
- use. When uploading scripts to the Enea uCPE Manager make sure to select
- the right script type.
+ The scripts need to be uploaded to the Enea Edge Management prior
+ to use. When uploading scripts to the Enea Edge Management make sure to
+ select the right script type.The following script types are supported:
- Once-before-startup. This script will only
- execute once after the system has rebooted, prior to processing any
- device configuration.
+ Once-before-startup. This script will only
+ execute once after the system has rebooted, prior to processing any
+ device configuration.
- Always-before-startup. This script will always
- execute after the system has rebooted, prior to processing any device
- configuration.
+ Always-before-startup. This script will
+ always execute after the system has rebooted, prior to processing
+ any device configuration.
- Once-after-startup. The script will always
- execute after the system has rebooted, after all device configuration
- processes have completed.
+ Once-after-startup. The script will always
+ execute after the system has rebooted, after all device
+ configuration processes have completed.
@@ -734,7 +735,7 @@
Select the script you want to delete from the Uploaded Scripts tab and then click Delete, which will remove the script
- immediately from the Enea uCPE Manager.
+ immediately from the Enea Edge Management.
@@ -742,8 +743,8 @@
Configuring Script Location
- The location where the scripts are staged in the Enea uCPE Manager
- can be chanaged as described below:
+ The location where the scripts are staged in the Enea Edge
+ Management can be chanaged as described below:
@@ -754,7 +755,7 @@
Select the Configuration tab
- and specify a new loacation to store the scripts.
+ and specify a new location to store the scripts.
Change the script storage location only if you have many
@@ -815,12 +816,12 @@
-
+ Wireless Access Point
- The Wireless AP Screen from the Enea uCPE Manager Configuration menu
- allows users to configure a Wireless Access Point. A
- wap-capable interface and a LAN bridge must be added
+ The Wireless AP Screen from the Enea Edge Management Configuration
+ menu allows users to configure a Wireless Access Point.
+ A wap-capable interface and a LAN bridge must be added
before doing the Wireless AP configuration. For more details see sections
Wap interface Type and Data-plane bridge.
diff --git a/doc/book-enea-nfv-access-getting-started/doc/troubleshooting.xml b/doc/book-enea-nfv-access-getting-started/doc/troubleshooting.xml
index f416f8f..4984a35 100644
--- a/doc/book-enea-nfv-access-getting-started/doc/troubleshooting.xml
+++ b/doc/book-enea-nfv-access-getting-started/doc/troubleshooting.xml
@@ -2,19 +2,19 @@
Troubleshooting and Recovery
- In all scenarios where possible, collect the logs for
- debugging. More information on log collecting can be found in
- In all scenarios where possible, collect the logs for debugging. More
+ information on log collecting can be found in Using the Log Collector in the
Manual.
- The following is a small list of possible Enea NFV Access problems,
- and their solutions. If you encounter other issues or can't get Enea NFV Access to work
- successfully after consulting the information below, please use the The following is a small list of possible Enea Edge problems, and
+ their solutions. If you encounter other issues or can't get Enea Edge to
+ work successfully after consulting the information below, please use the
+ Enea Support Team Form, available in the
- Enea NFV Access Problem
+ Enea Edge ProblemSolution
@@ -37,11 +37,11 @@
- A uCPE device fails to connect to the Enea uCPE Manager after
- installation.
+ A uCPE device fails to connect to the Enea Edge Management
+ after installation.
- If the uCPE device is not able to connect to the Enea uCPE
- Manager after an installation, the Web-installer application is
+ If the uCPE device is not able to connect to the Enea Edge
+ Management after an installation, the Web-installer application is
started automatically on the uCPE device to change the configuration
via a web browser. Please see Perform a hardware reboot of the uCPE Device and select
- the previous Enea NFV Access image from the GRUB menu. This
+ the previous Enea Edge Runtime image from the GRUB menu. This
action assumes physical access to the uCPE device.
@@ -77,14 +77,14 @@
- After a failed uCPE device upgrade the previous Enea NFV
- Access image (from the GRUB menu) does not boot.
+ After a failed uCPE device upgrade the previous Enea Edge
+ image (from the GRUB menu) does not boot.
- Reinstall Enea NFV Access on the uCPE device and redeploy the
+ Reinstall Enea Edge on the uCPE device and redeploy the
initial configuration and virtualized services, by following the
steps in Installing Enea NFV Access - uCPE
- Device installation in the Installing Enea Edge - uCPE Device
+ installation in the
@@ -92,8 +92,8 @@
- The Enea uCPE Manager upgrade fails and a working snapshot is
- available.
+ The Enea Edge Management upgrade fails and a working snapshot
+ is available.If a working snapshot obtained during a previous Upgrade or
Uninstall is available
@@ -109,7 +109,7 @@
Restore the previous installation as described in Restoring a previous
- uCPE Manager installation in the
@@ -119,8 +119,8 @@
- The Enea uCPE Manager upgrade fails and no working snapshot
- is available, but a System Back-up file exists.
+ The Enea Edge Management upgrade fails and no working
+ snapshot is available, but a System Back-up file exists.
@@ -131,10 +131,10 @@
Perform an installation with the restore option of a
- previous Enea uCPE Manager configuration as described in
+ previous Enea Edge Management configuration as described in
Installation of the
- uCPE Manager using a System Back-up in the
@@ -145,7 +145,7 @@
The uCPE device is booted, the ssh connection is available
- but the device is not connected to the Enea uCPE Manager.
+ but the device is not connected to the Enea Edge Management.
@@ -155,7 +155,7 @@
Use the Reconnect
- button from the Enea uCPE Manager's GUI.
+ button from the Enea Edge Management's GUI.
@@ -169,8 +169,8 @@
If the above actions do not work, reinstall and
reconfigure the device using the steps provided in Installing Enea NFV Access -
- uCPE Device installation in the Installing Enea Edge - uCPE
+ Device installation in the
@@ -186,8 +186,8 @@
Perform a hardware reboot on the uCPE device. If the problem
is not fixed, reinstall and reconfigure the device using the steps
provided in Installing Enea NFV Access - uCPE
- Device installation in the Installing Enea Edge - uCPE Device
+ installation in the
@@ -207,16 +207,16 @@
Reboot the device by accessing Operations and then selecting Reboot from within the Enea uCPE
- Manager.
+ role="bold">Reboot from within the Enea Edge
+ Management.If the above actions do not work, redeploy all services.
- This is done by cleaning up the existing configuration by
-accessing Operations, then selecting
-Factory Reset for a specific device and
-redeploying the VNF services.
+ This is done by cleaning up the existing configuration by
+ accessing Operations, then
+ selecting Factory Reset for a
+ specific device and redeploying the VNF services.
diff --git a/doc/book-enea-nfv-access-getting-started/doc/upgrade_ena.xml b/doc/book-enea-nfv-access-getting-started/doc/upgrade_ena.xml
index 1b714f2..e833c2d 100644
--- a/doc/book-enea-nfv-access-getting-started/doc/upgrade_ena.xml
+++ b/doc/book-enea-nfv-access-getting-started/doc/upgrade_ena.xml
@@ -1,26 +1,25 @@
-
+
- Upgrading Enea NFV Access
+ Upgrading Enea EdgeEnea provides regular releases that will require the upgrading of Enea
- NFV Access components. The Enea uCPE Manager must be upgraded first,
- followed by upgrading the Enea NFV Access Runtime Platform on the uCPE
- devices.
+ Edge components. The Enea Edge Management must be upgraded first, followed
+ by upgrading the Enea Edge Runtime on the uCPE devices.
- Upgrading the Enea uCPE Manager
+ Upgrading the Enea Edge ManagementIt is recommended to create a system backup by accessing System and selecting System
- Backup from the Enea uCPE Manager GUI, for recovery in case
- of an upgrade failure.
+ Backup from the Enea Edge Management GUI, for recovery in
+ case of an upgrade failure.
Extract the
- Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
+ Enea_Edge_Management_<version>-build<build_number>.tar.gz
folder.The directory in which the archive has been unpacked will be
@@ -33,8 +32,8 @@
Run the following command with the root account and change
- /opt/ems to the correct location of the Enea uCPE
- Manager installation:
+ /opt/ems to the correct location of the Enea Edge
+ Management installation:./upgrade.sh /opt/ems \
Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
@@ -57,7 +56,7 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
The snapshot file created during the upgrade can be used for
- restoring the Enea uCPE Manager.
+ restoring the Enea Edge Management.
@@ -71,24 +70,25 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
- For an example on how to upgrade an Enea uCPE Manager installation in a
- High Availability setup, consult For an example on how to upgrade an Enea Edge Management
+ installation in a High Availability setup, consult Upgrading a High Availability Deployment in the
- Manual.
+
+ Manual.
- Restoring a previous Enea uCPE Manager Installation
+ Restoring a previous Enea Edge Management Installation
- How to restore a previous Enea uCPE Manager
- installation
+ How to restore a previous Enea Edge
+ Management installationExtract
- Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
+ Enea_Edge_Management_<version>-build<build_number>.tar.gz
@@ -99,8 +99,8 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
Copy the snapshot file
(ucpemanager-Backup-YYYYddMMHHmm.tar.gz)
- created during a previous Enea uCPE Manager Upgrade or Enea uCPE
- Manager Uninstall Operation into the
+ created during a previous Enea Edge Management Upgrade or Enea Edge
+ Management Uninstall Operation into the
<uCPEM-installdir> directory.
@@ -110,8 +110,8 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
Run the following command with the root user and change
- /opt/ems to the correct location of the Enea uCPE
- Manager installation:
+ /opt/ems to the correct location of the Enea Edge
+ Management installation:
./restore.sh /opt/ems ucpemanager-Backup-YYYYddMMHHmm.tar.gz
@@ -126,9 +126,9 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
- Reinstall the Enea uCPE Manager application on the specified
- target location, restoring the data in the database and files in the
- process.
+ Reinstall the Enea Edge Management application on the
+ specified target location, restoring the data in the database and
+ files in the process.
@@ -137,21 +137,22 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
- Uninstalling an existing Enea uCPE Manager Installation
+ Uninstalling an existing Enea Edge Management
+ Installation
- How to uninstall an existing Enea uCPE
- Manager installation
+ How to uninstall an existing Enea Edge
+ Management installation
- Navigate to the folder where the Enea uCPE Manager is
+ Navigate to the folder where the Enea Edge Management is
installed: <uCPEM-installdir>.Run the following command with the root user and change
- /opt/ems to the correct location of the Enea uCPE
- Manager installation:
+ /opt/ems to the correct location of the Enea Edge
+ Management installation:
./uninstall.sh /opt/ems
@@ -174,7 +175,7 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
The snapshot file created during the uninstall can be used
- for restoring the Enea uCPE Manager.
+ for restoring Enea Edge Management.
@@ -193,7 +194,7 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
- After these steps, the Enea uCPE Manager is completely removed
+ After these steps, the Enea Edge Management is completely removed
from the system.
@@ -201,7 +202,7 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
uCPE device Upgrades
- A uCPE device can be upgraded using the Enea uCPE Manager
+ A uCPE device can be upgraded using the Enea Edge Management
GUI.
@@ -266,7 +267,7 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
The uCPE Device upgrade is done with image files of the type
rootfs.ostree.tar.bz2, which are available in the
- Enea_NFV_Access_Run_Time_Platform_<processor>_<version>-build<build_number>.tar.gz
+ Enea_Edge_Runtime_<processor>_<version>-build<build_number>.tar.gz
file you downloaded with your release.
@@ -362,7 +363,7 @@ Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
- The hour represents the local Enea uCPE Manager server
+ The hour represents the local Enea Edge Management server
hour.
diff --git a/doc/book-enea-nfv-access-getting-started/doc/vnf_mg.xml b/doc/book-enea-nfv-access-getting-started/doc/vnf_mg.xml
index e8c65eb..fbf7091 100644
--- a/doc/book-enea-nfv-access-getting-started/doc/vnf_mg.xml
+++ b/doc/book-enea-nfv-access-getting-started/doc/vnf_mg.xml
@@ -2,17 +2,17 @@
VNF Management
- The Enea uCPE Manager is responsible for onboarding, configuring (e.g.
- CloudInit) and ensuring life cycle management of VNFs that are instantiated
- and run on the various uCPE devices.
+ The Enea Edge Management is responsible for onboarding, configuring
+ (e.g. CloudInit) and ensuring life cycle management of VNFs that are
+ instantiated and run on the various uCPE devices.Onboarding a VNF
- The onboarding of a VNF means adding it to the Enea uCPE Manager VNF
- Catalogue and preparing it for instantiation (deployment on connected uCPE
- devices). This is accomplished using the Enea uCPE Manager Onboarding
- graphical user interface.
+ The onboarding of a VNF means adding it to the Enea Edge Management
+ VNF Catalogue and preparing it for instantiation (deployment on connected
+ uCPE devices). This is accomplished using the Enea Edge Management
+ Onboarding graphical user interface.Typically, the Getting Started Guide of a VNF, provided by the VNF
vendor, contains all necessary information needed to onboard a VNF.
@@ -35,8 +35,8 @@
There are no standard ways of managing VNF licenses,
therefore no general guidelines can be provided. One example of
- license handling that can be employed in the Enea uCPE Manager is
- the adding of a license during the Cloud-Init setup.
+ license handling that can be employed in the Enea Edge Management
+ is the adding of a license during the Cloud-Init setup.
@@ -109,32 +109,35 @@
- Onboarding into the Enea uCPE Manager
+ Onboarding into the Enea Edge Management
- How to onboard a VNF into the Enea uCPE
- Manager
+ How to onboard a VNF into the Enea Edge
+ Management
- Select from the top toolbar VNF
- and then Descriptors.
+ Select from the top toolbar VNF and then Descriptors.
- Click the On-board button.
+ Click the On-board
+ button.
- When prompted by the UI, make sure the VM
- Image radio button at the top of the onboarding screen is
- selected, it will trigger a popup menu window.
+ When prompted by the UI, make sure the VM Image radio button at the top of the
+ onboarding screen is selected, it will trigger a popup menu
+ window.This window contains data fields where both necessary and optional
information about the VNF can be supplied. After doing so, press the
- Onboard button, the Enea uCPE Manager will create the VNF descriptor and
- add it to its VNF Catalog.
+ Onboard button, the Enea Edge Management will create the VNF descriptor
+ and add it to its VNF Catalog.
Onboard a VNF
@@ -153,8 +156,8 @@
VM Image File. This is the
Virtual Machine image file for the VNF. Typically, it is a QCOW
- image. Press Choose File and select the image you
- wish to upload.
+ image. Press Choose File and select
+ the image you wish to upload.
@@ -171,7 +174,7 @@
Description. This field
contains any description provided and is only displayed in the GUI
- tables in the Enea uCPE Manager.
+ tables in the Enea Edge Management.
@@ -203,14 +206,14 @@
Interfaces Tab
- Click on the Interfaces tab to show the
- Interfaces table.
+ Click on the Interfaces tab to
+ show the Interfaces table.This table will contain the interfaces required by this VNF to be
configured, when creating an instance. Consult the VNF vendor to
determine which and how many are required. Each interface requires a
- name, and optionally a description, used only by the Enea uCPE
- Manager.
+ name, and optionally a description, used only by the Enea Edge
+ Management.
CAUTION: The user MUST conserve the same order for the virtual
@@ -219,9 +222,9 @@
Cloud Init Tab
- Click the Cloud Init tab to provide the
- Cloud-Init configuration. There are three fields that need to be
- populated:
+ Click the Cloud Init tab to
+ provide the Cloud-Init configuration. There are three fields that need
+ to be populated:
@@ -273,7 +276,7 @@
The Content Files Table is ONLY used if
ConfigDrive is chosen as the Cloud-Init
Datasource. For each content file added, a Path
- must be provided. When the Enea uCPE Manager is used to create an
+ must be provided. When the Enea Edge Management is used to create an
instance for multiple VNFs, the user will be prompted to provide a
data file for each entry in this table. Each type of VNF will
require different cloud-init files, e.g.: a license file. The data
@@ -292,9 +295,9 @@
In this table, you can enter values for properties that will be
used during instantiation of the VNF. The values will augment the
default values in the domain.xml file used by
- libvirt/virsh (running in Enea NFV Access) when
- creating an instance of the VNF. Consult with the VNF Vendor or ENEA
- support for values needed by specific VNFs.
+ libvirt/virsh (running in Enea Edge) when creating an
+ instance of the VNF. Consult with the VNF Vendor or ENEA support for
+ values needed by specific VNFs.Property Values
@@ -349,8 +352,8 @@
- Select from the top toolbar VNF and
- choose Instances.
+ Select from the top toolbar VNF
+ and choose Instances.
@@ -406,13 +409,14 @@
- Hit the Create button to deploy the VNF and
- run it on the specified uCPE device.
+ Hit the Create button to deploy
+ the VNF and run it on the specified uCPE device.
- Selecting the VNF menu then choosing Events
- will show that the VNF was created and a connection was established.
+ Selecting the VNF menu then
+ choosing Events will show that the VNF
+ was created and a connection was established.
@@ -425,8 +429,9 @@
- SSH to the uCPE device from the Enea uCPE Manager
- (Access the Device menu and select SSH) using:
+ SSH to the uCPE device from the Enea Edge Management (Access the
+ Device menu and select SSH) using:
@@ -440,12 +445,13 @@
For reverse ssh connections (ssh to a uCPE device behind
NAT): the Username (default: root) and the
Reverse ssh checkbox checked. The port will be
- automatically choosen by the Enea uCPE Manager in the range
- defined in the SSH configuration panel,
- available when accessing System, then
- Configuration and choosing Reverse
- SSH . By default, the start port will
- be 7000 and the maximum number of ports
+ automatically chosen by the Enea Edge Management in the range
+ defined in the SSH configuration
+ panel, available when accessing System, then Configuration and choosing Reverse SSH . By default, the start port
+ will be 7000 and the maximum number of ports
allocated to all devices is 10. Only one port per device is
allowed.
diff --git a/doc/book-enea-nfv-access-getting-started/swcomp.mk b/doc/book-enea-nfv-access-getting-started/swcomp.mk
index ca6439f..52b433e 100755
--- a/doc/book-enea-nfv-access-getting-started/swcomp.mk
+++ b/doc/book-enea-nfv-access-getting-started/swcomp.mk
@@ -6,5 +6,5 @@ BOOK_VER ?= $(REL_VER)-dev
DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
BOOKPACKAGES := book-enea-nfv-access-getting-started
-BOOKDESC_$(BOOKPACKAGES) := "Enea NFV Access $(PROD_VER) Getting Started"
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge $(PROD_VER) Getting Started"
BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-nfv-access-platform-open-source/doc/about.xml b/doc/book-enea-nfv-access-platform-open-source/doc/about.xml
index 377562c..2a8bf01 100644
--- a/doc/book-enea-nfv-access-platform-open-source/doc/about.xml
+++ b/doc/book-enea-nfv-access-platform-open-source/doc/about.xml
@@ -4,5 +4,5 @@
About this Report
- This document contains the open source and license information pertaining to packages provided with this release of the Enea NFV Access Runtime Platform and the Installer.
+ This document contains the open source and license information pertaining to packages provided with this release of the Enea Edge Runtime and the Installer.
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-platform-open-source/doc/book.xml b/doc/book-enea-nfv-access-platform-open-source/doc/book.xml
index a17bb3d..1150b11 100644
--- a/doc/book-enea-nfv-access-platform-open-source/doc/book.xml
+++ b/doc/book-enea-nfv-access-platform-open-source/doc/book.xml
@@ -4,7 +4,7 @@
]>
- Enea NFV Access Runtime Platform Open Source Report
+ Enea Edge Runtime Open Source ReportRelease Version
diff --git a/doc/book-enea-nfv-access-platform-open-source/doc/licenses.xml b/doc/book-enea-nfv-access-platform-open-source/doc/licenses.xml
index 352f820..6f9aa06 100644
--- a/doc/book-enea-nfv-access-platform-open-source/doc/licenses.xml
+++ b/doc/book-enea-nfv-access-platform-open-source/doc/licenses.xml
@@ -538,13 +538,13 @@ specific documentation.-->
enea-nfv-access-vnf1.0
- VNF image of the Enea NFV Access Platform includes kernel rootfs and boot parameters
+ VNF image of the Enea Edge Runtime includes kernel rootfs and boot parametersMITenea-nfv-access1.0
- Image for the host side of the Enea NFV Access Platform with ODM and NETCONF Edgelink customizations
+ Image for the host side of the Enea Edge Runtime with ODM and NETCONF Edgelink customizationsMIT
@@ -1738,13 +1738,13 @@ specific documentation.-->
nfv-installer1.0
- Enea NFV Access installer
+ Enea Edge installerEneanfva-cfgtool1.0
- Command line tool to for accessing the Enea NFV Access install configuration json file
+ Command line tool to for accessing the Enea Edge install configuration json fileEnea
@@ -1960,7 +1960,7 @@ specific documentation.-->
packagegroup-enea-wifi1.0
- This package group includes packages and packagegroups that enable WiFi connectivity in the Enea NFV Access platform
+ This package group includes packages and packagegroups that enable WiFi connectivity in the Enea Edge RuntimeMIT
diff --git a/doc/book-enea-nfv-access-platform-open-source/swcomp.mk b/doc/book-enea-nfv-access-platform-open-source/swcomp.mk
index fc62acc..20202e4 100644
--- a/doc/book-enea-nfv-access-platform-open-source/swcomp.mk
+++ b/doc/book-enea-nfv-access-platform-open-source/swcomp.mk
@@ -6,5 +6,5 @@ BOOK_VER ?= $(REL_VER)-dev
DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
BOOKPACKAGES := book-enea-nfv-access-platform-open-source
-BOOKDESC_$(BOOKPACKAGES) := "Enea NFV Access Runtime Platform Open Source Report"
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge Runtime Open Source Report"
BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-nfv-access-release-info/doc/about_release.xml b/doc/book-enea-nfv-access-release-info/doc/about_release.xml
index 2078a30..960f136 100644
--- a/doc/book-enea-nfv-access-release-info/doc/about_release.xml
+++ b/doc/book-enea-nfv-access-release-info/doc/about_release.xml
@@ -4,13 +4,13 @@
About This Release
- Enea NFV Access is a complete NFVI software platform designed for
+ Enea Edge is a complete NFVI software platform designed for
deployment on any white box uCPE device, and optimized for common use cases.
- Enea NFV Access includes both the Runtime Platform deployed on a white box,
+ Enea Edge includes both the Enea Edge Runtime deployed on a white box,
and a management component with automation tools deployed in a private or
public cloud.
- The Enea NFV Access The Enea Edge Release includes a new version of
@@ -20,29 +20,29 @@
Improvements.
- Enea NFV Access Release Content
+ Enea Edge Release ContentThe release content is detailed below:
- Enea_NFV_Access_Run_Time_Platform_C3000_<version>-build<build_number>.tar.gz
+ Enea_Edge_Runtime_C3000_<version>-build<build_number>.tar.gz
- Enea_NFV_Access_Run_Time_Platform_XeonD_<version>-build<build_number>.tar.gz
+ Enea_Edge_Runtime_XeonD_<version>-build<build_number>.tar.gz
- Enea_NFV_Access_AutomationFramework_<version>-build<build_number>.zip
+ Enea_Edge_Automation_<version>-build<build_number>.zip
- Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
+ Enea_Edge_Management_<version>-build<build_number>.tar.gz
- Enea_NFV_Access_Telemetry_Deploy_<version>-build<build_number>.tar.gz
+ Enea_Edge_Telemetry_Deploy_<version>-build<build_number>.tar.gz
@@ -50,14 +50,14 @@
- Enea_NFV_Access_AF-TH_<version>-build<build_number>.zip
+ Enea_Edge_AF-TH_<version>-build<build_number>.zip
(deprecated, see Section 2.1 New Features and
Improvements.)-- documentation/
- /* Enea NFV Access documentation */
+ /* Enea Edge documentation */
-- README
-- aarch64 /* architecture */
-- cn8304/
@@ -104,13 +104,13 @@
User Documentation
- This release of Enea NFV Access contains the following set of
+ This release of Enea Edge contains the following set of
documents:
- Enea NFV Access Release Information. Describes the Enea NFV
- Access release content, main changes, the list of known issues and
+ Enea Edge Release Information. Describes the Enea Edge
+ release content, main changes, the list of known issues and
limitations.
@@ -118,7 +118,7 @@
.
- Describes how to deploy and upgrade an Enea NFV Access base
+ Describes how to deploy and upgrade an Enea Edge base
configuration, advanced configurations of the system and
troubleshooting information.
@@ -135,14 +135,14 @@
.
- Describes the Automation Framework for Enea NFV Access.
+ Describes the Automation Framework for Enea Edge.
. Describes the
- Automation Framework and Test Harness for Enea NFV Access and
+ Automation Framework and Test Harness for Enea Edge and
provides instructions regarding the necessary steps to run these
software tools (deprecated, see
Section 2.1 New Features
@@ -153,7 +153,7 @@
.
- Describes a sample Test Suite for System Testing of Enea NFV Access.
+ Describes a sample Test Suite for System Testing of Enea Edge.
(deprecated, see Section 2.1
New Features and Improvements).
diff --git a/doc/book-enea-nfv-access-release-info/doc/book.xml b/doc/book-enea-nfv-access-release-info/doc/book.xml
index 4a1e390..cffe9b5 100644
--- a/doc/book-enea-nfv-access-release-info/doc/book.xml
+++ b/doc/book-enea-nfv-access-release-info/doc/book.xml
@@ -4,7 +4,7 @@
]>
- Enea NFV Access Release
+ Enea Edge Release
InformationRelease Version
diff --git a/doc/book-enea-nfv-access-release-info/doc/known_bugs_and_limitations.xml b/doc/book-enea-nfv-access-release-info/doc/known_bugs_and_limitations.xml
index 31d3a03..d71deff 100644
--- a/doc/book-enea-nfv-access-release-info/doc/known_bugs_and_limitations.xml
+++ b/doc/book-enea-nfv-access-release-info/doc/known_bugs_and_limitations.xml
@@ -9,7 +9,7 @@
- LXCR-9904Enea NFV Access cannot be installed on
+ LXCR-9904Enea Edge Runtime cannot be installed on
USB storage devices.
@@ -20,13 +20,13 @@
ELCCR-527Cancelling a file upload in the Enea
- uCPE Manager will require the user to close and reopen the upload window
+ Edge Management will require the user to close and reopen the upload window
for the next upload to work.
- ELCCR-577If a uCPEM is restored from a backup
- made on a release version older than 2.2.3, VNFs cannot be instantiated
+ ELCCR-577If Enea Edge Management is restored from a backup
+ made on a release version older than Enea NFV Access 2.2.3, VNFs cannot be instantiated
from the GUI.
@@ -45,8 +45,7 @@
ELCCR-847The Juniper vSRX VNF cannot be
instantiated on the Xeon-D architectures due to missing CPU features in
- the VNF's domain XML. This impacts all example use cases and AF&TH
- tests where the Juniper VNF is used.
+ the VNF's domain XML. This impacts all example use cases where the Juniper VNF is used.
@@ -58,33 +57,33 @@
LXCR-9992Depending on hardware capabilities,
there are certain limitations regarding the vfio-pci
- and igb_uio drivers. While the Enea NFV Access Run
- Time Platform uses the vfio-pci driver by default,
+ and igb_uio drivers. While the Enea Edge
+ Runtime uses the vfio-pci driver by default,
for certain hardware configurations, igb_uio should
be used instead, by providing custom scripting. Please contact Enea for
further details.
- STCR-6224The Enea NFV Access Automation Framework
- and the Enea NFV Access Automation Framework and Test Harness do not
+ STCR-6224The Enea Edge Automation
+ and the Enea Edge Automation Framework and Test Harness do not
support multiple custom scripts uploaded to a uCPE device at the same
time.STCR-6292Management of WAN Interfaces is not
- implemented in the Automation Framework and Test Harness.
+ implemented in the Enea Edge Automation Framework and Test Harness.
- USERDOCAP-628Enea NFV Access Automation Framework
+ USERDOCAP-628Enea Edge Automation Framework
and Test Harness does not have support for product features implemented
- in Enea NFV Access 2.4.0 or newer.
+ in Enea Edge 2.4.0 or newer.
- ELCCR-912When the Enea uCPE Manager is installed
+ ELCCR-912When the Enea Edge Management is installed
on CentOS 7, prior to C7.1804 (kernel version 3.10.0-862), adding an
upgrade image fails. As a workaround, please update glib2
to version 2.54.2 or later, using #yum update glib2.
@@ -101,8 +100,8 @@
- USERDOCAP-641Enea NFV Access does not have support
- for IPv6 addresses on both uCPE devices and the Enea uCPE Manager
+ USERDOCAP-641Enea Edge does not have support
+ for IPv6 addresses on both uCPE devices and the Enea Edge Management
installation.
@@ -125,14 +124,14 @@
ELCCR-1371The current self-signed certificate for
- the Enea uCPE Manager is generated at build time, with a hard-coded common-name
+ the Enea Edge Management is generated at build time, with a hard-coded common-name
causing the uCPE device upgrade to fail in HTTPS mode. As a workaround,
another certificate (containing an IP based common-name) must be generated.Perform the following the steps to generate the certificate:
- Stop the uCPE Manager service.
+ Stop the Enea Edge Management service.Create the certificate using the
createCertificate.sh script from distribution
@@ -141,7 +140,7 @@
/opt/ems/ucpemanager/application/3rdParty/apache-tomcat/conf/config/certificates
folder.
- Start the Enea uCPE Manager, the new certificate
+ Start the Enea Edge Management, the new certificate
should now take effect.
diff --git a/doc/book-enea-nfv-access-release-info/doc/main_changes.xml b/doc/book-enea-nfv-access-release-info/doc/main_changes.xml
index 10faf28..c01a149 100644
--- a/doc/book-enea-nfv-access-release-info/doc/main_changes.xml
+++ b/doc/book-enea-nfv-access-release-info/doc/main_changes.xml
@@ -6,8 +6,7 @@
Below you'll find information about the new features and updates made
in this release, as well as details on the provided packages and the
- backwards compatibility with previous versions of Enea NFV Access if
- applicable.
+ backwards compatibility with previous versions.
New Features and Improvements
@@ -27,22 +26,22 @@
CPDX-3498High Availability support with redundant
- Enea uCPE Managers in active standby configuration.
+ Enea Edge Management in active standby configuration.
CPDX-3407HTTPS based downloads of VNFs for
- simplified deployment of the Enea uCPE Manager in cloud
+ simplified deployment of the Enea Edge Management in cloud
environments.
- CPDX-3500The Enea NFV Access Automation
- Framework, a tool for automatic system configuration based on Python
- scripting that will replace the existing Enea NFV Access Automation
+ CPDX-3500The Enea Edge Automation,
+ a tool for automatic system configuration based on Python
+ scripting that will replace the existing Enea Edge Automation
Framework and Test Harness in the next major release.
- The Enea NFV Access Automation Framework and Test Harness, and
+ The Enea Edge Automation Framework and Test Harness, and
its related documentation the
- are deprecated starting with Enea NFV Access 2.4.0.
+ are deprecated starting with Enea Edge 2.4.0.
@@ -85,15 +84,15 @@
Platform Snapshots allow users to store, manage and restore
- snapshots of the Enea NFV Access Runtime Platform configuration,
+ snapshots of the Enea Edge Runtime configuration,
with the purpose of recovering after a failed reconfiguration.
This feature is disabled by default.VNF Snapshots allow users to store, manage and restore
- snapshots of VNFs deployed on the Enea NFV Access Runtime
- Platform, with the purpose of restoring the VNF after a persistent
+ snapshots of VNFs deployed on the Enea Edge
+ Runtime, with the purpose of restoring the VNF after a persistent
VNF failure. This feature is disabled by default.
@@ -117,39 +116,39 @@
Open SourceFor more information about the Open Source packages included, please
- refer to the Enea NFV Access Open Source Reports listed below. Each report
+ refer to the Enea Edge Open Source Reports listed below. Each report
contains open source and license information pertaining to packages
provided with this release, for their respective component.
- .
+ xmlns:xi="http://www.w3.org/2001/XInclude" />.
- .
+ xmlns:xi="http://www.w3.org/2001/XInclude" />.
- .
+ xmlns:xi="http://www.w3.org/2001/XInclude" />.
- .
+ xmlns:xi="http://www.w3.org/2001/XInclude" />.
- .
+ xmlns:xi="http://www.w3.org/2001/XInclude" />.
diff --git a/doc/book-enea-nfv-access-release-info/swcomp.mk b/doc/book-enea-nfv-access-release-info/swcomp.mk
index 3ba7c8d..76991ee 100644
--- a/doc/book-enea-nfv-access-release-info/swcomp.mk
+++ b/doc/book-enea-nfv-access-release-info/swcomp.mk
@@ -6,5 +6,5 @@ BOOK_VER ?= $(REL_VER)-dev
DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
BOOKPACKAGES := book-enea-nfv-access-release-info
-BOOKDESC_$(BOOKPACKAGES) := "Enea NFV Access $(PROD_VER) Release Information"
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge $(PROD_VER) Release Information"
BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-nfv-access-system-test-specification/doc/book.xml b/doc/book-enea-nfv-access-system-test-specification/doc/book.xml
index 2620554..9192ef5 100644
--- a/doc/book-enea-nfv-access-system-test-specification/doc/book.xml
+++ b/doc/book-enea-nfv-access-system-test-specification/doc/book.xml
@@ -4,7 +4,7 @@
]>
- Enea NFV Access System Test Specification
+ Enea Edge System Test SpecificationRelease Version
Test Objects
- The test objects for the Test Harness are the Enea NFV Access and
- Enea uCPE Manager installations performed as indicated in the The test objects for the Test Harness are the Enea Edge and
+ Enea Edge Management installations performed as indicated in the Components chapter of the Before running any test case, make sure the uCPE device(s) needed
- have been added to the uCPE Manager.
+ have been added to the Enea Edge Management.For detailed execution steps of the sample test cases included with
diff --git a/doc/book-enea-nfv-access-system-test-specification/doc/overview.xml b/doc/book-enea-nfv-access-system-test-specification/doc/overview.xml
index 5a04673..07c5ef7 100644
--- a/doc/book-enea-nfv-access-system-test-specification/doc/overview.xml
+++ b/doc/book-enea-nfv-access-system-test-specification/doc/overview.xml
@@ -3,7 +3,7 @@
OverviewThis document describes the Test Harness (TH) sample test cases for
- the System Testing of Enea NFV Access, and the necessary environment setup
+ the System Testing of Enea Edge, and the necessary environment setup
to run these tests successfully.
@@ -25,10 +25,10 @@
- Enea NFV Access
+ Enea Edge
- The Enea NFV Access (with ODM) Runtime Platform and the
- Enea uCPE Manager.
+ The Enea Edge (with ODM) Runtime and the
+ Enea Edge Management.
@@ -52,7 +52,7 @@
AF
- Automation Framework for Enea NFV Access.
+ Automation Framework for Enea Edge.
@@ -88,11 +88,11 @@
TH
- Test Harness for Enea NFV Access.
+ Test Harness for Enea Edge.
- uCPE Manager
+ Enea Edge ManagementEnea Universal Customer Premises Equipment Manager.
diff --git a/doc/book-enea-nfv-access-system-test-specification/doc/sample_test_cases.xml b/doc/book-enea-nfv-access-system-test-specification/doc/sample_test_cases.xml
index 2fa087b..b1bfa1e 100644
--- a/doc/book-enea-nfv-access-system-test-specification/doc/sample_test_cases.xml
+++ b/doc/book-enea-nfv-access-system-test-specification/doc/sample_test_cases.xml
@@ -9,14 +9,14 @@
VNF, Device and Network Smoke Test CasesThe following is an automated test suite that acts as basic smoke
- tests for Enea NFV Access, and as a sanity-check test suite for the AF and
+ tests for Enea Edge, and as a sanity-check test suite for the AF and
TH.VNF - Onboard a VNF ImageDescription: Onboarding a VNF
- Image into the uCPE Manager. For details please refer to:
+ Image into the Enea Edge Management. For details please refer to:
@@ -61,7 +61,7 @@ vnfd=<VNF-Descriptor-name>"
VNF - Offboard a VNFDescription: Removing a VNF
- Descriptor from the uCPE Manager. For details please refer to:
+ Descriptor from the Enea Edge Management. For details please refer to:
@@ -74,7 +74,7 @@ vnfd=<VNF-Descriptor-name>"
Precondition: The VNF has been
- previously onboarded in the uCPE Manager instance.
+ previously onboarded in the Enea Edge Management instance.
Action: Run the
offboardVNF.yml Ansible Playbook with the
@@ -93,7 +93,7 @@ vnfd=<VNF-Descriptor-name>"Device - Add a deviceDescription: Adding a uCPE device
- to the uCPE Manager. For details please refer to:
+ to the Enea Edge Management. For details please refer to:
@@ -123,10 +123,10 @@ vnfd=<VNF-Descriptor-name>"
- Device - Upload a NFV Access image
+ Device - Upload a Edge image
- Description: Upload a NFV Access
- image file onto the uCPE Manager. For details please refer to:
+ Description: Upload a Edge
+ image file onto the Enea Edge Management. For details please refer to:
@@ -172,7 +172,7 @@ A file with the same name is already uploaded.
Device - Delete Upgraded FileDescription: Deleting an uploaded
- NFV Access image file from the uCPE Manager. For details please refer
+ Edge image file from the Enea Edge Management. For details please refer
to:
@@ -186,7 +186,7 @@ A file with the same name is already uploaded.
Preconditions: The image file
- must already be uploaded onto the uCPE Manager.
+ must already be uploaded onto the Enea Edge Management.
Action: Run the
deleteUpgradeFile.yml Ansible Playbook with the
@@ -237,10 +237,10 @@ localhost : ok=1 changed=1 unreachable=0 failed=0
- Device - Install and Activate a NFV Access image
+ Device - Install and Activate a Edge imageDescription: Installing and
- Activating a NFV Access image on a uCPE device from the uCPE Manager.
+ Activating a Edge image on a uCPE device from the Enea Edge Management.
For details please refer to:
@@ -255,13 +255,13 @@ localhost : ok=1 changed=1 unreachable=0 failed=0Preconditions:
- The device must be previously added to the uCPE Manager
+ The device must be previously added to the Enea Edge Management
instance.
- The image file must already be uploaded onto the uCPE
- Manager.
+ The image file must already be uploaded onto the Enea Edge
+ Management.
@@ -291,11 +291,11 @@ Duplicate entry - Release already installed
- Device - Upload, Install and Activate a NFV Access image on a
+ Device - Upload, Install and Activate a Edge image on a
uCPE deviceDescription: Upload, install and
- activate a NFV Access image on a uCPE device from the uCPE Manager. For
+ activate a Edge image on a uCPE device from the Enea Edge Management. For
details please refer to:
@@ -335,7 +335,7 @@ Duplicate entry - Release already installed
- The device has to be previously added to the uCPE Manager
+ The device has to be previously added to the Enea Edge Management
instance.
@@ -371,7 +371,7 @@ upgrade_type=xeon_d
Device - Wait a DeviceDescription: Wait for a uCPE
- device to connect to the uCPE Manager. For details please refer
+ device to connect to the Enea Edge Management. For details please refer
to:
@@ -388,7 +388,7 @@ upgrade_type=xeon_d
- The device has to be previously added to the uCPE Manager
+ The device has to be previously added to the Enea Edge Management
instance.
@@ -413,7 +413,7 @@ upgrade_type=xeon_d
Device - Remove a DeviceDescription: Removing a uCPE
- device from the uCPE Manager. For details please refer to:
+ device from the Enea Edge Management. For details please refer to:
@@ -429,7 +429,7 @@ upgrade_type=xeon_d
- The device has to be previously added to the uCPE Manager
+ The device has to be previously added to the Enea Edge Management
instance.
@@ -472,7 +472,7 @@ upgrade_type=xeon_d
A device must have been previously added and connected to the
- uCPE Manager instance.
+ Enea Edge Management instance.
@@ -517,7 +517,7 @@ upgrade_type=xeon_d
- A NIC is bound to a device in a uCPE Manager instance.
+ A NIC is bound to a device in a Enea Edge Management instance.
@@ -556,7 +556,7 @@ upgrade_type=xeon_d
Preconditions:
- A NIC is bound to a device in a uCPE Manager
+ A NIC is bound to a device in a Enea Edge Management
instance.
@@ -599,7 +599,7 @@ upgrade_type=xeon_dPreconditions:
- A Bridge exists for a device in a uCPE Manager
+ A Bridge exists for a device in a Enea Edge Management
instance.
@@ -638,8 +638,8 @@ bridge=<Bridge-name>"Precondition:
- A device must have been previously added and connected to the uCPE
- Manager instance.
+ A device must have been previously added and connected to the Enea Edge
+ Management instance.Action: Run the
configDPDK.yml Ansible Playbook with the
@@ -657,11 +657,11 @@ DEBUG: Set DPDK state to <enable/disable>
- Custom Scripts - Upload a Custom Script to the uCPE
- Manager
+ Custom Scripts - Upload a Custom Script to the Enea Edge
+ ManagementDescription: Upload a Custom
- Script to the uCPE Manager. For details please refer to:
+ Script to the Enea Edge Management. For details please refer to:
@@ -689,15 +689,15 @@ phase=
run using the Test Harness:
# Upload Custom Script task result
-DEBUG: "{{ scriptName }} was uploaded to uCPE Manager!"
+DEBUG: "{{ scriptName }} was uploaded to Enea Edge Management!"
- Custom Scripts - Upload a Custom Script from the uCPE Manager to
+ Custom Scripts - Upload a Custom Script from the Enea Edge Management to
a DeviceDescription: Upload a Custom
- Script from the uCPE Manager to a Device. For details please refer
+ Script from the Enea Edge Management to a Device. For details please refer
to:
@@ -715,12 +715,12 @@ DEBUG: "{{ scriptName }} was uploaded to uCPE Manager!"
A device must have been previously added and connected to the
- uCPE Manager instance.
+ Enea Edge Management instance.
- A Custom Script must have been previously added to the uCPE
- Manager instance.
+ A Custom Script must have been previously added to the Enea Edge
+ Management instance.
@@ -741,11 +741,11 @@ DEBUG: "{{ scriptName }} was uploaded to {{ device }}!"
- Custom Scripts - Remove a Custom Script from the uCPE
- Manager
+ Custom Scripts - Remove a Custom Script from the Enea Edge
+ ManagementDescription: Remove a Custom
- Script from the uCPE Manager. For details please refer to:
+ Script from the Enea Edge Management. For details please refer to:
@@ -759,8 +759,8 @@ DEBUG: "{{ scriptName }} was uploaded to {{ device }}!"
Precondition:
- A Custom Script must have been previously added to the uCPE
- Manager.
+ A Custom Script must have been previously added to the Enea Edge
+ Management.Action: Run the
removeCustomScript.yml Ansible Playbook with the
@@ -772,8 +772,8 @@ phase=
Result: Output of the test case
run using the Test Harness:
- # Remove Custom Script in phase from uCPE Manager task result
-DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from uCPE Manager!"
+ # Remove Custom Script in phase from Enea Edge Management task result
+DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from Enea Edge Management!"
@@ -797,7 +797,7 @@ DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from uCPE Manager!"<
A device must have been previously added and connected to the
- uCPE Manager instance.
+ Enea Edge Management instance.
@@ -827,7 +827,7 @@ DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from {{ device }}!"<
Store
Description: Adding an Offline
- Config Store to the uCPE Manager. For details please refer to:
+ Config Store to the Enea Edge Management. For details please refer to:
@@ -842,7 +842,7 @@ DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from {{ device }}!"<
Precondition:The Offline Configuration Store should not already exist on
- the uCPE Manager. If it exists, the test will report a
+ the Enea Edge Management. If it exists, the test will report a
duplicate.
@@ -872,7 +872,7 @@ DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from {{ device }}!"<
Store
Description: Removing an Offline
- Config Store from the uCPE Manager. For details please refer to:
+ Config Store from the Enea Edge Management. For details please refer to:
@@ -887,7 +887,7 @@ DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from {{ device }}!"<
Precondition:The Offline Configuration Store the user wishes to remove should
- exist in the uCPE Manager. If it does not, the test will say so.
+ exist in the Enea Edge Management. If it does not, the test will say so.
Action: Run the
removeConfigStore.yml Ansible Playbook with the
@@ -908,7 +908,7 @@ DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from {{ device }}!"<
Configuration Store
Description: Adding a network
- bridge to an Offline Config Store in uCPE Manager. For details please
+ bridge to an Offline Config Store in Enea Edge Management. For details please
refer to:
@@ -925,8 +925,8 @@ DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from {{ device }}!"<
- The Offline Configuration Store should exist in the uCPE
- Manager. If it does not, the test will say so.
+ The Offline Configuration Store should exist in the Enea Edge
+ Management. If it does not, the test will say so.
@@ -980,8 +980,8 @@ DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from {{ device }}!"<
Precondition:
- An empty Offline Configuration Store should exist in uCPE
- Manager.
+ An empty Offline Configuration Store should exist in Enea Edge
+ Management.Action: Run the
configOfflineDPDK.yml Ansible Playbook with the
@@ -1022,12 +1022,12 @@ INFO: Done
- The Offline Configuration Store should exist in the uCPE
- Manager.
+ The Offline Configuration Store should exist in the Enea Edge
+ Management.
- The device should be connected to the uCPE Manager.
+ The device should be connected to the Enea Edge Management.
@@ -1078,7 +1078,7 @@ INFO: Done
- The device should be connected to the uCPE Manager.
+ The device should be connected to the Enea Edge Management.
@@ -1109,8 +1109,7 @@ INFO: Done
VNF Deployment and LifecycleThe following details the automated suite that handles the testing
- of the instantiation, lifecycle and destruction of a VNF for Enea NFV
- Access.
+ of the instantiation, lifecycle and destruction of a VNF for Enea Edge.Instantiating a VNFI
@@ -1131,7 +1130,7 @@ INFO: Done
Preconditions:A VNF Image is onboarded and a device is added and connected
- to the uCPE Manager. Depending on the VNF, other steps may be
+ to the Enea Edge Management. Depending on the VNF, other steps may be
required.
@@ -1250,8 +1249,8 @@ vnfi=<VNFI-name>"
- Wait for the uCPE device to be connected in the Enea uCPE
- Manager.
+ Wait for the uCPE device to be connected in the Enea Edge
+ Management.
@@ -1272,7 +1271,7 @@ vnfi=<VNFI-name>"Instantiate the FortiGate VNF using the basic Firewall
- configuration provided with your Enea NFV Access Release, and the
+ configuration provided with your Enea Edge Release, and the
Fortigate License file.
@@ -1323,7 +1322,7 @@ vnfi=<VNFI-name>"A device must have been previously added and connected to
- the uCPE Manager instance.
+ the Enea Edge Management instance.
@@ -1447,7 +1446,7 @@ FortigateFWInstance tested successfully!
A device must have been previously added and connected to
- the uCPE Manager instance.
+ the Enea Edge Management instance.
@@ -1500,9 +1499,9 @@ FortigateFWInstance tested successfully!
FortiGate VNF as a
- Firewall in the
Manual.
@@ -1511,8 +1510,8 @@ FortigateFWInstance tested successfully!
Python Unit-Test Suite in
- .
@@ -1542,7 +1541,7 @@ FortigateFW Scenario deployed successfully!
Description: This sample test
case corresponds to the "VNF Chaining Example Use-case" from the Enea
- NFV Access Example Use-cases manual.
+ Edge Example Use-cases manual.
For details please refer to:
@@ -1565,7 +1564,7 @@ FortigateFW Scenario deployed successfully!
Two devices must have been previously added and connected to
- the uCPE Manager instance.
+ the Enea Edge Management instance.
@@ -1726,7 +1725,7 @@ LAN-to-LAN connectivity (through VPN tunnel)tested successfully!
- Upload a Custom Script onto the uCPE Manager.
+ Upload a Custom Script onto the Enea Edge Management.
@@ -1746,7 +1745,7 @@ LAN-to-LAN connectivity (through VPN tunnel)tested successfully!
- Remove the Custom Script from the uCPE Manager.
+ Remove the Custom Script from the Enea Edge Management.
@@ -1755,7 +1754,7 @@ LAN-to-LAN connectivity (through VPN tunnel)tested successfully!
A device must have been previously added and connected to the
- uCPE Manager.
+ Enea Edge Management.
@@ -1792,7 +1791,7 @@ inteld1521-1 ansible_host=172.24.12.73 ansible_port=22 ansible_user=root \
Result: Output of
basicTest.yml:
- test_success_after_always was uploaded to uCPE Manager!
+ test_success_after_always was uploaded to Enea Edge Management!
test_success_after_always was uploaded to <Device-name>!
<Device-name> device is connected!
@@ -1800,6 +1799,6 @@ test_success_after_always from phase always-after-startup was removed \
from <Device-name>!
test_success_after_always from phase always-after-startup was removed \
-from uCPE Manager!
+from Enea Edge Management!
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-system-test-specification/swcomp.mk b/doc/book-enea-nfv-access-system-test-specification/swcomp.mk
index aea86ca..6e08a56 100755
--- a/doc/book-enea-nfv-access-system-test-specification/swcomp.mk
+++ b/doc/book-enea-nfv-access-system-test-specification/swcomp.mk
@@ -6,5 +6,5 @@ BOOK_VER ?= $(REL_VER)-dev
DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
BOOKPACKAGES := book-enea-nfv-access-system-test-specification
-BOOKDESC_$(BOOKPACKAGES) := "Enea NFV Access $(PROD_VER) System Test Specification"
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge $(PROD_VER) System Test Specification"
BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-nfv-access-telemetry-open-source/doc/about.xml b/doc/book-enea-nfv-access-telemetry-open-source/doc/about.xml
index 781b0bd..5366626 100644
--- a/doc/book-enea-nfv-access-telemetry-open-source/doc/about.xml
+++ b/doc/book-enea-nfv-access-telemetry-open-source/doc/about.xml
@@ -5,7 +5,7 @@
About this ReportThis document contains the open source and license information
- pertaining to telemetry packages provided with Enea NFV Access .
diff --git a/doc/book-enea-nfv-access-telemetry-open-source/doc/book.xml b/doc/book-enea-nfv-access-telemetry-open-source/doc/book.xml
index b005dae..c671fd7 100644
--- a/doc/book-enea-nfv-access-telemetry-open-source/doc/book.xml
+++ b/doc/book-enea-nfv-access-telemetry-open-source/doc/book.xml
@@ -4,7 +4,7 @@
]>
- Enea NFV Access Telemetry Open Source Report
+ Enea Edge Telemetry Open Source ReportRelease Version
diff --git a/doc/book-enea-nfv-access-telemetry-open-source/swcomp.mk b/doc/book-enea-nfv-access-telemetry-open-source/swcomp.mk
index 0314da2..332d0c8 100644
--- a/doc/book-enea-nfv-access-telemetry-open-source/swcomp.mk
+++ b/doc/book-enea-nfv-access-telemetry-open-source/swcomp.mk
@@ -6,5 +6,5 @@ BOOK_VER ?= $(REL_VER)-dev
DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
BOOKPACKAGES := book-enea-nfv-access-telemetry-open-source
-BOOKDESC_$(BOOKPACKAGES) := "Enea NFV Access Telemetry Open Source Report"
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge Telemetry Open Source Report"
BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-nfv-access-ucpem-open-source/doc/about.xml b/doc/book-enea-nfv-access-ucpem-open-source/doc/about.xml
index d443886..05cea19 100644
--- a/doc/book-enea-nfv-access-ucpem-open-source/doc/about.xml
+++ b/doc/book-enea-nfv-access-ucpem-open-source/doc/about.xml
@@ -5,7 +5,7 @@
About this ReportThis document contains the open source and license information
- pertaining to packages provided with Enea NFV Access .
diff --git a/doc/book-enea-nfv-access-ucpem-open-source/doc/book.xml b/doc/book-enea-nfv-access-ucpem-open-source/doc/book.xml
index d140047..7401818 100644
--- a/doc/book-enea-nfv-access-ucpem-open-source/doc/book.xml
+++ b/doc/book-enea-nfv-access-ucpem-open-source/doc/book.xml
@@ -4,7 +4,7 @@
]>
- Enea NFV Access uCPE Manager Open Source Report
+ Enea Edge Management Open Source ReportRelease Version
diff --git a/doc/book-enea-nfv-access-ucpem-open-source/swcomp.mk b/doc/book-enea-nfv-access-ucpem-open-source/swcomp.mk
index 15d7a6d..a7e39ab 100644
--- a/doc/book-enea-nfv-access-ucpem-open-source/swcomp.mk
+++ b/doc/book-enea-nfv-access-ucpem-open-source/swcomp.mk
@@ -6,5 +6,5 @@ BOOK_VER ?= $(REL_VER)-dev
DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
BOOKPACKAGES := book-enea-nfv-access-ucpem-open-source
-BOOKDESC_$(BOOKPACKAGES) := "Enea NFV Access uCPE Manager Open Source Report"
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge Management Open Source Report"
BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
--
cgit v1.2.3-54-g00ecf
From 16c27126c593980af9b1a2ebcc62479323069cdb Mon Sep 17 00:00:00 2001
From: Daniel
Date: Fri, 19 Mar 2021 14:43:49 +0100
Subject: Makefile fix - remove AF books added by mistake
Change-Id: Ia52e479fba35378314eca89dcfbaaf2cba782b13
---
doc/Makefile | 2 +-
.../book-enea-nfv-access-auto-fw-th-user-guide.pdf | Bin 401538 -> 0 bytes
2 files changed, 1 insertion(+), 1 deletion(-)
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-user-guide/book-enea-nfv-access-auto-fw-th-user-guide.pdf
diff --git a/doc/Makefile b/doc/Makefile
index 1a415b3..eb3290b 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -50,7 +50,7 @@ DOCBOOK_TO_BOOKDIR ?= yes
DOCBOOK_CLEANTMP ?= yes
#Components (books) in this subsystem. Now use all books found here
-COMPONENTS := book-enea-nfv-access-auto-fw-th-open-source book-enea-nfv-access-auto-fw-th-user-guide book-enea-nfv-access-cmc-example-usecases book-enea-nfv-access-example-usecases book-enea-nfv-access-getting-started book-enea-nfv-access-platform-open-source book-enea-nfv-access-ucpem-open-source book-enea-nfv-access-telemetry-open-source book-enea-nfv-access-release-info book-enea-nfv-access-system-test-specification book-enea-nfv-access-evalkit book-enea-nfv-access-auto-fw-open-source book-enea-nfv-access-auto-fw-user-guide
+COMPONENTS := book-enea-nfv-access-auto-fw-th-open-source book-enea-nfv-access-auto-fw-th-user-guide book-enea-nfv-access-cmc-example-usecases book-enea-nfv-access-example-usecases book-enea-nfv-access-getting-started book-enea-nfv-access-platform-open-source book-enea-nfv-access-ucpem-open-source book-enea-nfv-access-telemetry-open-source book-enea-nfv-access-release-info book-enea-nfv-access-system-test-specification book-enea-nfv-access-evalkit
# --------------------------------------------------------------
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/book-enea-nfv-access-auto-fw-th-user-guide.pdf b/doc/book-enea-nfv-access-auto-fw-th-user-guide/book-enea-nfv-access-auto-fw-th-user-guide.pdf
deleted file mode 100644
index 5d601c1..0000000
Binary files a/doc/book-enea-nfv-access-auto-fw-th-user-guide/book-enea-nfv-access-auto-fw-th-user-guide.pdf and /dev/null differ
--
cgit v1.2.3-54-g00ecf
From adc6872c65a4b266a67ab20770c29916ca79cb04 Mon Sep 17 00:00:00 2001
From: iosc
Date: Mon, 22 Mar 2021 15:28:31 +0100
Subject: USERDOCAP-636 - all books renamed into enea edge
Change-Id: I3ce4380c19653ef14792960ad968664b70f3c2bf
---
doc/Makefile | 2 +-
.../doc/README | 3 +
.../doc/about.xml | 14 +
.../doc/book.xml | 18 +
.../doc/licenses.xml | 112 +
.../swcomp.mk | 10 +
.../doc/automation_framework_test_harness.xml | 2800 ++++++
.../doc/book.xml | 33 +
.../doc/components.xml | 137 +
.../doc/getting_started.xml | 239 +
.../doc/images/ChainedVNFsService_setup.png | Bin 0 -> 83776 bytes
.../doc/images/autofw_testh_overview.png | Bin 0 -> 60150 bytes
.../doc/images/environment_basicsetup.png | Bin 0 -> 79325 bytes
.../doc/overview.xml | 188 +
.../doc/troubleshooting_guide.xml | 43 +
doc/book-enea-edge-auto-fw-th-user-guide/swcomp.mk | 10 +
.../doc/128t_vnf_router.xml | 715 ++
.../doc/appendix_1.xml | 63 +
.../doc/appendix_2.xml | 326 +
.../doc/appendix_3.xml | 7 +
.../doc/appendix_4.xml | 103 +
.../doc/appendix_5.xml | 243 +
doc/book-enea-edge-example-usecases/doc/book.xml | 44 +
.../doc/clav_vnf_examples.xml | 396 +
.../doc/enea_test_vnf_examples.xml | 308 +
.../doc/forti_vnf_examples.xml | 627 ++
.../doc/images/fortinet_interface.png | Bin 0 -> 55312 bytes
.../doc/images/trgt.png | Bin 0 -> 50826 bytes
.../doc/images/trgt.svg | 1231 +++
.../doc/images/trgt_servicechain.png | Bin 0 -> 69317 bytes
.../doc/images/trgt_servicechain.svg | 1402 +++
.../doc/images/uc_clavister_bridge.png | Bin 0 -> 36145 bytes
.../doc/images/uc_clavister_bridge.svg | 966 ++
.../doc/images/uc_clavister_sriov.png | Bin 0 -> 40185 bytes
.../doc/images/uc_clavister_sriov.svg | 1152 +++
.../doc/images/uc_enea_test_vnf.png | Bin 0 -> 37660 bytes
.../doc/images/uc_enea_test_vnf.svg | 1002 ++
.../doc/images/uc_fortigate_fw.png | Bin 0 -> 27026 bytes
.../doc/images/uc_fortigate_fw.svg | 940 ++
.../doc/images/uc_fortigate_sdwan.png | Bin 0 -> 45248 bytes
.../doc/images/uc_fortigate_sdwan.svg | 1449 +++
.../doc/images/uc_vnf_chaining.png | Bin 0 -> 41097 bytes
.../doc/images/uc_vnf_chaining.svg | 1186 +++
.../doc/introduction.xml | 27 +
.../doc/service_chaining_128t_fortigate.xml | 1064 +++
.../doc/vnf_chaining.xml | 407 +
doc/book-enea-edge-example-usecases/swcomp.mk | 10 +
.../doc/advanced_configurations.xml | 1042 ++
doc/book-enea-edge-getting-started/doc/book.xml | 44 +
doc/book-enea-edge-getting-started/doc/grafana.xml | 266 +
.../doc/images/archive_list.png | Bin 0 -> 87667 bytes
.../doc/images/collect_debug_logs.png | Bin 0 -> 47994 bytes
.../doc/images/debug_settings.png | Bin 0 -> 32833 bytes
.../doc/images/dev_file_mg.png | Bin 0 -> 138952 bytes
.../doc/images/download_files.png | Bin 0 -> 79979 bytes
.../doc/images/edit_inter.png | Bin 0 -> 9000 bytes
.../doc/images/edit_inter_config.png | Bin 0 -> 37721 bytes
.../doc/images/fault_events.png | Bin 0 -> 46986 bytes
.../doc/images/high_av_setup.png | Bin 0 -> 66687 bytes
.../doc/images/onboard_a_vnf_image.png | Bin 0 -> 19864 bytes
.../doc/images/ovs_bridges_tab.png | Bin 0 -> 55326 bytes
.../doc/images/prep_deploy.png | Bin 0 -> 127794 bytes
.../doc/images/prep_execution.png | Bin 0 -> 121264 bytes
.../doc/images/telemetry_settings.png | Bin 0 -> 28977 bytes
.../doc/images/telemetry_start.png | Bin 0 -> 14763 bytes
.../doc/images/vnf_space.png | Bin 0 -> 39641 bytes
.../doc/images/wap_external_interface.png | Bin 0 -> 18534 bytes
.../doc/images/wap_wireless_ap.png | Bin 0 -> 21250 bytes
.../doc/installation_guide.xml | 1193 +++
.../doc/introduction.xml | 264 +
.../doc/log_collector.xml | 401 +
.../doc/net_config_options.xml | 886 ++
.../doc/troubleshooting.xml | 226 +
.../doc/upgrade_ena.xml | 588 ++
doc/book-enea-edge-getting-started/doc/vnf_mg.xml | 477 +
doc/book-enea-edge-getting-started/swcomp.mk | 10 +
.../doc/README | 4 +
.../doc/about.xml | 12 +
.../doc/book.xml | 15 +
.../doc/licenses.xml | 5872 ++++++++++++
.../swcomp.mk | 10 +
.../doc/about_release.xml | 184 +
doc/book-enea-edge-release-info/doc/book.xml | 30 +
.../doc/getting_enea_nfv_access.xml | 54 +
.../doc/jiraissues_override.xml | 36 +
.../doc/known_bugs_and_limitations.xml | 217 +
.../doc/main_changes.xml | 162 +
.../doc/system_requirements_prerequisites.xml | 62 +
doc/book-enea-edge-release-info/swcomp.mk | 10 +
doc/book-enea-edge-runtime-open-source/doc/README | 4 +
.../doc/about.xml | 8 +
.../doc/book.xml | 15 +
.../doc/licenses.xml | 9936 ++++++++++++++++++++
doc/book-enea-edge-runtime-open-source/swcomp.mk | 10 +
.../doc/book.xml | 27 +
.../doc/configuration.xml | 53 +
.../doc/overview.xml | 109 +
.../doc/sample_test_cases.xml | 1804 ++++
.../swcomp.mk | 10 +
.../doc/README | 4 +
.../doc/about.xml | 12 +
.../doc/book.xml | 15 +
.../doc/licenses.xml | 290 +
doc/book-enea-edge-telemetry-open-source/swcomp.mk | 10 +
.../doc/README | 3 -
.../doc/about.xml | 14 -
.../doc/book.xml | 18 -
.../doc/licenses.xml | 112 -
.../swcomp.mk | 10 -
.../doc/automation_framework_test_harness.xml | 2800 ------
.../doc/book.xml | 33 -
.../doc/components.xml | 137 -
.../doc/getting_started.xml | 239 -
.../doc/images/ChainedVNFsService_setup.png | Bin 83776 -> 0 bytes
.../doc/images/autofw_testh_overview.png | Bin 60150 -> 0 bytes
.../doc/images/environment_basicsetup.png | Bin 79325 -> 0 bytes
.../doc/overview.xml | 188 -
.../doc/troubleshooting_guide.xml | 43 -
.../swcomp.mk | 10 -
.../doc/128t_vnf_router.xml | 715 --
.../doc/appendix_1.xml | 63 -
.../doc/appendix_2.xml | 326 -
.../doc/appendix_3.xml | 7 -
.../doc/appendix_4.xml | 103 -
.../doc/appendix_5.xml | 243 -
.../doc/book.xml | 44 -
.../doc/clav_vnf_examples.xml | 396 -
.../doc/enea_test_vnf_examples.xml | 308 -
.../doc/forti_vnf_examples.xml | 627 --
.../doc/images/fortinet_interface.png | Bin 55312 -> 0 bytes
.../doc/images/trgt.png | Bin 50826 -> 0 bytes
.../doc/images/trgt.svg | 1231 ---
.../doc/images/trgt_servicechain.png | Bin 69317 -> 0 bytes
.../doc/images/trgt_servicechain.svg | 1402 ---
.../doc/images/uc_clavister_bridge.png | Bin 36145 -> 0 bytes
.../doc/images/uc_clavister_bridge.svg | 966 --
.../doc/images/uc_clavister_sriov.png | Bin 40185 -> 0 bytes
.../doc/images/uc_clavister_sriov.svg | 1152 ---
.../doc/images/uc_enea_test_vnf.png | Bin 37660 -> 0 bytes
.../doc/images/uc_enea_test_vnf.svg | 1002 --
.../doc/images/uc_fortigate_fw.png | Bin 27026 -> 0 bytes
.../doc/images/uc_fortigate_fw.svg | 940 --
.../doc/images/uc_fortigate_sdwan.png | Bin 45248 -> 0 bytes
.../doc/images/uc_fortigate_sdwan.svg | 1449 ---
.../doc/images/uc_vnf_chaining.png | Bin 41097 -> 0 bytes
.../doc/images/uc_vnf_chaining.svg | 1186 ---
.../doc/introduction.xml | 27 -
.../doc/service_chaining_128t_fortigate.xml | 1064 ---
.../doc/vnf_chaining.xml | 407 -
.../swcomp.mk | 10 -
.../doc/advanced_configurations.xml | 1042 --
.../doc/book.xml | 44 -
.../doc/grafana.xml | 266 -
.../doc/images/archive_list.png | Bin 87667 -> 0 bytes
.../doc/images/collect_debug_logs.png | Bin 47994 -> 0 bytes
.../doc/images/debug_settings.png | Bin 32833 -> 0 bytes
.../doc/images/dev_file_mg.png | Bin 138952 -> 0 bytes
.../doc/images/download_files.png | Bin 79979 -> 0 bytes
.../doc/images/edit_inter.png | Bin 9000 -> 0 bytes
.../doc/images/edit_inter_config.png | Bin 37721 -> 0 bytes
.../doc/images/fault_events.png | Bin 46986 -> 0 bytes
.../doc/images/high_av_setup.png | Bin 66687 -> 0 bytes
.../doc/images/onboard_a_vnf_image.png | Bin 19864 -> 0 bytes
.../doc/images/ovs_bridges_tab.png | Bin 55326 -> 0 bytes
.../doc/images/prep_deploy.png | Bin 127794 -> 0 bytes
.../doc/images/prep_execution.png | Bin 121264 -> 0 bytes
.../doc/images/telemetry_settings.png | Bin 28977 -> 0 bytes
.../doc/images/telemetry_start.png | Bin 14763 -> 0 bytes
.../doc/images/vnf_space.png | Bin 39641 -> 0 bytes
.../doc/images/wap_external_interface.png | Bin 18534 -> 0 bytes
.../doc/images/wap_wireless_ap.png | Bin 21250 -> 0 bytes
.../doc/installation_guide.xml | 1193 ---
.../doc/introduction.xml | 264 -
.../doc/log_collector.xml | 401 -
.../doc/net_config_options.xml | 886 --
.../doc/troubleshooting.xml | 226 -
.../doc/upgrade_ena.xml | 588 --
.../doc/vnf_mg.xml | 477 -
doc/book-enea-nfv-access-getting-started/swcomp.mk | 10 -
.../doc/README | 4 -
.../doc/about.xml | 8 -
.../doc/book.xml | 15 -
.../doc/licenses.xml | 9936 --------------------
.../swcomp.mk | 10 -
.../doc/about_release.xml | 184 -
doc/book-enea-nfv-access-release-info/doc/book.xml | 30 -
.../doc/getting_enea_nfv_access.xml | 54 -
.../doc/jiraissues_override.xml | 36 -
.../doc/known_bugs_and_limitations.xml | 217 -
.../doc/main_changes.xml | 162 -
.../doc/system_requirements_prerequisites.xml | 62 -
doc/book-enea-nfv-access-release-info/swcomp.mk | 10 -
.../doc/book.xml | 27 -
.../doc/configuration.xml | 53 -
.../doc/overview.xml | 109 -
.../doc/sample_test_cases.xml | 1804 ----
.../swcomp.mk | 10 -
.../doc/README | 4 -
.../doc/about.xml | 12 -
.../doc/book.xml | 15 -
.../doc/licenses.xml | 290 -
.../swcomp.mk | 10 -
.../doc/README | 4 -
.../doc/about.xml | 12 -
.../doc/book.xml | 15 -
.../doc/licenses.xml | 5872 ------------
.../swcomp.mk | 10 -
207 files changed, 41648 insertions(+), 41648 deletions(-)
create mode 100644 doc/book-enea-edge-auto-fw-th-open-source/doc/README
create mode 100644 doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml
create mode 100644 doc/book-enea-edge-auto-fw-th-open-source/doc/book.xml
create mode 100644 doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml
create mode 100644 doc/book-enea-edge-auto-fw-th-open-source/swcomp.mk
create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml
create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml
create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml
create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml
create mode 100755 doc/book-enea-edge-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png
create mode 100755 doc/book-enea-edge-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png
create mode 100755 doc/book-enea-edge-auto-fw-th-user-guide/doc/images/environment_basicsetup.png
create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml
create mode 100644 doc/book-enea-edge-auto-fw-th-user-guide/doc/troubleshooting_guide.xml
create mode 100755 doc/book-enea-edge-auto-fw-th-user-guide/swcomp.mk
create mode 100644 doc/book-enea-edge-example-usecases/doc/128t_vnf_router.xml
create mode 100644 doc/book-enea-edge-example-usecases/doc/appendix_1.xml
create mode 100644 doc/book-enea-edge-example-usecases/doc/appendix_2.xml
create mode 100644 doc/book-enea-edge-example-usecases/doc/appendix_3.xml
create mode 100644 doc/book-enea-edge-example-usecases/doc/appendix_4.xml
create mode 100644 doc/book-enea-edge-example-usecases/doc/appendix_5.xml
create mode 100644 doc/book-enea-edge-example-usecases/doc/book.xml
create mode 100644 doc/book-enea-edge-example-usecases/doc/clav_vnf_examples.xml
create mode 100644 doc/book-enea-edge-example-usecases/doc/enea_test_vnf_examples.xml
create mode 100644 doc/book-enea-edge-example-usecases/doc/forti_vnf_examples.xml
create mode 100755 doc/book-enea-edge-example-usecases/doc/images/fortinet_interface.png
create mode 100644 doc/book-enea-edge-example-usecases/doc/images/trgt.png
create mode 100755 doc/book-enea-edge-example-usecases/doc/images/trgt.svg
create mode 100644 doc/book-enea-edge-example-usecases/doc/images/trgt_servicechain.png
create mode 100755 doc/book-enea-edge-example-usecases/doc/images/trgt_servicechain.svg
create mode 100644 doc/book-enea-edge-example-usecases/doc/images/uc_clavister_bridge.png
create mode 100755 doc/book-enea-edge-example-usecases/doc/images/uc_clavister_bridge.svg
create mode 100644 doc/book-enea-edge-example-usecases/doc/images/uc_clavister_sriov.png
create mode 100755 doc/book-enea-edge-example-usecases/doc/images/uc_clavister_sriov.svg
create mode 100644 doc/book-enea-edge-example-usecases/doc/images/uc_enea_test_vnf.png
create mode 100755 doc/book-enea-edge-example-usecases/doc/images/uc_enea_test_vnf.svg
create mode 100644 doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_fw.png
create mode 100755 doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_fw.svg
create mode 100644 doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_sdwan.png
create mode 100755 doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_sdwan.svg
create mode 100644 doc/book-enea-edge-example-usecases/doc/images/uc_vnf_chaining.png
create mode 100755 doc/book-enea-edge-example-usecases/doc/images/uc_vnf_chaining.svg
create mode 100644 doc/book-enea-edge-example-usecases/doc/introduction.xml
create mode 100644 doc/book-enea-edge-example-usecases/doc/service_chaining_128t_fortigate.xml
create mode 100644 doc/book-enea-edge-example-usecases/doc/vnf_chaining.xml
create mode 100755 doc/book-enea-edge-example-usecases/swcomp.mk
create mode 100644 doc/book-enea-edge-getting-started/doc/advanced_configurations.xml
create mode 100644 doc/book-enea-edge-getting-started/doc/book.xml
create mode 100644 doc/book-enea-edge-getting-started/doc/grafana.xml
create mode 100755 doc/book-enea-edge-getting-started/doc/images/archive_list.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/collect_debug_logs.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/debug_settings.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/dev_file_mg.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/download_files.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/edit_inter.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/edit_inter_config.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/fault_events.png
create mode 100644 doc/book-enea-edge-getting-started/doc/images/high_av_setup.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/onboard_a_vnf_image.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/ovs_bridges_tab.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/prep_deploy.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/prep_execution.png
create mode 100644 doc/book-enea-edge-getting-started/doc/images/telemetry_settings.png
create mode 100644 doc/book-enea-edge-getting-started/doc/images/telemetry_start.png
create mode 100755 doc/book-enea-edge-getting-started/doc/images/vnf_space.png
create mode 100644 doc/book-enea-edge-getting-started/doc/images/wap_external_interface.png
create mode 100644 doc/book-enea-edge-getting-started/doc/images/wap_wireless_ap.png
create mode 100644 doc/book-enea-edge-getting-started/doc/installation_guide.xml
create mode 100644 doc/book-enea-edge-getting-started/doc/introduction.xml
create mode 100644 doc/book-enea-edge-getting-started/doc/log_collector.xml
create mode 100644 doc/book-enea-edge-getting-started/doc/net_config_options.xml
create mode 100644 doc/book-enea-edge-getting-started/doc/troubleshooting.xml
create mode 100644 doc/book-enea-edge-getting-started/doc/upgrade_ena.xml
create mode 100644 doc/book-enea-edge-getting-started/doc/vnf_mg.xml
create mode 100755 doc/book-enea-edge-getting-started/swcomp.mk
create mode 100644 doc/book-enea-edge-management-open-source/doc/README
create mode 100644 doc/book-enea-edge-management-open-source/doc/about.xml
create mode 100644 doc/book-enea-edge-management-open-source/doc/book.xml
create mode 100644 doc/book-enea-edge-management-open-source/doc/licenses.xml
create mode 100644 doc/book-enea-edge-management-open-source/swcomp.mk
create mode 100644 doc/book-enea-edge-release-info/doc/about_release.xml
create mode 100644 doc/book-enea-edge-release-info/doc/book.xml
create mode 100644 doc/book-enea-edge-release-info/doc/getting_enea_nfv_access.xml
create mode 100644 doc/book-enea-edge-release-info/doc/jiraissues_override.xml
create mode 100644 doc/book-enea-edge-release-info/doc/known_bugs_and_limitations.xml
create mode 100644 doc/book-enea-edge-release-info/doc/main_changes.xml
create mode 100644 doc/book-enea-edge-release-info/doc/system_requirements_prerequisites.xml
create mode 100644 doc/book-enea-edge-release-info/swcomp.mk
create mode 100644 doc/book-enea-edge-runtime-open-source/doc/README
create mode 100644 doc/book-enea-edge-runtime-open-source/doc/about.xml
create mode 100644 doc/book-enea-edge-runtime-open-source/doc/book.xml
create mode 100644 doc/book-enea-edge-runtime-open-source/doc/licenses.xml
create mode 100644 doc/book-enea-edge-runtime-open-source/swcomp.mk
create mode 100644 doc/book-enea-edge-system-test-specification/doc/book.xml
create mode 100644 doc/book-enea-edge-system-test-specification/doc/configuration.xml
create mode 100644 doc/book-enea-edge-system-test-specification/doc/overview.xml
create mode 100644 doc/book-enea-edge-system-test-specification/doc/sample_test_cases.xml
create mode 100755 doc/book-enea-edge-system-test-specification/swcomp.mk
create mode 100644 doc/book-enea-edge-telemetry-open-source/doc/README
create mode 100644 doc/book-enea-edge-telemetry-open-source/doc/about.xml
create mode 100644 doc/book-enea-edge-telemetry-open-source/doc/book.xml
create mode 100644 doc/book-enea-edge-telemetry-open-source/doc/licenses.xml
create mode 100644 doc/book-enea-edge-telemetry-open-source/swcomp.mk
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-open-source/doc/README
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-open-source/doc/about.xml
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-open-source/doc/book.xml
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-open-source/doc/licenses.xml
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-open-source/swcomp.mk
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/book.xml
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/components.xml
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/getting_started.xml
delete mode 100755 doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png
delete mode 100755 doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png
delete mode 100755 doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/environment_basicsetup.png
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/overview.xml
delete mode 100644 doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/troubleshooting_guide.xml
delete mode 100755 doc/book-enea-nfv-access-auto-fw-th-user-guide/swcomp.mk
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/128t_vnf_router.xml
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/appendix_1.xml
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/appendix_2.xml
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/appendix_3.xml
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/appendix_4.xml
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/appendix_5.xml
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/book.xml
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/clav_vnf_examples.xml
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/enea_test_vnf_examples.xml
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/forti_vnf_examples.xml
delete mode 100755 doc/book-enea-nfv-access-example-usecases/doc/images/fortinet_interface.png
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/images/trgt.png
delete mode 100755 doc/book-enea-nfv-access-example-usecases/doc/images/trgt.svg
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.png
delete mode 100755 doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.svg
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.png
delete mode 100755 doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.svg
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_sriov.png
delete mode 100755 doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_sriov.svg
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_enea_test_vnf.png
delete mode 100755 doc/book-enea-nfv-access-example-usecases/doc/images/uc_enea_test_vnf.svg
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_fw.png
delete mode 100755 doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_fw.svg
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.png
delete mode 100755 doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.svg
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.png
delete mode 100755 doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.svg
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/introduction.xml
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/service_chaining_128t_fortigate.xml
delete mode 100644 doc/book-enea-nfv-access-example-usecases/doc/vnf_chaining.xml
delete mode 100755 doc/book-enea-nfv-access-example-usecases/swcomp.mk
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/advanced_configurations.xml
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/book.xml
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/grafana.xml
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/archive_list.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/collect_debug_logs.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/debug_settings.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/dev_file_mg.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/download_files.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/edit_inter.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/edit_inter_config.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/fault_events.png
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/images/high_av_setup.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/onboard_a_vnf_image.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/ovs_bridges_tab.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/prep_deploy.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/prep_execution.png
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/images/telemetry_settings.png
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/images/telemetry_start.png
delete mode 100755 doc/book-enea-nfv-access-getting-started/doc/images/vnf_space.png
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/images/wap_external_interface.png
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/images/wap_wireless_ap.png
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/installation_guide.xml
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/introduction.xml
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/log_collector.xml
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/net_config_options.xml
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/troubleshooting.xml
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/upgrade_ena.xml
delete mode 100644 doc/book-enea-nfv-access-getting-started/doc/vnf_mg.xml
delete mode 100755 doc/book-enea-nfv-access-getting-started/swcomp.mk
delete mode 100644 doc/book-enea-nfv-access-platform-open-source/doc/README
delete mode 100644 doc/book-enea-nfv-access-platform-open-source/doc/about.xml
delete mode 100644 doc/book-enea-nfv-access-platform-open-source/doc/book.xml
delete mode 100644 doc/book-enea-nfv-access-platform-open-source/doc/licenses.xml
delete mode 100644 doc/book-enea-nfv-access-platform-open-source/swcomp.mk
delete mode 100644 doc/book-enea-nfv-access-release-info/doc/about_release.xml
delete mode 100644 doc/book-enea-nfv-access-release-info/doc/book.xml
delete mode 100644 doc/book-enea-nfv-access-release-info/doc/getting_enea_nfv_access.xml
delete mode 100644 doc/book-enea-nfv-access-release-info/doc/jiraissues_override.xml
delete mode 100644 doc/book-enea-nfv-access-release-info/doc/known_bugs_and_limitations.xml
delete mode 100644 doc/book-enea-nfv-access-release-info/doc/main_changes.xml
delete mode 100644 doc/book-enea-nfv-access-release-info/doc/system_requirements_prerequisites.xml
delete mode 100644 doc/book-enea-nfv-access-release-info/swcomp.mk
delete mode 100644 doc/book-enea-nfv-access-system-test-specification/doc/book.xml
delete mode 100644 doc/book-enea-nfv-access-system-test-specification/doc/configuration.xml
delete mode 100644 doc/book-enea-nfv-access-system-test-specification/doc/overview.xml
delete mode 100644 doc/book-enea-nfv-access-system-test-specification/doc/sample_test_cases.xml
delete mode 100755 doc/book-enea-nfv-access-system-test-specification/swcomp.mk
delete mode 100644 doc/book-enea-nfv-access-telemetry-open-source/doc/README
delete mode 100644 doc/book-enea-nfv-access-telemetry-open-source/doc/about.xml
delete mode 100644 doc/book-enea-nfv-access-telemetry-open-source/doc/book.xml
delete mode 100644 doc/book-enea-nfv-access-telemetry-open-source/doc/licenses.xml
delete mode 100644 doc/book-enea-nfv-access-telemetry-open-source/swcomp.mk
delete mode 100644 doc/book-enea-nfv-access-ucpem-open-source/doc/README
delete mode 100644 doc/book-enea-nfv-access-ucpem-open-source/doc/about.xml
delete mode 100644 doc/book-enea-nfv-access-ucpem-open-source/doc/book.xml
delete mode 100644 doc/book-enea-nfv-access-ucpem-open-source/doc/licenses.xml
delete mode 100644 doc/book-enea-nfv-access-ucpem-open-source/swcomp.mk
diff --git a/doc/Makefile b/doc/Makefile
index 38c3569..1a1bd48 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -50,7 +50,7 @@ DOCBOOK_TO_BOOKDIR ?= yes
DOCBOOK_CLEANTMP ?= yes
#Components (books) in this subsystem. Now use all books found here
-COMPONENTS := book-enea-nfv-access-auto-fw-th-open-source book-enea-nfv-access-auto-fw-th-user-guide book-enea-nfv-access-evalkit book-enea-nfv-access-example-usecases book-enea-nfv-access-getting-started book-enea-nfv-access-platform-open-source book-enea-nfv-access-release-info book-enea-nfv-access-system-test-specification book-enea-nfv-access-telemetry-open-source book-enea-nfv-access-ucpem-open-source
+COMPONENTS := book-enea-edge-auto-fw-th-open-source book-enea-edge-auto-fw-th-user-guide book-enea-nfv-access-evalkit book-enea-edge-example-usecases book-enea-edge-getting-started book-enea-edge-runtime-open-source book-enea-edge-release-info book-enea-edge-system-test-specification book-enea-edge-telemetry-open-source book-enea-edge-management-open-source
# --------------------------------------------------------------
diff --git a/doc/book-enea-edge-auto-fw-th-open-source/doc/README b/doc/book-enea-edge-auto-fw-th-open-source/doc/README
new file mode 100644
index 0000000..e546e6f
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-open-source/doc/README
@@ -0,0 +1,3 @@
+The licenses.xml in the git repository of Enea NFV Access AFTH Open Source Report
+is the frozen version belonging to the last official release of Enea NFV Access.
+
diff --git a/doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml b/doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml
new file mode 100644
index 0000000..4dc19aa
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-open-source/doc/about.xml
@@ -0,0 +1,14 @@
+
+
+
+ About this Report
+
+ This document contains the open source and license information
+ pertaining to the Automation Framework and Test Harness provided with
+ Enea Edge .
+
+
diff --git a/doc/book-enea-edge-auto-fw-th-open-source/doc/book.xml b/doc/book-enea-edge-auto-fw-th-open-source/doc/book.xml
new file mode 100644
index 0000000..df5e029
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-open-source/doc/book.xml
@@ -0,0 +1,18 @@
+
+
+]>
+
+ Enea Edge Automation Framework and Test Harness Open Source Report
+
+ Release Version
+
+
+
+
+
+
+
+
diff --git a/doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml b/doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml
new file mode 100644
index 0000000..76a34e2
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-open-source/doc/licenses.xml
@@ -0,0 +1,112 @@
+
+
+
+ Packages and Licenses
+
+
+ Packages
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Package Name
+
+ Version
+
+ Description
+
+ License
+
+
+
+
+
+ Automation Framework and Test Harness
+
+
+
+ Configuration and Automation Framework for the Edge Manager
+ GUI.
+
+ ENEA-SRC-R2
+
+
+
+ Automation Framework and Test Harness
+
+
+
+ Configuration and Automation Framework for the Edge Manager
+ GUI.
+
+ ENEA-EXAMPLE-R2
+
+
+
+
+
+
+
+ Open Source Licenses
+
+
+
+ Proprietary Licenses
+
+
+ ENEA-SRC-R2
+
+ Copyright (C) 2019 by Enea.
+ All rights reserved.
+
+ This Software is furnished under a software license agreement and
+ may be used only in accordance with the terms of such agreement.
+ Any other use or reproduction is prohibited. No title to and
+ ownership of the Software is hereby transferred.
+
+ PROPRIETARY NOTICE
+ This Software consists of confidential information.
+ Trade secret law and copyright law protect this Software.
+ The above notice of copyright on this Software does not indicate
+ any actual or intended publication of such Software.
+
+
+
+ ENEA-EXAMPLE-R2
+
+ Copyright (C) 2019 by Enea Software AB.
+ All rights reserved.
+
+ This Example is furnished under a Software License Agreement and
+ may be used only in accordance with the terms of such agreement.
+ No title to and ownership of the Example is hereby transferred.
+
+ The information in this Example is subject to change
+ without notice and should not be construed as a commitment
+ by Enea Software AB.
+
+ DISCLAIMER
+ This Example is delivered "AS IS", consequently
+ Enea Software AB makes no representations or warranties,
+ expressed or implied, for the Example.
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-auto-fw-th-open-source/swcomp.mk b/doc/book-enea-edge-auto-fw-th-open-source/swcomp.mk
new file mode 100644
index 0000000..24463ac
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-open-source/swcomp.mk
@@ -0,0 +1,10 @@
+# Component build specification
+
+# Version of THIS book
+BOOK_VER ?= $(REL_VER)-dev
+
+DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
+
+BOOKPACKAGES := book-enea-edge-auto-fw-th-open-source
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge $(PROD_VER) Automation Framework and Test Harness Open Source Report"
+BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml
new file mode 100644
index 0000000..a569d59
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml
@@ -0,0 +1,2800 @@
+
+
+ Automation Framework and Test Harness
+
+
+ Automation Framework
+
+ All Automation Framework sources are under the
+ <AF-TH-install-dir>/automation_framework
+ directory.
+
+ The /device folder contains Python scripts for
+ adding uCPE device(s), receiving uCPE events' reports, removing a uCPE
+ device, waiting for a uCPE device to connect to the Enea Edge Management, as well
+ as scripts for adding and removing an offline configuration store. This
+ folder also contains scripts for uploading and removing an NFVA image into
+ the Enea Edge Management, and for installing and activating a NFVA image on a uCPE
+ Device.
+
+ The /customScripts folder contains Python scripts
+ for uploading custom scripts onto the Enea Edge Management and uCPE device(s), for
+ removing custom scripts from the Enea Edge Management and uCPE device(s).
+
+ The /network folder contains Python scripts for
+ 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. 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. Commands that include the -n option refer to a uCPE device, with the
+ operation being performed on uCPE device. 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 JSON files for
+ complex scenarios (multiple operations), as well as Python unit-test class
+ and loader scripts for generating specific test cases for the available
+ Python scripts. The generated test cases are injected into the Python
+ unit-test suite class to be run using the Python unit-test
+ framework.
+
+ The /unittestSuite/config folder contains
+ configuration files in JSON format that describe the list of test cases
+ for a particular Python script. Each defined test case is a dictionary
+ that must contain the test case name and arguments to be passed to the
+ Python script for running the test case.
+
+ The /unittestSuite/vnf_config directory contains
+ symlinks for the Fortigate license file and for the
+ /vnf_config/fortigateImage folder.
+
+ The /vnf folder contains Python scripts for
+ onboarding and offboarding a VNF image, instantiating a VNF, controlling a
+ VNF instance or destroying an existing one.
+
+ The eneaUcpeMgr.py file acts as a library for
+ the (Python) Automation Framework scripts. It contains common functions
+ and unit-test configuration options.
+
+
+ Python Unit-Test Suite
+
+ The Python unit-test class defined in the
+ unittestSuite.py script provides a way to automate
+ the execution of specific test cases for each supported Python
+ script.
+
+ This class requires a test suite configuration JSON file that
+ contains a dictionary list of the Python scripts to be processed. Each
+ dictionary must contain the path of the Python script to be loaded and
+ the path to the file describing the test cases to be performed against
+ the designated script.
+
+ Steps for running the Python unit-test suite on the Enea Edge Management
+ are provided below.
+
+
+ Script Options
+
+ $ python unittestSuite.py -h
+Usage: unittestSuite.py [options]
+
+Run selected unit-test suite against Enea Edge Management.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management 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
+
+
+
+ Configuring Unit-Test JSON File
+
+ The Unit-Test suite JSON configuration file contains a list of
+ dictionaries. Each dictionary indicates the path of the Python module
+ to load and the test case's configuration file to be executed against
+ the loaded module.
+
+ Below is a sample unit-test configuration file, describing the
+ Fortigate deployment scenario
+ fortigateDeploy.json, found in
+ <AF-TH-install-dir>/automation_framework/unittestSuite:
+
+ [
+ {
+ "config": "config/waitDeviceUp.json",
+ "module": "../device/waitDeviceUp.py"
+ },
+ {
+ "config": "config/bindNetworkInterface.json",
+ "module": "../network/bindNetworkInterface.py"
+ },
+ {
+ "config": "config/newNetworkBridge.json",
+ "module": "../network/newNetworkBridge.py"
+ },
+ {
+ "config": "config/onboardVNFRaw.json",
+ "module": "../vnf/onboardVNFRaw.py"
+ },
+ {
+ "config": "config/instantiateVNFI.json",
+ "module": "../vnf/instantiateVNFI.py"
+ },
+ {
+ "config": "config/controlVNFI.json",
+ "module": "../vnf/controlVNFI.py"
+ }
+]
+
+ Below is a sample unit-test configuration file, describing the
+ Fortigate cleanup scenario
+ fortigateCleanup.json:
+
+ [
+ {
+ "config": "config/destroyVNFI.json",
+ "module": "../vnf/destroyVNFI.py"
+ },
+ {
+ "config": "config/delNetworkBridge.json",
+ "module": "../network/delNetworkBridge.py"
+ },
+ {
+ "config": "config/unbindNetworkInterface.json",
+ "module": "../network/unbindNetworkInterface.py"
+ },
+ {
+ "config": "config/offboardVNF.json",
+ "module": "../vnf/offboardVNF.py"
+ }
+]
+
+ The config key contains the path to the test
+ case's configuration file.
+
+ The module key contains the path to the
+ Python script to be executed.
+
+
+
+ Unit-Test Configuration Options
+
+ Unit-test behavior can be tweaked through setting any of the
+ following options. This is done through the
+ eneaUcpeMgr.py file:
+
+ # Defaults for the framework
+username = "admin"
+password = "admin"
+host = None
+deviceName = None
+directory = "."
+ftpUsername = "ftp"
+ftpPassword = "ftp"
+ftpPort = "2021"
+
+# Stop the test run on the first error or failure
+failfast = True
+
+# Logging levels ordered by the highest severity:
+# CRITICAL 50
+# ERROR 40
+# WARNING 30
+# INFO 20
+# DEBUG 10
+# NOTSET 0
+fileLoggingLevel = logging.DEBUG
+consoleLoggingLevel = logging.INFO
+
+
+
+ eneaUcpeMgr.py Options
+
+
+
+
+
+
+
+
+
+
+ Option
+
+ Description
+
+
+
+
+
+ username
+
+ The user authentication used to log into the
+ Enea Edge Management. This can be overwritten by setting the Python
+ unit-test suite command line option
+ -u.
+
+
+
+ password
+
+ The password used to log into the Enea Edge Management. This
+ can be overwritten by setting the Python unit-test suite
+ command line option -p.
+
+
+
+ host
+
+ The IP address of the Enea Edge Management host. This can be
+ overwritten by setting the Python unit-test suite command line
+ option -H.
+
+
+
+ devicename
+
+ The name of the vCPE agent against which tests will be
+ performed. This can be overwritten by setting the Python
+ unit-test suite command line option
+ -n.
+
+
+
+ ftpUsername
+
+ The user authentication used for the FTP connection
+ when onboarding a VNF image. This can be overwritten by
+ setting the Python script command line option
+ -f.
+
+
+
+ ftpPassword
+
+ The password used for the FTP connection when
+ onboarding a VNF image. This can be overwritten by setting the
+ Python script command line option
+ -w.
+
+
+
+ ftpPort
+
+ The port used for the FTP connection when onboarding a
+ VNF image. This can be overwritten by setting the Python
+ script command line option -P.
+
+
+
+ failfast
+
+ Describes the unit-test execution behavior on the first
+ error or failure encountered.
+
+
+
+ fileLoggingLevel
+
+ Sets the file logging level.
+
+
+
+ consoleLoggingLevel
+
+ Sets the console logging level.
+
+
+
+
+
+
+
+ Python Unit-Test Suite Logging
+
+ Logging messages are displayed in the console and also saved to
+ the specified log file. They are shown depending on the chosen logging
+ level.
+
+ Logging messages are ranked by their severity
+ level:CRITICAL 50
+ERROR 40
+WARNING 30
+INFO 20
+DEBUG 10
+NOTSET 0
+
+
+ Logging messages less severe than the set logging level will
+ be ignored.
+
+
+ Setting the console logging level to INFO is done through the
+ consoleLoggingLevel option:consoleLoggingLevel = logging.INFOSetting
+ the file logging level to DEBUG is done through the
+ fileLoggingLevel option:fileLoggingLevel = logging.DEBUG
+
+
+
+ Running Python Unit-Test Suite
+
+
+ Please update all JSON configuration files to use the name of
+ your vCPE agent device. In the following chapters, intelc3850-2 is
+ used as an example.
+
+
+ Below you'll find sample unit-test command line options for
+ running the Fortigate deployment
+ scenario:
+
+ $ python unittestSuite.py -u admin -p admin -H localhost -n intelc3850-2 -s
+fortigateDeploy.json -d "Fortigate deployment scenario"
+
+ Setting the console logging level to DEBUG:
+
+ consoleLoggingLevel = logging.DEBUG
+ Expected Output:
+
+ 2020-04-15 07:58:40,668 - DEBUG: Started logging
+
+Running Fortigate deployment scenario...
+
+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 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 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 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 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 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'
+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 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 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 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 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 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 11 tests in 55.946s
+
+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"
+
+ Setting the console logging level to INFO:
+
+ consoleLoggingLevel = logging.INFO
+
+ Expected Output:
+
+ Running Fortigate cleanup scenario...
+
+test 001: Destroying Fortigate VNF (__main__.UnittestSuite) ...
+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) ...
+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) ...
+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 (__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 (__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) ...
+2020-04-15 08:03:47,701 - INFO: Offboard VNF
+2020-04-15 08:03:47,919 - INFO: Done
+ok
+
+----------------------------------------------------------------------
+Ran 6 tests in 7.192s
+
+OK
+
+
+
+
+ Adding a uCPE Device
+
+ Steps for adding, configuring and running a uCPE device onto the
+ Enea Edge Management are described below .
+
+
+ Script Options
+
+ $ python addDevice.py -h
+Usage: addDevice.py [options]
+
+Add a uCPE device in Enea Edge Management.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -f DEVICEFILE, --file=DEVICEFILE
+ File containing uCPE Information in JSON format
+
+ Mandatory options:
+ -H/--host, -f/--file
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed for adding a uCPE device
+ should contain a list of dictionaries. Each dictionary indicates the
+ test case name and the arguments passed to the
+ addDevice Python module.
+
+ Sample configuration file in JSON
+ format:
+
+ [
+ {
+ "name": "Add VCPE Agent device ",
+ "args": "-f ../../lab_config/intelc3850-2/intelc3850-2.json"
+ }
+]
+
+ Sample
+ intelc3850-2.json configuration
+ file:
+
+ {
+ "name": "intelc3850-2",
+ "deviceGroupingTags": " ",
+ "description": "",
+ "address": "172.24.12.114",
+ "version": "2.4.0",
+ "port": "22",
+ "username": "root",
+ "password": "root",
+ "certificate": null,
+ "passphrase": null,
+ "callHome": "false",
+ "maintMode": "false",
+ "deviceId": "intelc3850-2"
+}
+
+
+
+ Running the Python Module
+
+ The addDevice Python module can be executed
+ independently by running the following command:
+
+ $ python addDevice.py -u admin -p admin -H localhost -f config/device.json
+2019-03-07 17:33:10,755 - DEBUG: Started logging
+2019-03-07 17:33:10,756 - INFO: Add uCPE device
+2019-03-07 17:33:10,975 - DEBUG: Login successful on host 'localhost'
+2019-03-07 17:33:10,979 - DEBUG: Session token is: 508b6ea2-40ee-11e9-a81f525400d08e1d
+2019-03-07 17:33:11,049 - DEBUG: Add new device 'intelc3850-2' to Enea Edge Management host
+2019-03-07 17:33:11,483 - INFO: Done
+2019-03-07 17:33:11,501 - DEBUG: Logging out and exiting....
+
+
+
+
+ Removing a uCPE Device
+
+ Steps for removing a uCPE device from the Enea Edge Management are
+ described below.
+
+
+ Script Options
+
+ $ python removeDevice.py -h
+Usage: removeDevice.py [options]
+
+Remove a uCPE from Enea Edge Management.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -f DEVICEFILE, --file=DEVICEFILE
+ File containing uCPE Information in JSON format
+
+ Mandatory options:
+ -H/--host, -f/--file
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to remove a uCPE device
+ should contain a list of dictionaries. Each dictionary indicates the
+ test case name and the arguments passed to the
+ removeDevice Python module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+ {
+ "name": "Remove VCPE Agent device ",
+ "args": "-f ../../lab_config/intelc3850-2/intelc3850-2.json"
+ }
+]
+
+ Sample
+ intelc3850-2.json configuration
+ file:
+
+ {
+ "name": "intelc3850-2"
+}
+
+
+
+ Running the Python Module
+
+ The removeDevice Python module can be
+ executed individually by running the following command:
+
+ $ python removeDevice.py -u admin -p admin -H localhost -f
+../../lab_config/intelc3850-2/intelc3850-2.json
+2019-03-07 17:33:56,834 - DEBUG: Started logging
+2019-03-07 17:33:56,835 - INFO: Remove uCPE device
+2019-03-07 17:33:56,856 - DEBUG: Login successful on host 'localhost'
+2019-03-07 17:33:56,856 - DEBUG: Session token is: 6bebcb43-40ee-11e9-a81f525400d08e1d
+2019-03-07 17:33:56,856 - DEBUG: Delete device 'intelc3850-2' from Enea Edge Management
+host
+2019-03-07 17:33:56,875 - DEBUG: Found device with name 'intelc3850-2'
+2019-03-07 17:33:57,159 - INFO: Done
+2019-03-07 17:33:57,171 - DEBUG: Logging out and exiting...
+
+
+
+
+ Waiting a uCPE Device
+
+ Steps and details for how to Wait a uCPE device to connect to the
+ Enea Edge Management after installation, are described below.
+
+
+ Script Options
+
+ $ python waitDeviceUp.py -h
+Usage: waitDeviceUp.py [options]
+
+Wait for uCPE to connect to the Enea Edge Management after installation.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -f DEVICEFILE, --file=DEVICEFILE
+ File containing uCPE Information in JSON format
+ -t TIMEOUT, --timeout=TIMEOUT
+ Time in seconds for maximum wait period, default =
+ instant
+
+ Mandatory options:
+ -H/--host, -f/--file
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to wait a uCPE device should
+ contain a list of dictionaries. Each dictionary indicates the test
+ case name and the test case arguments passed to the
+ waitDeviceUp Python module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+ {
+ "name": "Wait VCPE Agent device be up",
+ "args": "-f ../../lab_config/intelc3850-2/intelc3850-2.json -t 60"
+ }
+]
+
+ Sample
+ intelc3850-2.json configuration
+ file:
+
+ {
+ "name": "intelc3850-2"
+}
+
+
+
+ Running the Python Module
+
+ The waitDeviceUp Python module can be
+ executed individually by running the following command
+ line:$ python waitDeviceUp.py -u admin -p admin -H localhost -t 60 -f
+../../lab_config/intelc3850-2/intelc3850-2.json
+2019-03-07 18:03:21,132 - DEBUG: Started logging
+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...
+
+
+
+
+ Printing the uCPE Device Log
+
+ Steps and details on how to Print the events log for a specific
+ uCPE device installed in the Enea Edge Management, are explained below.
+
+
+ Script Options
+
+ $ python getEventsForUcpe.py -h
+Usage: getEventsForUcpe.py [options]
+
+Print the events log for a specific uCPE installed in Enea Edge Management.
+
+Options:
+--version show program's version number and exit
+-h, --help show this help message and exit
+-u USERNAME, --username=USERNAME Enea Edge Management login username
+-p PASSWORD, --password=PASSWORD Enea Edge Management login password
+-H HOST, --host=HOST Enea Edge Management host name or IP address
+-f DEVICEFILE, --file=DEVICEFILE File containing uCPE Information in JSON format
+-s SEVERITY, --severity=SEVERITY Event severity level (Critical|Major|Minor)
+
+Mandatory options:
+-H/--host, -f/--file
+
+
+
+ Configuring the JSON File
+
+ Sample
+ intelc3850-2.json configuration
+ file:
+
+ {
+ "name": "intelc3850-2",
+ "deviceId": "intelc3850-2",
+ "deviceGroupingTags": " ",
+ "description": "",
+"address": "172.24.12.114",
+ "port": "22",
+ "username": "root",
+ "password": "root",
+ "certificate": null,
+ "passphrase": null,
+ "callHome": "false",
+ "maintMode": "false"
+}
+
+
+
+
+ Running the Python Module
+
+ The getEventsForUcpe Python module can be
+ executed individually by running the following command:
+
+ $ python getEventsForUcpe.py -H localhost -f \
+../../lab_config/intelc3850-2/intelc3850-2.json
+
+2019-07-04 13:48:31,289 - DEBUG: Started logging
+2019-07-04 13:48:31,290 - INFO: Dump uCPE events
+2019-07-04 13:48:31,336 - DEBUG: Login successful on host '172.24.3.108'
+2019-07-04 13:48:31,336 - DEBUG: Session token is: a53c68d3-9e51-11e9-a715-5254007632e2
+2019-07-04 13:48:31,356 - DEBUG: Found device with name 'intelc3850-2'
+2019-07-04 13:48:31,357 - DEBUG:
+Events on device: intelc3850-2 and severity: 1000
+2019-07-04 13:48:31,450 - DEBUG: Dumping 1 events
+2019-07-04 13:48:31,450 - DEBUG: Device Disconnected | Alarm | Device | None | \
+ 2019-07-04 09:57:40.042
+2019-07-04 13:48:31,469 - DEBUG: Dumping 0 events
+2019-07-04 13:48:31,469 - INFO: Done
+2019-07-04 13:48:31,488 - DEBUG: Logging out and exiting...
+
+
+
+
+ Enabling or Disabling the DPDK
+
+ Steps and details on how to enable or disable the DPDK are
+ explained below.
+
+
+ Script Options
+
+ $ python configDPDK.py -h
+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 Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management 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, -n/--device-name or -o/--store-name
+
+
+
+ Running the Python Module
+
+ The configDPDK Python module can be executed
+ individually by running the following command lines:
+
+ To Enable DPDK:
+
+ $ python configDPDK.py -s enable -n intelc3850-2
+
+2020-01-06 08:35:16,820 - DEBUG: Started logging
+2020-01-06 08:35:16,821 - INFO: Configure DPDK
+2020-01-06 08:35:16,870 - DEBUG: Login successful on host '172.24.3.90'
+2020-01-06 08:35:16,871 - DEBUG: Session token is: 601149e0-3089-11ea-b0c7-525400b7889f
+2020-01-06 08:35:16,894 - DEBUG: Found device with name 'inteld1521-1'
+2020-01-06 08:35:16,895 - DEBUG: Set DPDK state to enable
+2020-01-06 08:35:16,936 - INFO: Done
+2020-01-06 08:35:16,961 - DEBUG: Logging out and exiting...
+
+ To Disable DPDK:
+
+ $ python configDPDK.py -s disable -n intelc3850-2
+
+2020-01-06 08:33:57,157 - DEBUG: Started logging
+2020-01-06 08:33:57,158 - INFO: Configure DPDK
+2020-01-06 08:33:57,215 - DEBUG: Login successful on host '172.24.3.90'
+2020-01-06 08:33:57,216 - DEBUG: Session token is: 3096e670-3089-11ea-b0c7-525400b7889f
+2020-01-06 08:33:57,239 - DEBUG: Found device with name 'inteld1521-1'
+2020-01-06 08:33:57,241 - DEBUG: Set DPDK state to disable
+2020-01-06 08:33:57,284 - INFO: Done
+2020-01-06 08:33:57,310 - DEBUG: Logging out and exiting...
+
+
+
+
+ Binding a Network Interface
+
+ How to Bind a physical network interface to a DPDK, Standard or
+ SR-IOV is detailed below.
+
+
+ Script Options
+
+ $ python bindNetworkInterface.py -h
+Usage: bindNetworkInterface.py [options]
+
+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 Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management 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 or -o/--store-name
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to bind a physical network
+ interface should contain a list of dictionaries. Each dictionary
+ indicates the test case name and the test case arguments passed to the
+ bindNetworkInterface Python module.
+
+ Sample unit-test JSON file
+ format:[
+ {
+ "name": "Bind lan NIC to DPDK",
+ "args": "-f ../../lab_config/intelc3850-2/lan_nic.json"
+ },
+ {
+ "name": "Bind wan NIC to DPDK",
+ "args": "-f ../../lab_config/intelc3850-2/wan_nic.json"
+ },
+ {
+ "name": "Bind wan/lan NIC to SR-IOV",
+ "args": "-f ../../lab_config/intelc3850-2/sriov_nic.json"
+ },
+ {
+ "name": "Bind wan/lan NIC to Standard",
+ "args": "-f ../../lab_config/intelc3850-2/std_nic.json"
+ }
+]Sample
+ lan_nic.json configuration
+ file:{
+ "name": "enp4s0f0",
+ "type": "dpdk",
+ "subType": "vfio-pci"
+}Sample
+ wan_nic.json configuration
+ file:{
+ "name": "enp4s0f1",
+ "type": "dpdk",
+ "subType": "vfio-pci"
+}Sample
+ sriov_nic.json configuration
+ file:{
+ "name": "enp4s0f1",
+ "type": "sr-iov",
+ "subType": "adapter-pool",
+ "sriovNumVfs": "2"
+}Sample
+ std_nic.json configuration
+ file:{
+ "name": "eno2",
+ "type": "standard"
+}
+
+
+
+ Running the Python Module
+
+ The bindNetworkInterface Python module can be
+ executed individually by running the following command line:
+
+ $ python bindNetworkInterface.py -u admin -p admin -H localhost -f
+../../lab_config/intelc3850-2/lan_nic.json -n intelc3850-2
+2019-03-07 18:03:29,365 - DEBUG: Started logging
+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...
+
+
+
+
+ Unbinding a Network Interface
+
+ How to Unbind a physical network interface from a DPDK or SR-IOV
+ is described below.
+
+
+ Script Options
+
+ $ python unbindNetworkInterface.py -h
+Usage: unbindNetworkInterface.py [options]
+
+Unbinds a physical interface to the 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 Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management 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
+
+ Mandatory options:
+ -H/--host, -f/--file, -n/--device-name
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to unbind a network interface
+ should contain a list of dictionaries. Each dictionary indicates the
+ test case name and the test case arguments passed to the
+ unbindNetworkInterface Python module.
+
+ Sample unit-test JSON file
+ format:[
+ {
+ "name": "Unbind lan NIC from DPDK",
+ "args": "-f ../../lab_config/intelc3850-2/lan_nic.json"
+ },
+ {
+ name": "Unbind wan NIC from DPDK",
+ "args": "-f ../../lab_config/intelc3850-2/wan_nic.json"
+ }
+]
+
+ Sample lan_nic.json
+ configuration file:
+
+ {
+ "name": "enp4s0f0",
+ "type": "dpdk"
+}
+
+ Sample wan_nic.json
+ configuration file:
+
+ {
+ "name": "enp4s0f1",
+ "type": "dpdk",
+}
+
+
+
+
+ Running the Python Module
+
+ The unbindNetworkInterface Python module
+ can be executed individually by running the following command
+ line:
+
+ $ python unbindNetworkInterface.py -u admin -p admin -H localhost -f
+../../lab_config/intelc3850-2/lan_nic.json -n intelc3850-2
+2019-03-07 17:33:54,377 - DEBUG: Started logging
+2019-03-07 17:33:54,378 - INFO: Unbind NIC
+2019-03-07 17:33:54,431 - DEBUG: Login successful on host 'localhost'
+2019-03-07 17:33:54,432 - DEBUG: Session token is: 6a77a1d1-40ee-11e9-a81f525400d08e1d
+2019-03-07 17:33:54,467 - DEBUG: Found device with name 'intelc3850-2'
+2019-03-07 17:33:54,468 - DEBUG: Unbind NIC '0000:01:00.1'
+2019-03-07 17:33:55,616 - INFO: Done
+2019-03-07 17:33:55,659 - DEBUG: Logging out and exiting...
+
+
+
+
+ Getting a Network Interface
+
+ Details and steps on how to List the network interfaces for a
+ device, are described below.
+
+
+ Script Options
+
+ $ python getNetworkInterfaces.py -h
+2019-07-04 16:35:50,496 - DEBUG: Started logging
+2019-07-04 16:35:50,496 - INFO: Dump NICs
+Usage: getNetworkInterfaces.py [options]
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -n DEVICENAME, --device-name=DEVICENAME Name of the uCPE to get network /
+ interfaces from
+
+ Mandatory options:
+ -H/--host, -n/--device-name
+
+
+
+ Running the Python Module
+
+ The getNetworkInterfaces Python module can be
+ executed individually by running the following command:
+
+ $ python getNetworkInterfaces.py -H localhost -n intelc3850-2
+2020-01-07 05:58:03,630 - DEBUG: Started logging
+2020-01-07 05:58:03,630 - INFO: Dump NICs
+2020-01-07 05:58:03,687 - DEBUG: Login successful on host '172.24.3.90'
+2020-01-07 05:58:03,688 - DEBUG: Session token is: 93dd3cd0-313c-11ea-b0c7-525400b7889f
+2020-01-07 05:58:03,715 - DEBUG: Found device with name 'intelc3850-2'
+2020-01-07 05:58:03,717 - DEBUG:
+----------------External Network Interfaces for intelc3850-2----------------
+2020-01-07 05:58:07,622 - DEBUG: eno4 DpdkTypes: [u'igb_uio', u'vfio-pci'] \
+MacAddress: 0c:c4:7a:fb:85:dfsriov(7)
+2020-01-07 05:58:07,624 - DEBUG:
+2020-01-07 05:58:07,656 - DEBUG:
+----------------Configured External Network Interfaces for intelc3850-2----------------
+2020-01-07 05:58:07,657 - DEBUG: eno3 DpdkType: vfio-pci ID: \
+47556b22-b5c2-4acb-b3cb-09b1f024b3a7
+2020-01-07 05:58:07,658 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \
+2c06b4f7-6814-4432-8765-a9d0cd5303c1
+2020-01-07 05:58:07,659 - DEBUG: enp1s0f0 DpdkTypes: [u'igb_uio', u'vfio-pci'] \
+MacAddress: ac:1f:6b:2d:ee:58sriov(63)
+2020-01-07 05:58:07,660 - DEBUG:
+2020-01-07 05:58:07,690 - DEBUG:
+----------------Configured External Network Interfaces for intelc3850-2----------------
+2020-01-07 05:58:07,691 - DEBUG: eno3 DpdkType: vfio-pci ID: \
+47556b22-b5c2-4acb-b3cb-09b1f024b3a7
+2020-01-07 05:58:07,692 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \
+2c06b4f7-6814-4432-8765-a9d0cd5303c1
+2020-01-07 05:58:07,693 - DEBUG: eno2 DpdkTypes: [u'igb_uio', u'vfio-pci'] \
+MacAddress: 0c:c4:7a:fb:85:ddsriov(7)
+2020-01-07 05:58:07,695 - DEBUG:
+2020-01-07 05:58:07,724 - DEBUG:
+----------------Configured External Network Interfaces for intelc3850-2----------------
+2020-01-07 05:58:07,725 - DEBUG: eno3 DpdkType: vfio-pci ID: \
+47556b22-b5c2-4acb-b3cb-09b1f024b3a7
+2020-01-07 05:58:07,726 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \
+2c06b4f7-6814-4432-8765-a9d0cd5303c1
+2020-01-07 05:58:07,727 - DEBUG: eno1 DpdkTypes: [u'igb_uio', u'vfio-pci'] \
+MacAddress: 0c:c4:7a:fb:85:dcsriov(7)
+2020-01-07 05:58:07,728 - DEBUG:
+2020-01-07 05:58:07,760 - DEBUG:
+----------------Configured External Network Interfaces for intelc3850-2----------------
+2020-01-07 05:58:07,761 - DEBUG: eno3 DpdkType: vfio-pci ID: \
+47556b22-b5c2-4acb-b3cb-09b1f024b3a7
+2020-01-07 05:58:07,761 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \
+2c06b4f7-6814-4432-8765-a9d0cd5303c1
+2020-01-07 05:58:07,762 - DEBUG:
+2020-01-07 05:58:07,763 - INFO: Done
+2020-01-07 05:58:07,787 - DEBUG: Logging out and exiting...
+
+
+
+
+ Creating an OVS Network Bridge
+
+ Instructions on how to Create an OVS Bridge on a device are
+ detailed below.
+
+
+ Script Options
+
+ $ python newNetworkBridge.py -h
+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 Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management 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 or -o/--store-name
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to create a new network
+ bridge should contain a list of dictionaries. Each dictionary
+ indicates the test case name and the test case arguments passed to the
+ newNetworkBridge Python module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+ {
+ "name": "Creating network bridge LAN ",
+ "args": "-f ../../lab_config/intelc3850-2/lan_br.json"
+ },
+ {
+ "name": "Creating network bridge WAN ",
+ "args": "-f ../../lab_config/intelc3850-2/wan_br.json"
+ }
+]
+
+ Sample lan_br.json
+ configuration file:
+
+ {
+ "name": "lan_br",
+ "interfaces": ["enp4s0f0"]
+}
+
+ Sample wan_br.json
+ configuration file:
+
+ {
+ "name": "wan_br",
+ "interfaces": ["enp4s0f1"]
+}
+
+
+
+ Running the Python Module
+
+ The newNetworkBridge Python module can be
+ executed individually by running the following command line:
+
+ $ python newNetworkBridge.py -u admin -p admin -H localhost -f
+../../lab_config/intelc3850-2/lan_br.json -n intelc3850-2
+2019-03-07 18:03:30,767 - DEBUG: Started logging
+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...
+
+
+
+
+ Deleting an OVS Network Bridge
+
+ How to Delete an OVS Bridge from a device is detailed in the
+ following.
+
+
+ Script Options
+
+ $ python delNetworkBridge.py -h
+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 Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management 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 or -o/--store-name
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to delete a network bridge
+ should contain a list of dictionaries. Each dictionary indicates the
+ test case name and the test case arguments passed to the
+ delNetworkBridge Python module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+ {
+ "name": "Deleting network bridge LAN ",
+ "args": "-f ../../lab_config/intelc3850-2/lan_br.json"
+ },
+ {
+ "name": "Deleting network bridge WAN ",
+ "args": "-f ../../lab_config/intelc3850-2/wan_br.json"
+ }
+]
+
+ Sample lan_br.json
+ configuration file:
+
+ {
+ "name" : "lan_br"
+}
+
+ Sample wan_br.json
+ configuration file:
+
+ {
+ "name" : "wan_br"
+}
+
+
+
+ Running the Python Module
+
+ The delNetworkBridge Python module can be
+ executed individually by running the following command line:
+
+ $ python delNetworkBridge.py -u admin -p admin -H localhost -f
+../../lab_config/intelc3850-2/lan_br.json -n intelc3850-2
+2019-03-07 17:33:51,712 - DEBUG: Started logging
+2019-03-07 17:33:51,713 - INFO: Delete OVS network bridge
+2019-03-07 17:33:51,751 - DEBUG: Login successful on host 'localhost'
+2019-03-07 17:33:51,752 - DEBUG: Session token is: 68e08711-40ee-11e9-a81f525400d08e1d
+2019-03-07 17:33:51,768 - DEBUG: Found device with name 'intelc3850-2'
+2019-03-07 17:33:51,768 - DEBUG: Delete OVS network bridge 'lan_br'
+2019-03-07 17:33:52,839 - INFO: Done
+2019-03-07 17:33:52,872 - DEBUG: Logging out and exiting...
+
+
+
+
+ Onboarding a VNF Image Raw
+
+ How to Onboard a VNF image in the Enea Edge Management based upon its raw
+ constituents, is detailed in depth below.
+
+
+ Script Options
+
+ $ python onboardVNFRaw.py -h
+Usage: onboardVNFRaw.py [options]
+
+Onboard a VNF in Enea Edge Management 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 Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management 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/--imageInfo, -i/--imagePath
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to onboard a VNF image Raw
+ should contain a list of dictionaries. Each dictionary indicates the
+ test case name and the test case arguments passed to the
+ onboardVNFRaw Python module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+ {
+ "name": "Onboarding Fortigate VNF (wizard API)",
+ "args": "-b ../../vnf_config/fortigateImage/fortigateImage.json -i
+../../vnf_images/fortios.qcow2"
+ }
+]
+
+ Sample
+ fortigateImage.json configuration
+ file:{
+ "name" : "fortigateImage",
+ "version" : "1.0",
+ "description" : "Fortigate VNF Image",
+ "provider" : "Fortinet, Inc",
+ "numVcpus" : 1,
+ "imageFormat" : "QCOW2",
+ "memoryInMb" : 1024,
+ "storageInGb" : 20,
+ "image" : "fortios.qcow2",
+ "interfaces" : [
+ {
+ "name" : "external",
+ "type" : "PhysicalPort",
+ "description" : "External interface"
+ },
+ {
+ "name" : "in",
+ "type" : "PhysicalPort",
+ "description" : "Incoming interface"
+ },
+ {
+ "name" : "out",
+ "type" : "PhysicalPort",
+ "description" : "Outgoing interface"
+ }
+ ],
+ "cloudInitDataSource" : "ConfigDrive",
+ "cloudInitDriveType" : "cdrom",
+ "cloudInitContentParams" : [
+ {
+ "path" : "License",
+ "description" : "Operational license"
+ }
+ ]
+}
+
+
+
+ Running the Python Module
+
+ The onboardVNFRaw Python module can be
+ executed individually by running the following command line:
+
+ $ python onboardVNFRaw.py -u admin -p admin -f ftp -w ftp -H localhost -b b
+../../vnf_config/fortigateImage/fortigateImage.json -i
+../../vnf_images/fortios.qcow2
+2019-03-07 18:03:37,791 - DEBUG: Started logging
+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_images/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...
+
+
+
+
+ Offboarding a VNF
+
+ Steps on how to Offboard a VNF from the Enea Edge Management are detailed
+ below.
+
+
+ Script Options
+
+ $ python offboardVNF.py -h
+Usage: offboardVNF.py [options]
+
+Offboard a VNF from Enea Edge Management.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -n VNFDNAME, --vnfdName=VNFDNAME
+ Name of VNF descriptor to offboard
+
+ Mandatory options:
+ -H/--host, -n/--vnfdName
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to offboard a VNF should
+ contain a list of dictionaries. Each dictionary indicates the test
+ case name and the test case arguments passed to the
+ offboardVNF Python module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+ {
+ "name": "Offboarding Fortigate VNF ",
+ "args": "-n fortigateImage"
+ }
+]
+
+
+
+ Running the Python Module
+
+ The offboardVNF Python module can be
+ executed individually by running the following command line:
+
+ $ python offboardVNF.py -u admin -p admin -H localhost -n fortigateImage
+2019-03-07 17:33:56,523 - DEBUG: Started logging
+2019-03-07 17:33:56,524 - INFO: Offboard VNF
+2019-03-07 17:33:56,557 - DEBUG: Login successful on host 'localhost'
+2019-03-07 17:33:56,557 - DEBUG: Session token is: 6bbe2b90-40ee-11e9-a81f525400d08e1d
+2019-03-07 17:33:56,682 - DEBUG: Found VNF descriptor with name 'fortigateImage'
+2019-03-07 17:33:56,683 - DEBUG: Offboard VNF: fortigateImage
+2019-03-07 17:33:56,811 - INFO: Done
+2019-03-07 17:33:56,834 - DEBUG: Logging out and exiting...
+
+
+
+
+ Instantiating a VNF
+
+ Instantiating a VNF via the Enea Edge Management is detailed below.
+
+
+ Script Options
+
+ $ python instantiateVNFI.py -h
+Usage: instantiateVNFI.py [options]
+
+Instantiate a VNF via Enea Edge Management.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management 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
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to instantiate a VNF should
+ contain a list of dictionaries. Each dictionary indicates the test
+ case name and the test case arguments passed to the
+ instantiateVNFI Python module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+ {
+ "name": "Instantiate Fortigate VNF ",
+ "args": "-t fortigateImage -f
+../../vnf_config/fortigateImage/fortigateFWInstance.json"
+ }
+]
+
+ The VNF instance JSON configuration file is specific to each
+ VNF.
+
+
+
+ Running the Python Module
+
+ The instantiateVNFI Python module can be
+ executed individually by running the following command line:
+
+ $ python instantiateVNFI.py -u admin -p admin -H localhost -n intelc3850-2 -t
+fortigateImage -f ../../vnf_config/fortigateImage/fortigateFWInstance.json
+2019-03-07 18:03:41,777 - DEBUG: Started logging
+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...
+
+
+
+
+ Controlling a VNF Instance
+
+ How to Control a VNF instance from the Enea Edge Management is
+ detailed below.
+
+
+ If a sequence of commands aiming to change the state of the VNF
+ (start/stop/suspend/shutdown) is issued rapidly, certain VNFs might
+ become unresponsive. Depending on the actual VNF, the time required
+ between life-cycle operations may vary from several seconds to half a
+ minute or even more. If a VNF becomes unresponsive, the only possible
+ action is to "Force Delete" the instance from the Enea Edge Management.
+
+
+
+ Script Options
+
+ $ python controlVNFI.py -h
+Usage: controlVNFI.py [options]
+
+Controls a VNF instance from Enea Edge Management.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management 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
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to control a VNF instance
+ should contain a list of dictionaries. Each dictionary indicates the
+ test case name and the test case arguments passed to the
+ controlVNFI Python module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+ {
+ "name": "Pause Fortigate VNF instance",
+ "args": "-i fortigateFWInstance -c pause"
+ },
+ {
+ "name": "Resume Fortigate VNF instance",
+ "args": "-i fortigateFWInstance -c resume"
+ },
+ {
+ "name": "Stop Fortigate VNF instance ",
+ "args": "-i fortigateFWInstance -c stop"
+ },
+ {
+ "name": "Start Fortigate VNF instance",
+ "args": "-i fortigateFWInstance -c start"
+ }
+]
+
+
+
+ Running the Python Module
+
+ The controlVNFI Python module can be
+ executed individually by running the following command line:
+
+ $ python controlVNFI.py -u admin -p admin -H localhost -n intelc3850-2 -i
+fortigateFWInstance -c stop
+2019-03-07 18:03:51,991 - DEBUG: Started logging
+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...
+
+
+
+
+ Destroying a VNF Instance
+
+ Steps and options on how to Destroy a VNF instance from the Enea
+ Edge Management are described below.
+
+
+ Script Options
+
+ $ python destroyVNFI.py -h
+Usage: destroyVNFI.py [options]
+
+Destroys a VNF instance from Enea Edge Management.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management 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
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to destroy a VNF instance
+ should contain a list of dictionaries. Each dictionary indicates the
+ test case name and the test case arguments passed to the
+ destroyVNFI Python module.
+
+ Sample unit-test JSON file
+ format:[
+ {
+ "name": "Destroying Fortigate VNF ",
+ "args": "-i fortigateFWInstance"
+ }
+]
+
+
+
+ Running the Python Module
+
+ The destroyVNFI Python module can be
+ executed individually by running the following command line:
+
+ $ python destroyVNFI.py -u admin -p admin -H localhost -n intelc3850-2 -i
+fortigateFWInstance
+2019-03-07 17:33:51,025 - DEBUG: Started logging
+2019-03-07 17:33:51,026 - INFO: Destroy VNF
+2019-03-07 17:33:51,119 - DEBUG: Login successful on host 'localhost'
+2019-03-07 17:33:51,119 - DEBUG: Session token is: 68803ea5-40ee-11e9-a81f525400d08e1d
+2019-03-07 17:33:51,128 - DEBUG: Found device with name 'intelc3850-2'
+2019-03-07 17:33:51,148 - DEBUG: Found VNF instance with name 'fortigateFWInstance'
+2019-03-07 17:33:51,149 - DEBUG: Destroy VNF: fortigateFWInstance
+2019-03-07 17:33:51,655 - INFO: Done
+2019-03-07 17:33:51,712 - DEBUG: Logging out and exiting...
+
+
+
+
+ Uploading a Enea Edge image onto the Enea Edge Management
+
+ Steps and options on how to Upload a Enea Edge image onto the
+ Enea Edge Management are described below.
+
+
+ Script Options
+
+ $ python uploadImage.py -h
+Upload NFVA image on Enea Edge Management
+Usage: uploadImage.py [options]
+
+Upload NFVA image on Enea Edge Management.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -f FILENAME, --fileName=FILENAME
+ Path to NFVA image file name
+ -m MODULE, --module=MODULE
+ Module name (default is: VcpeAgent)
+ -t UPGRADETYPE, --upgradeType=UPGRADETYPE
+ Upgrade Type depends on architecture: xeon_d or
+ atom_c3000
+
+ Mandatory options:
+ -H/--host, -f/--fileName, -m/--module, -t/--upgradeType
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to upload a Enea Edge image
+ should contain a list of dictionaries. Each dictionary indicates the
+ test case name and the test case arguments passed to the
+ uploadImage Python module.
+
+ Sample unit-test JSON file
+ format:[
+ {
+ "name": "Upload NFVA image on Enea Edge Management",
+ "args": "-f /tmp/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d"
+ }
+]
+
+
+
+ Running the Python Module
+
+ The uploadImage Python module can be
+ executed individually by running the following command line:
+
+ $ python uploadImage.py -u admin -p admin -H localhost \
+-f /tmp/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d
+2020-02-28 11:38:42,754 - DEBUG: Started logging
+2020-02-28 11:38:42,755 - INFO: Upload NFVA image on Enea Edge Management
+2020-02-28 11:38:43,307 - DEBUG: Login successful on host 'localhost'
+2020-02-28 11:38:43,308 - DEBUG: Session token is: 7da3f960-5a16-11ea-a3de-5652b3ac1c30
+2020-02-28 11:41:29,148 - INFO: Verify image validation flag
+2020-02-28 11:41:29,149 - INFO: Valid flag: True
+2020-02-28 11:41:29,344 - INFO: The image \
+'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' was successfully uploaded
+2020-02-28 11:41:29,344 - INFO: Done
+2020-02-28 11:41:29,388 - DEBUG: Logging out and exiting...
+
+
+
+
+ Deleting a Enea Edge image file from the
+ Enea Edge Management
+
+ Steps and options on how to Delete a Enea Edge image from the
+ Enea Edge Management are described below.
+
+
+ Script Options
+
+ $ python deleteUpgradeFile.py -h
+Delete NFVA image from Enea Edge Management
+Usage: deleteUpgradeFile.py [options]
+
+Delete NFVA image from Enea Edge Management.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -i IMAGENAME, --imageName=IMAGENAME
+ NFVA Image name
+ -m MODULE, --module=MODULE
+ Module name - default is VcpeAgent
+
+ Mandatory options:
+ -H/--host, -i/--imageName, -m/--module.
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to delete a Enea Edge image
+ should contain a list of dictionaries. Each dictionary indicates the
+ test case name and the test case arguments passed to the
+ deleteUpgradeFile Python module.
+
+ Sample unit-test JSON file
+ format:[
+ {
+ "name": "Delete NFVA image on Enea Edge Management",
+ "args": "-i enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2"
+ }
+]
+
+
+
+ Running the Python Module
+
+ The deleteUpgradeFile Python module can be
+ executed individually by running the following command line:
+
+ $ python deleteUpgradeFile.py -u admin -p admin -H localhost -i \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2
+2020-02-28 12:06:20,111 - DEBUG: Started logging
+2020-02-28 12:06:20,112 - INFO: Delete NFVA image from Enea Edge Management
+2020-02-28 12:06:20,210 - DEBUG: Login successful on host 'localhost'
+2020-02-28 12:06:20,211 - DEBUG: Session token is: 594b2d50-5a1a-11ea-a3de-5652b3ac1c30
+2020-02-28 12:06:20,255 - INFO: The image \
+'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' was successfully found
+2020-02-28 12:06:20,256 - INFO: The oid for \
+'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' image name is as follows: \
+VcpeAgent/xeon_d/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2
+2020-02-28 12:06:20,449 - INFO: The 'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' \
+image was successfully removed
+2020-02-28 12:06:20,479 - INFO: Done
+2020-02-28 12:06:20,517 - DEBUG: Logging out and exiting...
+
+
+
+
+ Installing and activating a Enea Edge image on an uCPE device
+ from the Enea Edge Management
+
+ Steps and options on how to Install and Activate a Enea Edge
+ image on an uCPE device from the Enea Edge Management are described
+ below.
+
+
+ Script Options
+
+ $ python installAndActivate.py -h
+Install and activate NFVA image from Enea Edge Management
+Usage: installAndActivate.py [options]
+
+Install and activate NFVA image from Enea Edge Management.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -i IMAGENAME, --imageName=IMAGENAME
+ Image name
+ -m MODULE, --module=MODULE
+ Module name -- VcpeAgent
+ -t UPGRADETYPE, --upgradeType=UPGRADETYPE
+ Upgrade Type -- xeon_d or atom_c3000
+ -d DEVICENAME, --deviceName=DEVICENAME
+ Device Name
+
+ Mandatory options:
+ -H/--host, -i/--imageName, -t/--upgradeType, -d/--deviceName,
+ -m/--module
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to install and activate a Enea Edge
+ image on a uCPE device from the Enea Edge Management should
+ contain a list of dictionaries. Each dictionary indicates the test
+ case name and the test case arguments passed to the
+ installAndActivate Python module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+ {
+ "name": "Install and activate NFVA image on uCPE device from Enea Edge Management",
+ "args": "-i enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d -d inteld1521-16"
+ }
+]
+
+
+
+ Running the Python Module
+
+ The installAndActivate Python module can be
+ executed individually by running the following command line:
+
+ $ python installAndActivate.py -u admin -p admin -H localhost -i \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d -d inteld1521-16
+2020-02-28 12:36:46,137 - DEBUG: Started logging
+2020-02-28 12:36:46,138 - INFO: Install and activate NFVA image from Enea Edge Management
+2020-02-28 12:36:46,288 - DEBUG: Login successful on host 'localhost'
+2020-02-28 12:36:46,288 - DEBUG: Session token is: 99b7cde0-5a1e-11ea-a3de-5652b3ac1c30
+2020-02-28 12:36:46,325 - DEBUG: Found device with name 'inteld1521-16'
+2020-02-28 12:36:46,459 - INFO: Display info about NFVA installation \
+[inteld1521-16:1001:172.24.12.152] Install Started
+2020-02-28 12:36:46,492 - INFO: Transferring Image: \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2
+2020-02-28 12:36:56,552 - INFO: Verifying Release [1]
+2020-02-28 12:37:06,599 - INFO: Verifying Release [2]
+2020-02-28 12:37:16,652 - INFO: Validating Upgrade to \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2
+2020-02-28 12:37:26,713 - INFO: Validating upgrade to \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [3]
+2020-02-28 12:37:36,770 - INFO: Validating upgrade to \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [5]
+2020-02-28 12:37:46,819 - INFO: Validating upgrade to \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [7]
+2020-02-28 12:37:56,879 - INFO: Validating upgrade to \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [9]
+2020-02-28 12:38:06,920 - INFO: Validating upgrade to \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [11]
+2020-02-28 12:38:16,975 - INFO: Validating upgrade to \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [13]
+2020-02-28 12:38:27,019 - INFO: Validating upgrade to \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [15]
+2020-02-28 12:38:37,091 - INFO: Validating upgrade to \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [18]
+2020-02-28 12:38:47,133 - INFO: Validating upgrade to \
+enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [20]
+2020-02-28 12:38:57,186 - INFO: Waiting for release to become active
+2020-02-28 12:39:07,231 - INFO: Upgrade Request Complete
+2020-02-28 12:39:17,242 - INFO: Installation completed!
+2020-02-28 12:39:17,243 - INFO: Done
+2020-02-28 12:39:17,294 - DEBUG: Logging out and exiting...
+
+
+
+
+ Clearing information about completed upgrades of uCPE devices
+ from the Enea Edge Management
+
+ Steps and options on how to clear information about completed
+ upgrades of uCPE devices from the Enea Edge Management are described
+ below.
+
+
+ Script Options
+
+ $ python clearCompletedUpgradesInfo.py -h
+Clear info about completed upgrades
+Usage: clearCompletedUpgradesInfo.py [options]
+
+Clear info about completed upgrades
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+
+ Mandatory options:
+ -H/--host
+
+
+
+ Configuring the JSON File
+
+ No JSON configuration file is needed to clear information about
+ completed upgrades of uCPE devices from the Enea Edge Management. The
+ clearCompletedUpgradesInfo Python module can be
+ run without a JSON file as a parameter.
+
+
+
+ Running the Python Module
+
+ The clearCompletedUpgradesInfo Python
+ module can be executed individually by running the following command
+ line:
+
+ $ python clearCompletedUpgradesInfo.py -u admin -p admin -H localhost
+2020-02-28 12:51:55,861 - DEBUG: Started logging
+2020-02-28 12:51:55,862 - INFO: Clear info about completed upgrades
+2020-02-28 12:51:55,950 - DEBUG: Login successful on host 'localhost'
+2020-02-28 12:51:55,951 - DEBUG: Session token is: b7eb83e0-5a20-11ea-a3de-5652b3ac1c30
+2020-02-28 12:51:55,993 - INFO: Done
+2020-02-28 12:51:56,025 - DEBUG: Logging out and exiting...
+
+
+
+
+ Uploading a Custom Script to the Enea Edge Management
+
+ Steps and options on how to upload a custom script to the
+ Enea Edge Management are described below.
+
+
+ Script Options
+
+ $ python customScripts/upload.py -h
+2020-04-14 10:26:23,582 - INFO: Upload Custom Script
+Usage: upload.py [options]
+
+Add a Custom Script to Enea Edge Management
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -f CUSTOMSCRIPT, --file=CUSTOMSCRIPT
+ Custom Script File
+ -e PHASE, --phase=PHASE
+ Execution phase. Must be one of the following: once-
+ before-startup | always-before-startup | once-after-
+ startup | always-after-startup
+
+ Mandatory options:
+ -H/--host, -f/--file, -e/--phase
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to upload a Custom Script to
+ the Enea Edge Management must contain a list of dictionaries. Each dictionary
+ indicates the test case name and the test case arguments passed to the
+ customScripts/upload Python module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+ {
+ "name": "Uploading a Custom Script to the Enea Edge Management",
+ "args": "-f ../../lab_config/customScripts/test_success_after_always \
+ -e always-after-startup"
+ }
+]
+
+
+
+ Running the Python Module
+
+ The customScripts/upload Python module can
+ be executed individually by running the following command line:
+
+ $ python automation_framework/customScripts/upload.py \
+-f lab_config/customScripts/test_success_after_always -e always-after-startup
+2020-04-14 14:08:02,824 - DEBUG: Started logging
+2020-04-14 14:08:02,915 - INFO: Upload Custom Script
+2020-04-14 14:08:02,994 - DEBUG: Login successful on host '172.24.3.109'
+2020-04-14 14:08:02,995 - DEBUG: Session token is: 97544990-7e48-11ea-835c-02423a1c239f
+2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to Enea Edge Management. \
+Content: #!/bin/bash
+echo test_success_after_always
+2020-04-14 14:08:03,138 - INFO: Done
+2020-04-14 14:08:03,169 - DEBUG: Logging out and exiting...
+
+
+
+
+ Uploading a Custom Script from the Enea Edge Management to a
+ Device
+
+ Steps and options on how to upload a custom script from the
+ Enea Edge Management to a Device are described below.
+
+
+ Script Options
+
+ $ python customScripts/uploadOnDevice.py -h
+2020-04-14 10:27:05,614 - INFO: Upload Custom Script on Device
+Usage: uploadOnDevice.py [options]
+
+Add a Custom Script to a Device
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME
+ Custom Script Name that resides on Enea Edge Management
+ -e PHASE, --phase=PHASE
+ Execution phase. Must be one of the following: once-
+ before-startup | always-before-startup | once-after-
+ startup | always-after-startup
+ -n DEVICENAME, --device-name=DEVICENAME
+ Name of the device
+ -r, --reboot Reboot the device after uploading
+
+ Mandatory options:
+ -H/--host, -c/--customScriptName, -e/--phase, -n/--device-name
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to upload a Custom Script
+ from the Enea Edge Management to a Device must contain a list of dictionaries.
+ Each dictionary indicates the test case name and the test case
+ arguments passed to the
+ customScripts/uploadOnDevice Python
+ module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+{
+"name": "Uploading a Custom Script from Enea Edge Management to device",
+"args": "-c test_success_after_always -e always-after-startup -n inteld1521-6"
+}
+]
+
+
+
+ Running the Python Module
+
+ The customScripts/uploadOnDevice Python
+ module can be executed individually by running the following command
+ line:
+
+ $ python automation_framework/customScripts/uploadOnDevice.py -c \
+test_success_after_always -e always-after-startup -n inteld1521-6
+2020-04-14 14:26:26,205 - DEBUG: Started logging
+2020-04-14 14:26:26,206 - INFO: Upload Custom Script on Device
+2020-04-14 14:26:26,251 - DEBUG: Login successful on host '172.24.3.109'
+2020-04-14 14:26:26,252 - DEBUG: Session token is: 28ebcb10-7e4b-11ea-835c-02423a1c239f
+2020-04-14 14:26:26,286 - DEBUG: Found device with name 'inteld1521-6'
+2020-04-14 14:26:26,287 - DEBUG: Upload test_success_after_always to inteld1521-6
+2020-04-14 14:26:26,314 - INFO: Done
+2020-04-14 14:26:26,341 - DEBUG: Logging out and exiting...
+
+
+
+
+ Removing a Custom Script from the Enea Edge Management
+
+ Steps and options on how to remove a custom script from the
+ Enea Edge Management are described below.
+
+
+ Script Options
+
+ $ python customScripts/delete.py -h
+2020-04-14 14:36:52,010 - INFO: Delete Custom Script on Enea Edge Management
+Usage: delete.py [options]
+
+Delete a Custom Script 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 Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME
+ Custom Script Name that resides on a Device
+ -e PHASE, --phase=PHASE
+ Execution phase. Must be one of the following: once-
+ before-startup | always-before-startup | once-after-
+ startup | always-after-startup
+
+ Mandatory options:
+ -H/--host, -e/--phase
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to remove a Custom Script
+ from the Enea Edge Managementdid you mean device or
+ Enea Edge Management? must contain a list of dictionaries. Each dictionary
+ indicates the test case name and the test case arguments passed to the
+ customScripts/delete Python module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+{
+"name": "Removing a Custom Script from Enea Edge Management",
+"args": "-c test_success_after_always -e always-after-startup"
+}
+]
+
+
+
+ Running the Python Module
+
+ The customScripts/delete Python module can
+ be executed individually by running the following command line:
+
+ $ python automation_framework/customScripts/delete.py -c \
+test_success_after_always -e always-after-startup
+2020-04-14 14:39:22,042 - DEBUG: Started logging
+2020-04-14 14:39:22,042 - INFO: Delete Custom Script on Enea Edge Management
+2020-04-14 14:39:22,081 - DEBUG: Login successful on host '172.24.3.109'
+2020-04-14 14:39:22,082 - DEBUG: Session token is: f75a83a0-7e4c-11ea-835c-02423a1c239f
+2020-04-14 14:39:22,099 - DEBUG: Found custom script: 'test_success_after_always'
+2020-04-14 14:39:22,099 - DEBUG: Delete script test_success_after_always, \
+phase always-after-startup from Enea Edge Management
+2020-04-14 14:39:22,118 - INFO: Done
+2020-04-14 14:39:22,135 - DEBUG: Logging out and exiting...
+
+
+
+
+ Removing a Custom Script from a Device
+
+ Steps and options on how to remove a custom script from a device
+ are described below.
+
+
+ Script Options
+
+ $ python customScripts/deleteOnDevice.py -h
+2020-04-14 10:27:23,536 - INFO: Delete Custom Script on Device
+Usage: deleteOnDevice.py [options]
+
+Delete a Custom Script 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 Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME
+ Custom Script Name that resides on a Device
+ -e PHASE, --phase=PHASE
+ Execution phase. Must be one of the following: once-
+ before-startup | always-before-startup | once-after-
+ startup | always-after-startup
+ -n DEVICENAME, --device-name=DEVICENAME
+ Name of the device
+
+ Mandatory options:
+ -H/--host, -n/--device-name
+
+
+
+ Configuring the JSON File
+
+ The JSON configuration file needed to remove a Custom Script
+ from a device must contain a list of dictionaries. Each dictionary
+ indicates the test case name and the test case arguments passed to the
+ customScripts/deleteOnDevice Python
+ module.
+
+ Sample unit-test JSON file
+ format:
+
+ [
+{
+"name": "Removing a Custom Script from device",
+"args": "-c test_success_after_always -e always-after-startup -n inteld1521-6"
+}
+]
+
+
+
+ Running the Python Module
+
+ The customScripts/deleteOnDevice Python
+ module can be executed individually by running the following command
+ line:
+
+ $ python automation_framework/customScripts/deleteOnDevice.py -c \
+test_success_after_always -e always-after-startup -n inteld1521-6
+2020-04-14 14:33:52,288 - DEBUG: Started logging
+2020-04-14 14:33:52,288 - INFO: Delete Custom Script on Device
+2020-04-14 14:33:52,327 - DEBUG: Login successful on host '172.24.3.109'
+2020-04-14 14:33:52,327 - DEBUG: Session token is: 32cde4f0-7e4c-11ea-835c-02423a1c239f
+2020-04-14 14:33:52,349 - DEBUG: Found device with name 'inteld1521-6'
+2020-04-14 14:33:52,349 - DEBUG: Delete test_success_after_always, \
+phase always-after-startup from inteld1521-6
+2020-04-14 14:33:52,373 - INFO: Done
+2020-04-14 14:33:52,391 - DEBUG: Logging out and exiting...
+
+
+
+
+ Custom Script - Full Example
+
+ All Python API used in this example are described in detail in the following sections.
+
+ The list of custom scripts can be found in
+ <AF-TH-install-dir>/lab_config/customScripts:
+
+
+
+ test_fail_after_always. Phase:
+ always-after-startup.
+
+
+
+ test_fail_after_once. Phase:
+ once-after-startup.
+
+
+
+ test_fail_before_always. Phase:
+ always-before-startup.
+
+
+
+ test_fail_before_once. Phase:
+ once-before-startup.
+
+
+
+ test_success_after_always. Phase:
+ always-after-startup.
+
+
+
+ test_success_after_once. Phase:
+ once-after-startup.
+
+
+
+ test_success_before_always. Phase:
+ always-before-startup.
+
+
+
+ test_success_before_once. Phase:
+ once-before-startup.
+
+
+
+
+ The following example uses the
+ test_success_after_always custom script.
+
+
+
+ Uploading a Custom Script to the Enea Edge Management
+
+ $ python automation_framework/customScripts/upload.py \
+-f lab_config/customScripts/test_success_after_always -e always-after-startup
+2020-04-14 14:08:02,824 - DEBUG: Started logging
+2020-04-14 14:08:02,915 - INFO: Upload Custom Script
+2020-04-14 14:08:02,994 - DEBUG: Login successful on host '172.24.3.109'
+2020-04-14 14:08:02,995 - DEBUG: Session token is: 97544990-7e48-11ea-835c-02423a1c239f
+2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to Enea Edge Management. \
+Content: #!/bin/bash
+echo test_success_after_always
+2020-04-14 14:08:03,138 - INFO: Done
+2020-04-14 14:08:03,169 - DEBUG: Logging out and exiting...
+
+
+
+ Uploading a Custom Script from the Enea Edge Management to a
+ Device
+
+ $ python automation_framework/customScripts/uploadOnDevice.py -c \
+test_success_after_always -e always-after-startup -n inteld1521-6
+2020-04-14 14:26:26,205 - DEBUG: Started logging
+2020-04-14 14:26:26,206 - INFO: Upload Custom Script on Device
+2020-04-14 14:26:26,251 - DEBUG: Login successful on host '172.24.3.109'
+2020-04-14 14:26:26,252 - DEBUG: Session token is: 28ebcb10-7e4b-11ea-835c-02423a1c239f
+2020-04-14 14:26:26,286 - DEBUG: Found device with name 'inteld1521-6'
+2020-04-14 14:26:26,287 - DEBUG: Upload test_success_after_always to inteld1521-6
+2020-04-14 14:26:26,314 - INFO: Done
+2020-04-14 14:26:26,341 - DEBUG: Logging out and exiting...
+
+
+
+ Removing a Custom Script from a Device
+
+ $ python automation_framework/customScripts/deleteOnDevice.py -c \
+test_success_after_always -e always-after-startup -n inteld1521-6
+2020-04-14 14:33:52,288 - DEBUG: Started logging
+2020-04-14 14:33:52,288 - INFO: Delete Custom Script on Device
+2020-04-14 14:33:52,327 - DEBUG: Login successful on host '172.24.3.109'
+2020-04-14 14:33:52,327 - DEBUG: Session token is: 32cde4f0-7e4c-11ea-835c-02423a1c239f
+2020-04-14 14:33:52,349 - DEBUG: Found device with name 'inteld1521-6'
+2020-04-14 14:33:52,349 - DEBUG: Delete test_success_after_always, \
+phase always-after-startup from inteld1521-6
+2020-04-14 14:33:52,373 - INFO: Done
+2020-04-14 14:33:52,391 - DEBUG: Logging out and exiting...
+
+
+
+ Removing a Custom Script from the Enea Edge Management
+
+ $ python automation_framework/customScripts/delete.py -c \
+test_success_after_always -e always-after-startup
+2020-04-14 14:39:22,042 - DEBUG: Started logging
+2020-04-14 14:39:22,042 - INFO: Delete Custom Script on Enea Edge Management
+2020-04-14 14:39:22,081 - DEBUG: Login successful on host '172.24.3.109'
+2020-04-14 14:39:22,082 - DEBUG: Session token is: f75a83a0-7e4c-11ea-835c-02423a1c239f
+2020-04-14 14:39:22,099 - DEBUG: Found custom script: 'test_success_after_always'
+2020-04-14 14:39:22,099 - DEBUG: Delete script test_success_after_always, \
+phase always-after-startup from Enea Edge Management
+2020-04-14 14:39:22,118 - INFO: Done
+2020-04-14 14:39:22,135 - DEBUG: Logging out and exiting...
+
+
+
+
+ Adding an Offline Configuration Store
+
+ Steps and options on how to add a Config Store in the
+ Enea Edge Management are described below.
+
+
+ Script Options
+
+ To add a config store in the Enea Edge Management 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.
+
+
+
+ Configuring the JSON file
+
+ Example of a CONFIGSTORE json file:
+
+ {
+ "descr": "intelc3850-2",
+ "version": "2.4.0",
+ "deviceGroupingTags": "",
+ "deviceId": "intelc3850-2",
+ "name": "intelc3850-2"
+}
+
+
+
+ Running the Python Module
+
+ Adding an offline config store in the Enea Edge Management using
+ the command line:
+
+ python automation_framework/device/addConfigStore.py -f \
+lab_config/inteld1521-16/store.json
+2020-10-16 09:35:51,084 - INFO: Add offline config store
+2020-10-16 09:35:51,160 - INFO: Done
+
+
+
+
+ Uploading an Offline Configuration Store to an uCPE
+ Device
+
+ Steps and options on how to upload a config store to a device are
+ described below.
+
+
+ Script options
+
+ To upload a config store to a uCPE Device use the
+ uploadConfigStore.py script detailed
+ below.
+
+ python uploadConfigStore.py -h
+Usage: uploadConfigStore.py [options]
+
+Upload offline configuration to uCPE Device.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -s STORE, --store=STORE
+ Offline config store name
+ -d DEVICE, --device=DEVICE
+ Device Name
+
+ Mandatory options:
+ -H/--host, -s/--store, -d/--device
+
+
+
+ Running the Python Modules
+
+ python automation_framework/device/uploadConfigStore.py -s inteld1521-16 \
+-d inteld1521-16
+2020-10-16 09:37:29,074 - INFO: Upload offline configuration to uCPE Device
+2020-10-16 09:37:49,321 - INFO: The 'inteld1521-16' config store was successfully \
+uploaded on device!
+2020-10-16 09:37:49,322 - INFO: Done
+
+
+
+
+ Checking the Upload of an Offline Configuration Store
+
+ Steps and options on how to check an upload of a Config Store to a
+ Device are described below.
+
+
+ Script options
+
+ To check an upload a config store to a uCPE Device use the
+ getUploadStatus.py script detailed below.
+
+ python getUploadStatus.py -h
+Usage: getUploadStatus.py [options]
+
+Get upload offline configure status on uCPE Device.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -d DEVICE, --device=DEVICE
+ Device Name
+
+ Mandatory options:
+ -H/--host, -d/--device
+
+
+
+ Running the Python Modules
+
+ python automation_framework/device/getUploadStatus.py -d inteld1521-16
+2020-10-16 09:38:33,388 - INFO: Get upload offline configure status on uCPE Device
+2020-10-16 09:38:33,486 - INFO: Successful: True
+2020-10-16 09:38:33,487 - INFO: Store name: inteld1521-16
+2020-10-16 09:38:33,488 - INFO: In progress: False
+2020-10-16 09:38:33,489 - INFO: A config store was successfully uploaded on device!
+2020-10-16 09:38:33,490 - INFO: Done
+
+
+
+
+ Removing an Offline Configuration Store in the
+ Enea Edge Management
+
+ Steps and options on how to remove an upload of a Config Store
+ from the Enea Edge Management are described below.
+
+
+ Modifications of an Offline Configurations Store are not
+ possible post deployment in the Enea Edge Management, 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.
+
+
+
+ Script options
+
+ To remove a config store from the Enea Edge Management use the
+ removeConfigStore.py script detailed
+ below.
+
+ python removeConfigStore.py -h
+Usage: removeConfigStore.py [options]
+
+Remove a config store from Enea Edge Management.
+
+Options:
+ --version show program's version number and exit
+ -h, --help show this help message and exit
+ -u USERNAME, --username=USERNAME
+ Enea Edge Management login username
+ -p PASSWORD, --password=PASSWORD
+ Enea Edge Management login password
+ -H HOST, --host=HOST Enea Edge Management host name or IP address
+ -o STORENAME, --store-name=STORENAME
+ Name of the Offline Config Store
+
+ Mandatory options:
+ -H/--host, -o/--store-name
+
+
+
+ Running the Python Modules
+
+ python automation_framework/device/removeConfigStore.py -o inteld1521-16
+2020-10-16 09:39:39,127 - INFO: Remove offline config store
+2020-10-16 09:39:39,289 - INFO: Done
+
+
+
+
+
+ Test Harness
+
+ All Test Harness sources are under the
+ <AF-TH-install-dir> directory and the host file
+ is the Ansible inventory file. See the complete tree listing at the
+ beginning of this chapter for details.
+
+ The Ansible based Test Harness represents an example of how to
+ structure all the files needed for creating automated test cases using the
+ AF and provides a way to implement them. The
+ ansible.cfg file contains an example of the Ansible
+ default configuration. It offers the possibility to display the Ansible
+ console output in different ways, by setting the
+ stdout_callback option to selective
+ or debug. The default value for this option is set to
+ selective to print only certain tasks. It is
+ recommended to switch to debug when a test fails. By
+ setting the parameter any_errors_fatal to
+ True, task failures will be considered fatal errors
+ (the play execution will stop). and why would this stop of play
+ execution help in this debugging scenario
+
+ All Playbooks that execute AF python modules run on
+ localhost. New entries have to be created for direct
+ communication over SSH with the boards, as done in the
+ [fortigateFW] example.
+
+ The setup_env.sh script sets up the
+ testHarness test environment by creating
+ testHarness-venv python virtualenv, executing requests
+ needed by Automation Framework python modules and installing
+ Ansible.
+
+ The Ansible package version installed in the test environment is
+ 2.9.6. The playbooks are based on this version of Ansible.
+
+ The /playbooks directory contains all the
+ implemented Ansible Playbooks. For more details please refer to the Sample Test Cases Chapter in the
+ Manual.
+
+ The /uCPEM_config directory stores JSON
+ configuration files needed for the setup of the Enea Edge Management used by TH.
+ One configuration file is needed per Enea Edge Management installation, to be used
+ in the TH.
+
+ The /vnf_image directory stores the VNF Images
+ needed by the Ansible Playbooks (i.e. the sample test cases).
+
+ The /lab_config directory stores the JSON
+ configuration files related to a device (devices, NICs and bridges) as
+ well as sample custom scripts. Each subfolder should be named exactly like
+ the device name and should contain all the related configuration files
+ needed for the test cases to be run on it.
+
+ The /vnf_config directory stores the
+ configuration files related to a VNF Descriptor and VNF instances.
+ Typically these include a VNF Image JSON, VNF Instance JSON, VNF license
+ and any other files required by the type of the VNF. Each subfolder should
+ be named exactly like the name of the VNF Descriptor and should contain
+ all the related configuration files needed for test cases to be run using
+ this VNF.
+
+ The /log directory is created when the
+ setup_env.sh is run. When test cases are run, the
+ Ansible and the Python logs are stored in the
+ ansible.log and debug.log files,
+ respectively.
+
+
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml
new file mode 100644
index 0000000..e0a5cdf
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/book.xml
@@ -0,0 +1,33 @@
+
+
+]>
+
+ Enea Enea Edge Automation Framework and Test Harness User Guide
+
+ Release Version
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml
new file mode 100644
index 0000000..24a7a29
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/components.xml
@@ -0,0 +1,137 @@
+
+
+ Components
+
+ An overview of the Enea Edge Runtime and the Edge Management
+ in cooperation with the Automation Framework and Test Harness, will
+ be presented in detail.
+
+
+ Component Overview
+
+
+
+
+
+
+
+
+
+ Enea Edge
+
+ Enea Edge is comprised of the Enea Edge Management and the Enea
+ Edge Runtime.
+
+
+ Enea Edge Management
+
+ The Enea Edge Management application needs to be installed on a
+ supported platform. Upon installation, the system will be set up to
+ manage Enea Edge "devices", these are the virtualized CPE devices
+ used in testing.
+
+ For more on Enea Edge Management installation instructions, please
+ refer to the section on how to Installing the Enea Edge Management in the
+
+ Manual.
+
+
+
+ Enea Edge Runtime
+
+ One or more uCPE devices running the Enea Edge Runtime
+ are required as hosts to run the VNF(s). The uCPE device is
+ known to the Enea Edge Management as the "VcpeAgent" device module.
+
+
+ Before running any use case with the Automation Framework or the
+ Test Harness, make sure the uCPE device(s) have been added to the Edge Management.
+
+
+ Adding a VcpeAgent device can be done via two methods:
+
+
+
+ Through the Enea Edge Management GUI. Add the device using the
+ appropriate parameters by launching the UI under
+ Devices -> Manage in the
+ main screen.
+
+
+
+ REST API. Invoke the Enea Edge Management REST API to add a
+ device.
+
+
+
+ For more on Enea Edge installation instructions, please
+ refer to chapter Preparing the USB stick for installation of the
+ Enea Edge Runtime in the
+ Manual.
+
+
+
+
+ Automation Framework
+
+ Testing can be performed by running the available Python scripts
+ against the Enea Edge Management REST API (Python samples supplied). This can be
+ done by using the Python scripts individually or by using the Python
+ unit-test suite that is able to automatically run test-cases defined for
+ each available Python script.
+
+ In either case, it is desirable to use a different host (instead of
+ running the tests on the same system as the Enea Edge Management) in order to
+ ensure that the Enea Edge Management is setup and installed correctly in terms of
+ allowing external users to access it and use it effectively.
+
+
+
+ Test Harness
+
+ The Test Harness (TH) provides a way for driving configuration with
+ Ansible Playbooks, by running the python modules from the Automation
+ Framework (AF) and by direct connection over SSH to the boards that run
+ Enea Edge.
+
+ The Test Harness includes an automated test suite that
+ contains:
+
+
+
+ VNF, Device and Network Smoke Test Cases. A sample test suite
+ that acts as basic smoke tests for Enea Edge and also as a
+ sanity-check test suite for the AF and TH.
+
+
+
+ VNF Deployment and Lifecycle. A sample test suite that verifies
+ the instantiation, lifecycle control and destruction of a VNF for Enea
+ Edge.
+
+
+
+ Service Creation and Lifecycle. A sample test suite that
+ contains complex test cases showcasing service creation and lifecycle
+ management.
+
+
+
+ For details about the test suites or test cases please refer to
+ chapter Sample Test Cases in the
+ Manual.
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml
new file mode 100644
index 0000000..97666cf
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/getting_started.xml
@@ -0,0 +1,239 @@
+
+
+ Getting Started with the Automation Framework and Test
+ Harness
+
+
+ Prerequisites
+
+ For installation of the Automation Framework and Test Harness a
+ CentOS 7 host machine is needed with support for:
+
+
+
+ Python 2.7.
+
+
+
+ EPEL Repository:sudo yum install epel-release
+
+
+
+ PIP package manager: sudo yum -y install python-pip
+
+
+
+ Virtualenv tool: sudo pip install virtualenv
+
+
+
+
+ The Automation Framework and Test Harness installation may be done
+ on the same machine used for Enea Edge Management installation, although this is
+ not encouraged. For more details see section Automation Framework in the .
+
+
+
+
+ Environment
+
+
+ Lab setup overview for Basic Setup
+
+
+
+
+
+
+ The following enviroment setup is needed for running all tests
+ defined in the
+ manual:
+
+ Lab Network
+ Requirements
+
+ DHCP enabled.
+
+
+
+ Internet Connectivity.
+
+
+
+ Enea Edge Management Host
+ Requirements
+
+
+
+ Running CentOS 7.
+
+
+
+ Connected to the Lab Network.
+
+
+
+ Enea Edge Management installed.
+
+
+ For details on how to install the Enea Edge Management, see Installing the Enea Edge Management in the
+
+ Manual.
+
+
+
+
+ uCPE device
+ Requirements
+
+ Minimum of 4 Physical Network Devices.
+
+
+
+ 4GB RAM and 4 cores (Intel C3000 or Xeon D).
+
+
+
+ 2 Physical connections to the Lab Network.
+
+
+
+ Enea Edge Runtime installed.
+
+
+ For information on how to install Enea Edge refer to
+ Preparing the USB stick for installation
+ of the Enea Edge Runtime in the
+ Manual.
+
+
+
+ Lab Setup Overview for ChainedVNFsService
+
+
+
+
+
+
+
+
+ uCPE device 1 and 2
+ Requirements
+
+ Minimum of 4 Physical Network Devices.
+
+
+
+ 16GB RAM and 8 cores (Intel C3000 or Xeon D).
+
+
+
+ 2 Physical connections to the Lab Network.
+
+
+
+ 1 Physical connection back to back between both uCPE
+ devices.
+
+
+
+ Enea Edge Runtime installed.
+
+
+
+
+
+ Installation and Initial Setup
+
+
+
+ Unzip the
+ Enea_NFV_Access_AF-TH_<version>-build<build_number>.zip
+ archive file, provided by Enea, on a supported host machine.
+
+ The directory in which the archive has been unpacked will be
+ denoted as <AF-TH-installdir>.
+
+
+
+ Enter the <AF-TH-install-dir> directory
+ and run the setup_env.sh script to do the initial
+ setup of the Test Harness environment: source setup_env.sh
+
+
+
+ Set up the Enea Edge Management which will be used by the TH:
+
+
+
+ Create the Enea Edge Management JSON config file in the
+ <AF-TH-install-dir>/uCPEM_config/
+ directory:{
+"ucpe_usr":"Enea Edge Management Username",
+"ucpe_pass":"Enea Edge Management Password",
+"ucpe_host":"Enea Edge Management IP/Hostname",
+"ftp_usr":"FTP Username",
+"ftp_pass":"FTP Password",
+"ftp_port":"FTP Port"
+}See the
+ <AF-TH-install-dir>/uCPEM_config/ucpem01.json
+ file as an example.
+
+
+
+ Run the setupuCPEManager.yml Ansible
+ Playbook with the JSON config path as a parameter:
+ ansible-playbook playbooks/setupuCPEManager.yml -e\
+"@uCPEM_config/<config_name>.json"
+
+ Exampleansible-playbook playbooks/setupuCPEManager.yml -e\
+"@uCPEM_config/ucpem01.json"
+
+
+
+
+
+
+ The steps presented in this section are to be executed only once,
+ for the initial setup of the TH environment.
+
+
+ After the initial setup, each session ends by closing the Python
+ virtual environment through running deactivate from the
+ <AF-THinstall-dir> directory.
+
+ Subsequent use of the installation requires activating the Python
+ virtual enviroment before using the Automation Framework and Test Harness:
+ source
+ <AF-TH-install-dir>/testHarness-venv/bin/activate.
+
+ Furthermore, if a user wants to use a new Enea Edge Management instance for
+ a new session, the user also has to re-run the
+ setupuCPEManager.yml playbook with the corresponding
+ JSON config for the new Enea Edge Management instance.
+
+
+ Automation Framework and Test Harness History Information can be
+ found in the AF&TH CHANGELOG file available in:
+ <AF-TH-install-dir>/CHANGELOG
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png
new file mode 100755
index 0000000..0329450
Binary files /dev/null and b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png differ
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png
new file mode 100755
index 0000000..a384877
Binary files /dev/null and b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png differ
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/environment_basicsetup.png b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/environment_basicsetup.png
new file mode 100755
index 0000000..c30dcfd
Binary files /dev/null and b/doc/book-enea-edge-auto-fw-th-user-guide/doc/images/environment_basicsetup.png differ
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml
new file mode 100644
index 0000000..b2486a0
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/overview.xml
@@ -0,0 +1,188 @@
+
+
+ Overview
+
+ This document describes the Automation Framework and Test Harness for
+ Enea Edge, along with instructions regarding the necessary steps to
+ run these software tools.
+
+
+ Description
+
+ The Automation Framework provides a way for driving configuration
+ with Python scripting. It complements the Enea Edge Management GUI and uses
+ the northbound REST APIs, given to provide full usability of the Enea Management
+ features.
+
+ The Test Harness is based on running Ansible Playbooks to complete
+ different test cases, which make use of the Automation Framework Python
+ modules and/or direct commands on the uCPE devices running the Enea Edge Runtime.
+
+
+
+ Definitions and Acronyms
+
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/doc/troubleshooting_guide.xml b/doc/book-enea-edge-auto-fw-th-user-guide/doc/troubleshooting_guide.xml
new file mode 100644
index 0000000..a5cd664
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-user-guide/doc/troubleshooting_guide.xml
@@ -0,0 +1,43 @@
+
+
+ Troubleshooting Guide
+
+ The following are best practices and possible solutions to problems
+ that may occur during operation:
+
+
+
+ All the Playbooks have to be run from the root directory of the
+ Test Harness (TH) to avoid failures such as "File not found!", since the
+ paths to the required configuration files are hardcoded into the
+ Playbooks.
+
+
+
+ If the setup_env.sh fails, for debugging remove
+ &> /dev/null from the failed command. The
+ output of the command will be printed, and will not be redirected to
+ /dev/null anymore.
+
+
+
+ When setting up the Enea Edge Management to be used by the TH through the
+ setupuCPEManager.yml Playbook, if the uCPE
+ username/password/host are incorrect or are missing, all the Sample test
+ cases will fail. If the FTP username/password/port are wrong or are
+ missing, the tests that require file transfer to the Enea Edge Management will
+ fail.
+
+
+
+ Ansible logs are not written into the
+ log/ansible.log file when the
+ stdout_callback is set to
+ selective in the ansible.cfg file.
+ For debugging, check the python logs from the
+ log/debug.log file or change the
+ stdout_callback to debug and rerun
+ the test.
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-auto-fw-th-user-guide/swcomp.mk b/doc/book-enea-edge-auto-fw-th-user-guide/swcomp.mk
new file mode 100755
index 0000000..d17c2b3
--- /dev/null
+++ b/doc/book-enea-edge-auto-fw-th-user-guide/swcomp.mk
@@ -0,0 +1,10 @@
+# Component build specification
+
+# Version of THIS book
+BOOK_VER ?= $(REL_VER)-dev
+
+DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
+
+BOOKPACKAGES := book-enea-edge-auto-fw-th-user-guide
+BOOKDESC_$(BOOKPACKAGES) := "Enea Enea Edge $(PROD_VER) Automation Framework and Test Harness User Guide"
+BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-edge-example-usecases/doc/128t_vnf_router.xml b/doc/book-enea-edge-example-usecases/doc/128t_vnf_router.xml
new file mode 100644
index 0000000..89692b0
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/128t_vnf_router.xml
@@ -0,0 +1,715 @@
+
+
+ 128T VNF Router Example Use-case
+
+ The 128T Networking Platform (128T) natively provides network-based
+ security, control, and insight across data centers, wide-area networks
+ (WAN), and edge locations for enterprises, service providers, and cloud
+ companies alike.
+
+
+ Prerequisites
+
+ The following are needed for this example use case:
+
+
+
+ 1 in band management port for device management.
+
+
+
+ 1 in band management port for 128T VNF.
+
+
+
+ 1 WAN interface for 128T.
+
+
+
+ 1 LAN interface for 128T.
+
+
+
+ The following files are needed for this example use-case:
+
+
+
+ 128T router VNF image. Please contact 128 Technology to get a
+ VNF image and its license file.
+
+
+
+ cloud-init iso image.
+
+
+
+
+ For data path validation, it may be required to generate a new
+ cloud-init image to match your network configuration.
+
+
+
+
+ 128T VNF Router
+
+
+ 128T VNF Router Setup Overview
+
+
+
+
+
+
+
+
+
+ Use-case Setup
+
+ Configuring Network Interfaces on uCPE
+ devices:
+
+ Add the trgt uCPE device into Enea Edge Management:
+ Devices -> Manage -> Add.
+
+ Fill in the required fields with the following data:
+
+
+ Device Details
+
+
+
+
+
+
+
+
+
+
+ Field
+
+ Value
+
+
+
+
+
+ Type
+
+ Enea universal CPE
+
+
+
+ Release
+
+ 2.2.2
+
+
+
+ Name
+
+ trgt
+
+
+
+ IP/DNS Address
+
+ <unspecified>
+
+
+
+ Description
+
+ Target 1
+
+
+
+ SSH Port
+
+ 830
+
+
+
+ SSH User Name
+
+ root
+
+
+
+ Password
+
+ null
+
+
+
+ Device ID
+
+ Also configured during installation of the device
+ (E.g.: Target-15).
+
+
+
+ OK
+
+ Green status indicates connection with uCPE device
+ was established.
+
+
+
+
+
+
+
+ In order to add the device on the map: Right-Click on
+ Map -> Place Device -> trgt.
+
+
+
+ Configure the virtualization infrastructure for 128T VNF by
+ creating three OVS bridges and a host interface:
+
+ Add the Host Interface by selecting the trgt device, then
+ Configuration -> External Interfaces ->
+ Configuration -> Add, and fill in the required fields
+ with the following data:
+
+
+ Host Interface Details
+
+
+
+
+
+
+
+
+
+
+ Field
+
+ Value
+
+
+
+
+
+ Source
+
+ enp4s0f1. The only interface
+ available for LAN connection.
+
+
+
+ networking-type
+
+ dpdk
+
+
+
+ dpdk-type
+
+ vfio-pci
+
+
+
+ Create
+
+ <interface enp4s0f1 ready to be used in a LAN
+ bridge.>
+
+
+
+
+
+ Select the trgt device then: Configuration ->
+ OpenVSwitch -> Bridges -> Add, and fill in the
+ required fields for each bridge with the following data from each
+ table:
+
+
+ ibm_br Bridge Details
+
+
+
+
+
+
+
+
+
+
+ Field
+
+ Value
+
+
+
+
+
+ id
+
+ <autogenerated - do not change>
+
+
+
+ Name
+
+ ibm_br
+
+
+
+ ovs-bridge-type
+
+ inbandMgmt
+
+
+
+ Create
+
+ The system will automatically select the
+ physical interface that has access to Enea Edge
+ Management.
+
+
+
+
+ lan_br Bridge Details
+
+
+
+
+
+
+
+
+
+
+ Field
+
+ Value
+
+
+
+
+
+ id
+
+ <autogenerated - do not change>
+
+
+
+ Name
+
+ lan_br
+
+
+
+ ovs-bridge-type
+
+ dataPlane
+
+
+
+ sub-type
+
+ communication
+
+
+
+ +
+
+ Name: enp4s0f1 OK
+
+
+
+ Create
+
+
+
+
+
+
+
+
+
+ Onboarding the VNFs:
+
+ Onboard the VM Image through VNF -> Descriptors ->
+ On-board, and fill in the required fields with the following
+ values:
+
+
+ VM Image Details
+
+
+
+
+
+
+
+
+
+
+ Field
+
+ Value
+
+
+
+
+
+ VM image file
+
+ centos_128t_with_ci.qcow2
+
+
+
+ Image format
+
+ QCOW2
+
+
+
+ VNF Type Name
+
+ 128T
+
+
+
+ Description
+
+ 128T Router
+
+
+
+ Version
+
+ 1.0
+
+
+
+ Memory in MB
+
+ 8192. More memory can be allocated if required
+ (<28672).
+
+
+
+ Num. of CPUs
+
+ 2. More CPUs can be reserved if required
+ (<15).
+
+
+
+ Interfaces -> +
+
+ Name: mgmt
+
+
+
+ Interfaces -> +
+
+ Name: wan
+
+
+
+ Interfaces -> +
+
+ Name: lan
+
+
+
+ Cloud Init -> Cloud-Init Datasource
+
+ ISO
+
+
+
+ Cloud Init -> Cloud-Init Disk Type
+
+ cdrom
+
+
+
+ Properties -> +
+
+ Name: vnfMgmtIpAddress. Value: 10.0.0.2
+
+
+
+ Properties -> +
+
+ Name: internalMgmtPort. Value: 443
+
+
+
+ Properties -> +
+
+ Name: externalMgmtPort. Value: 60001
+
+
+
+ Onboard
+
+ <Wait for message: VNF package onboarded
+ successfully>
+
+
+
+ Close
+
+
+
+
+
+
+
+
+
+
+ HTTPS access (443) can be changed with another type of
+ access. Please consult official 128T documentation and make sure
+ the 128T VNF is configured to accept another type of connection
+ before changing the port number.
+
+
+
+ externalMgmtPort (60001) represents the
+ external port on which the user can access the VNF management
+ interface via HTTPS. Another port can be selected if needed. There
+ are no other changes required or components affected by this
+ change.
+
+
+
+ vnfMgmtIpAddress (10.0.0.2) represents
+ the IP address of the management interface of the 128T VNF.
+ Changing this value requires an update to the 128T configuration
+ to match the new IP address.
+
+
+
+
+ Instantiating the VNFs:
+
+ Instantiate the 128T VNF by selecting the trgt device, then
+ VNF -> Instances -> Add.
+
+ Fill in the required fields with the following values:
+
+
+
+
+ To procure the VNF image files and their licenses, please
+ contact each respective VNF provider.
+
+
+
+
+ Testing the Use-case
+
+ In order to access the web interface of the 128T VNF, open a
+ browser from a machine connected on the same network with the WAN port
+ of the trgt uCPE device and browse to:
+ https://<public_trgt_WAN_IP>:60001. Log in
+ using the following credentials:
+
+
+
+ Username: admin
+
+
+
+ Password: 128Tadmin
+
+
+
+ In order to validate the data path, connect a test machine to the
+ LAN physical port, assign the static IP and a route:> ifconfig eth3 192.168.64.3 netmask 255.255.255.0
+> ip route add default via 192.168.64.1 dev eth3
+> ping 8.8.8.8
+
+
+
+ Use-case Clean-up
+
+ In order to remove the setup created previously all components
+ need to be deleted in reverse order:
+
+
+
+ Select the trgt uCPE device -> VNF -> Instances ->
+ 128T -> Delete.
+
+
+
+ Select the trgt uCPE device -> Configuration ->
+ OpenVSwitch -> Bridges. Select all bridges -> Delete.
+
+
+
+ Select the trgt uCPE device -> Configuration -> External
+ Interfaces -> Configuration. Select all interfaces ->
+ Delete.
+
+
+
+ VNF -> Descriptors, select all bundles ->
+ Offboard.
+
+
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/doc/appendix_1.xml b/doc/book-enea-edge-example-usecases/doc/appendix_1.xml
new file mode 100644
index 0000000..df262af
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/appendix_1.xml
@@ -0,0 +1,63 @@
+
+
+ How to create a 128T cloud-init iso image (day-0
+ configuration)
+
+ Prerequisites:
+
+ Development host with Linux shell.
+
+
+
+ genisoimage tool installed.
+
+
+
+ Unpack the 128T/128t-cloud-init-example.tar.gz
+ archive and check the README file for more details:
+
+ >tar -zxf 128t-cloud-init-example.tar.gz
+>cd 128T/cloud-init-example/
+>ls ./
+README
+user-data
+meta-data
+t128-running.xml
+
+ To generate the cloud-init iso image:
+
+ >genisoimage -output centos_128t_ci.iso -volid cidata -joliet \
+-rock user-data meta-data t128-running.xml
+
+ Notes:
+
+ user-data and meta-data
+ files must be kept unchanged.
+
+
+
+ To update the 128T configuration change the
+ t128-runing.xml file.
+
+
+
+ XML is the same file downloaded from 128T web access:
+ configuration -> Import and Export Configuration ->
+ Export Configuration -> Download Configuration. The
+ configuration can be updated from a web interface, downloaded onto the
+ development host and used in generating a new cloud-init iso
+ image.
+
+
+
+ By default, t128-running.xml is configured to pass
+ all traffic from the LAN to the WAN interface. There is only one change
+ required for the 128T VNF to work on the user's network:
+
+ <rt:next-hop>172.24.15.254</rt:next-hop>
+
+ Please change <172.24.15.254> with the IP address of your
+ Gateway in the t128-running.xml file and generate a new
+ iso image as described above. For more details about configuring the 128T
+ VNF please contact 128 Technologies.
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/doc/appendix_2.xml b/doc/book-enea-edge-example-usecases/doc/appendix_2.xml
new file mode 100644
index 0000000..2458d99
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/appendix_2.xml
@@ -0,0 +1,326 @@
+
+
+ How to create the 128T image for NFV Access
+
+ The following steps were used by Enea to generate the 128T qcow2 image
+ used as the VNF image on NFV Access.
+
+
+ Keep in mind a Virtual Machine was used instead of a physical
+ host.
+
+
+ Prerequisites:
+
+ 128T-3.2.7-1.el7.centos.x86_64.iso provided
+ by 128 Technologies.
+
+
+
+ A Linux development host with internet access.
+
+
+
+ A least one of the TAP interfaces connected to a bridge with
+ Internet access.
+
+ How to create the 128T image for NFV
+ Access:
+
+ >qemu-img create -f qcow2 128t.qcow2 128G
+>qemu-system-x86_64 -enable-kvm -m 8G -cpu host -smp cores=3,sockets=1 \
+-M q35 -nographic bios /usr/share/qemu/bios.bin -boot order=d,menu=on \
+cdrom 128T-3.2.7-1.el7.centos.x86_64.iso \
+hdb 128t.qcow2 \
+device e1000,netdev=net1,mac=52:52:01:02:03:01 \
+netdev tap,id=net1,ifname=tap1,script=no,downscript=no
+
+
+
+ Press the <ENTER> key to begin the installation
+ process.
+
+
+
+ Wait for the distribution and the 128T to install:
+
+ ------------------------------
+128T Packages Installed
+
+Please Remove Install Media,
+
+then enter <Yes> to reboot and
+continue install process
+
+ <Yes> <No>
+------------------------------
+
+ Press Yes.
+
+
+
+ Wait to reboot and press CTR+ a+c to enter
+ the qemu monitor:
+
+ (qemu) quit
+
+
+
+ Start qemu only with the qcow2 image attached, no installer
+ image required:
+
+ >qemu-system-x86_64 -enable-kvm -m 8G -cpu host -smp cores=3,sockets=1 \
+-M q35 -nographic bios /usr/share/qemu/bios.bin \
+-boot order=c,menu=on \
+-hda 128t.qcow2 \
+-device e1000,netdev=net1,mac=52:52:01:02:03:01 \
+-netdev tap,id=net1,ifname=tap1,script=no,downscript=no
+
+------------------------------------------------------------------------------
+Booting from Hard Disk...
+.
+
+ * CentOS Linux (3.10.0-514.2.2.el7.x86_64) 7 (Core)
+ CentOS Linux (0-rescue-4e73a369e89e466a888c9c77655a1d65) 7 (Core)
+
+
+ Use the ^ and v keys to change the selection.
+ Press 'e' to edit the selected item, or 'c' for a command prompt.
+------------------------------------------------------------------------------
+
+ Select the first option.
+
+
+
+ |-------------------128T Installer-------------------|
+| |
+| Configure Linux Networking |
+| |
+| Before 128T SetUp? |
+| |
+| |
+| < Yes > < No > |
+|----------------------------------------------------|
+
+ Select NO.
+
+
+
+ |----------------------------------------------------|
+| Please select a role for this node: |
+| |----------------------------------------------| |
+| | (*) Router | |
+| | ( ) Conductor | |
+| |----------------------------------------------| |
+| |
+|----------------------------------------------------|
+| < OK > < Back > |
+|----------------------------------------------------|Select
+ Router and OK.
+
+
+
+ |-------------------Conductor Info-------------------|
+| |
+| |----------------------------------------------| |
+| |1st Conductor Address | |
+| |Conductor Address | |
+| |----------------------------------------------| |
+| |
+|----------------------------------------------------|
+| < OK > < Skip > < Back > < Help > |
+|----------------------------------------------------|
+
+ Select SKIP.
+
+
+
+ |----------------------HA Setup----------------------|
+| What kind of Router node is this? |
+| |----------------------------------------------| |
+| |(*) Standalone No HA peer | |
+| |( ) 1st HA Node HA peer is not set up | |
+| |( ) 2nd HA Node HA peer is already set up | |
+| |----------------------------------------------| |
+| |
+| |
+|----------------------------------------------------|
+| < OK > < Back > |
+|----------------------------------------------------|Select
+ Standalone and OK.
+
+
+
+ |---------------------Node Info----------------------|
+| |----------------------------------------------| |
+| | Node Role Router | |
+| | Node Name 128tNode | |
+| | Router Name 128tRouter | |
+| |----------------------------------------------| |
+| |
+|----------------------------------------------------|
+| < OK > < Advanced > < Back > < Help > |
+|----------------------------------------------------|
+
+ Enter a name for the router and node, press OK.
+
+
+
+ |-------------------Password Setup-------------------|
+| Enter the new password for the 128T 'admin' |
+| user: |
+| |----------------------------------------------| |
+| | 128Tadmin | |
+| |----------------------------------------------| |
+| | |
+|----------------------------------------------------|
+| < OK > < Back > |
+|----------------------------------------------------|
+
+ Enter the password for web access: 128Tadmin
+ and confirm the password.
+
+
+
+ |--------------------------Anonymous Data Collection--------------------------|
+| The 128T Networking Platform comes packaged with a software process |
+|("Roadrunner") that is used to proactively monitor the health and liveliness |
+|of the 128T Router and associated components. This watchdog process collects |
+|anonymous information from the router and sends it to 128 Technology for |
+|storage and analysis. This information helps inform 128 Technology about |
+|software usage, to aid in the support and improvement of the 128 Technology |
+|Networking Platform. |
+| |
+|Disabling this feature will prevent the sending of anonymous usage data to |
+|128 Technology. |
+| |
+| |
+| < Accept > < Back > < Disable > |
+|-----------------------------------------------------------------------------|
+
+ Select Accept.
+
+
+
+ |-----128T Statistics Table Creator-----|
+| Created table for metric 760/827 |
+| Created table for metric 770/827 |
+| Created table for metric 780/827 |
+| Created table for metric 790/827 |
+| Created table for metric 800/827 |
+| Created table for metric 810/827 |
+| Created table for metric 820/827 |
+| Finished pre-creating stats tables |
+| Creating tables for audit events |
+| Finished creating audit event tables |
+| Completed in 27.001386642456055 s |
+| Shutting down local Cassandra node |
+|---------------------------------------|
+| < OK > |
+|---------------------------------------|
+
+ Select OK.
+
+
+
+ |--------128T Installer Status----------|
+| |
+| Install SUCCESS |
+| |
+| Start 128T Router |
+| before proceeding to |
+| login prompt? |
+|---------------------------------------|
+| < Yes > < No > |
+|---------------------------------------|
+
+ Select: Yes
+
+
+
+ localhost login: root
+Password:
+
+ The following user accounts and passwords are created during the
+ ISO installation process:
+
+
+
+
+
+ GUI login via HTTPS is enabled by default on port 443
+
+ [root@localhost ~]# dhclient enp0s2
+[root@localhost ~]# echo "nameserver 8.8.8.8" >>/etc/resolv.conf
+[root@localhost ~]# yum -y install cloud-init
+[root@localhost ~]# reboot
+
+
+
+ Wait to reboot and press CTR+ a+c to enter in qemu
+ monitor.
+
+ (qemu) quit
+> qemu-img info 128t.qcow2
+image: 128t.qcow2
+file format: qcow2
+virtual size: 128G (137438953472 bytes)
+disk size: 5.4G
+cluster_size: 65536
+Format specific information:
+ compat: 1.1
+ lazy refcounts: false
+ refcount bits: 16
+ corrupt: false
+
+
+
+ Compress the generated 128t.qcow2 image to
+ decrease the size of VNF image:
+
+ qemu-img convert -O qcow2 -c 128t.qcow2 centos_128t_compressed.qcow2
+
+> qemu-img info centos_128t_compressed.qcow2
+image: centos_128t_compressed.qcow2
+file format: qcow2
+virtual size: 128G (137438953472 bytes)
+disk size: 1.2G
+cluster_size: 65536
+Format specific information:
+ compat: 1.1
+ lazy refcounts: false
+ refcount bits: 16
+ corrupt: false
+
+centos_128t_compressed.qcow2 - Resulted image can be used in NFV Access.
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/doc/appendix_3.xml b/doc/book-enea-edge-example-usecases/doc/appendix_3.xml
new file mode 100644
index 0000000..e8bd5ce
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/appendix_3.xml
@@ -0,0 +1,7 @@
+
+
+ How to configure Fortigate VNF (day-0 configuration)
+
+ Please check the README file from Fortigate folder for more
+ details.
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/doc/appendix_4.xml b/doc/book-enea-edge-example-usecases/doc/appendix_4.xml
new file mode 100644
index 0000000..0e207ae
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/appendix_4.xml
@@ -0,0 +1,103 @@
+
+
+ Running Enea Automation Framework and Test Harness
+
+ For more detailed information regarding the Automation Framework and
+ Test Harness please see the .
+
+ The most relevant information from the Automation Framework and Test
+ Harness structure is presented below:
+
+ |---automation_framework
+| |---unittestSuite
+| | |---128tCleanup.json - Use case 1 - clean up - test.
+| | |---128tDeploy.json - Use case 1 - test.
+| | |---128t_FG_SFCCleanup.json - Use case 2 - clean up - test.
+| | |---128t_FG_SFCDeploy.json - Use case 2 - test.
+| | |---config
+| | | |---cust
+ - Folder containing the configuration files used by tests.
+| | |---unittestLoader.py
+| | |---unittestSuite.py
+|---lab_config
+| |---trgt-1
+| | |---ibm_br.json - In-band management definition.
+| | |---lan_br.json - Lan bridge definition.
+| | |---target.json
+ - Target definition - the "address", "deviceId", "name" and \
+ "version" must be updated.
+| | |---sfc_br.json - Service chain bridge definition.
+| | |---vnf_mgmt_br.json - VNF management bridge definition.
+| | |---lan_nic.json - NIC definition.
+|---vnf_config
+| |---128t
+| | |---128tInstance.json - 128T instantiation - used in use case 1.
+| | |---128t.json - 128T onboarding.
+| | |---128tSFCInstance.json - 128T instantiation - used in use case 2.
+| | |---centos_128t_internet_ci.iso - 128T cloud init (day-0) iso image.
+| |---fortigate
+| | |---fg_basic_fw.conf - Fortigate day-0 configuration.
+| | |---fortigateInstance.json - Fortigate instantiantion.
+| | |---fortigate.json - Fortigate onboarding.
+| | |---fortigateLicense.lic
+ - Fortigate license - contact Fortinet to get a VNF image and license file.
+|---vnf_image
+| |---centos_128t_with_ci.qcow2 - Contact 128 Technology to get a \
+ VNF image and its license file.
+| |---fortios.qcow2 - Contact Fortinet to get a VNF image \
+ and its license file.
+
+ Make sure to update the relevant configuration file for your setup.
+ The essential files to consider are the uCPE Device configuration
+ (target.json), the license for the Fortigate VNF, and
+ the 128T cloud-init iso image matching your network.
+
+ For uCPE Device configuration (target.json)
+ please change the following information, if needed, in the JSON file:
+
+
+
+ address - The IP address of uCPE Device.
+
+
+
+ version - The NFVA version.
+
+
+
+ deviceId - The device ID of uCPE Device.
+
+
+
+ name - The name of uCPE Device.
+
+
+
+
+ Before starting the two usecases detailed in the following appendix,
+ the uCPE Device needs to be added into Enea Edge Management.
+
+
+ To properly set up the Automation Framework and Test Harness please
+ see Installation and Initial Setup in the
+ for more details.
+
+ To run a test:
+
+ > cd automation_framework/unittestSuite/
+> python unittestSuite.py -u admin -p admin -H <uCPEManager IP address> -n \
+<uCPE Device name> -s <Test suite> -d <description>
+
+ The Test suite must be one from any of the
+ following: 128tDeploy.json,
+ 128tCleanup.json,
+ 128t_FG_SFCDeploy.json, or
+ 128t_FG_SFCCleanup.json.
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/doc/appendix_5.xml b/doc/book-enea-edge-example-usecases/doc/appendix_5.xml
new file mode 100644
index 0000000..67f38e5
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/appendix_5.xml
@@ -0,0 +1,243 @@
+
+
+ Example Tests Results using the Automation Framework and Test Harness
+
+ In order to run the following example usecases, certain configuration
+ file entries need to be modified according to the network setup that it will
+ be used, for more details see the previous appendix:
+
+
+
+ uCPE Device name: inteld1521-17
+
+
+
+ address: 172.24.8.62
+
+
+
+ version: 2.2.3
+
+
+
+ deviceId: inteld1521-17
+
+
+
+ > cat lab_config/trgt-1/target.json
+{
+ "name": "inteld1521-17",
+ "deviceGroupingTags": " ",
+ "description": "trgt",
+ "address": "172.24.8.62",
+ "port": "830",
+ "username": "root",
+ "password": "",
+ "certificate": null,
+ "passphrase": null,
+ "callHome": "false",
+ "maintMode": "false",
+ "version": "2.2.3",
+ "deviceId": "inteld1521-17"
+}The IP address of Enea Edge Management that will be used in
+ these examples is 172.24.3.92.
+
+ The FortiGate and 128T VNF images need to be copied into the
+ vnf_image directory. The names should be the same as
+ those described in the previous appendix.
+
+ The FortiGate valid license file needs to be copied into the
+ vnf_config/fortigate/ directory. The name should be the
+ same as that described in the previous appendix.
+
+ The cloud init files that match the network, need to be copied into
+ the vnf_config/fortigate/ and the
+ vnf_config/128t/ directories respectively. The names
+ should be the same as those described in the previous appendix.
+
+
+ Use-case 1: 128T VNF Router Example Use-case
+
+ > cd automation_framework/unittestSuite/
+> python unittestSuite.py -u admin -p admin -H 172.24.3.92 -n inteld1521-17 \
+-s 128tDeploy.json -d "128T Deployment"
+
+Running 128T Deployment...
+
+test 001: Wait VCPE Agent device be up (__main__.UnittestSuite) ...
+2020-08-26 10:10:05,517 - INFO: Wait uCPE device
+2020-08-26 10:10:36,650 - INFO: Status: Connected
+2020-08-26 10:10:36,651 - INFO: Done
+ok
+test 002: Bind NIC to DPDK for LAN connection (__main__.UnittestSuite) ...
+2020-08-26 10:10:36,686 - INFO: Bind NIC
+2020-08-26 10:10:37,788 - INFO: Done
+ok
+test 003: Creating ibm bridge (__main__.UnittestSuite) ...
+2020-08-26 10:10:37,818 - INFO: New OVS network bridge
+2020-08-26 10:10:58,762 - INFO: Done
+ok
+test 004: Creating VNF Management bridge (__main__.UnittestSuite) ...
+2020-08-26 10:10:58,794 - INFO: New OVS network bridge
+2020-08-26 10:10:58,977 - INFO: Done
+ok
+test 005: Creating LAN bridge and attaching lan interface to the bridge \
+(__main__.UnittestSuite) ...
+2020-08-26 10:10:59,003 - INFO: New OVS network bridge
+2020-08-26 10:10:59,334 - INFO: Done
+ok
+test 006: Onboarding 128T VNF (wizard API) (__main__.UnittestSuite) ...
+2020-08-26 10:10:59,370 - INFO: Onboard wizard
+2020-08-26 10:13:55,775 - INFO: Done
+ok
+test 007: Instantiate 128T VNF (__main__.UnittestSuite) ...
+2020-08-26 10:13:55,813 - INFO: Instantiate VNF
+2020-08-26 10:14:56,583 - INFO: Done
+ok
+
+----------------------------------------------------------------------
+Ran 7 tests in 291.103s
+
+OK
+
+> python unittestSuite.py -u admin -p admin -H 172.24.3.92 -n inteld1521-17 \
+-s 128tCleanup.json -d "128T Cleanup"
+
+Running 128T Cleanup...
+
+test 001: Destroying 128T VNF (__main__.UnittestSuite) ...
+2020-08-26 10:15:28,395 - INFO: Destroy VNF
+2020-08-26 10:15:29,452 - INFO: Done
+ok
+test 002: Deleting network bridge LAN (__main__.UnittestSuite) ...
+2020-08-26 10:15:29,493 - INFO: Delete OVS network bridge
+2020-08-26 10:15:29,734 - INFO: Done
+ok
+test 003: Deleting VNF management bridge (__main__.UnittestSuite) ...
+2020-08-26 10:15:29,765 - INFO: Delete OVS network bridge
+2020-08-26 10:15:30,080 - INFO: Done
+ok
+test 004: Deleting ibm(In Band Management) bridge (__main__.UnittestSuite) ...
+2020-08-26 10:15:30,110 - INFO: Delete OVS network bridge
+2020-08-26 10:15:46,907 - INFO: Done
+ok
+test 005: Unbind LAN NIC from DPDK target (__main__.UnittestSuite) ...
+2020-08-26 10:15:46,967 - INFO: Unbind NIC
+2020-08-26 10:15:48,489 - INFO: Done
+ok
+test 006: Offboarding 128t VNF (__main__.UnittestSuite) ...
+2020-08-26 10:15:48,531 - INFO: Offboard VNF
+2020-08-26 10:15:49,171 - INFO: Done
+ok
+
+----------------------------------------------------------------------
+Ran 6 tests in 20.808s
+
+OK
+
+
+
+ Use-case 2: Service Chaining 128T - Fortigate Example
+ Use-case
+
+ > python unittestSuite.py -u admin -p admin -H 172.24.3.92 -n inteld1521-17 \
+-s 128t_FG_SFCDeploy.json -d "128T - Fortigate SFC Deployment"
+
+Running 128T - Fortigate SFC Deployment...
+
+test 001: Wait VCPE Agent device be up (__main__.UnittestSuite) ...
+2020-08-26 10:17:29,361 - INFO: Wait uCPE device
+2020-08-26 10:18:00,473 - INFO: Status: Connected
+2020-08-26 10:18:00,474 - INFO: Done
+ok
+test 002: Bind NIC to DPDK for LAN connection (__main__.UnittestSuite) ...
+2020-08-26 10:18:00,634 - INFO: Bind NIC
+2020-08-26 10:18:01,805 - INFO: Done
+ok
+test 003: Creating ibm bridge (__main__.UnittestSuite) ...
+2020-08-26 10:18:01,863 - INFO: New OVS network bridge
+2020-08-26 10:18:30,640 - INFO: Done
+ok
+test 004: Creating VNF Management bridge (__main__.UnittestSuite) ...
+2020-08-26 10:18:30,670 - INFO: New OVS network bridge
+2020-08-26 10:18:30,876 - INFO: Done
+ok
+test 005: Creating LAN bridge and attaching lan interface to the bridge \
+(__main__.UnittestSuite) ...
+2020-08-26 10:18:30,908 - INFO: New OVS network bridge
+2020-08-26 10:18:31,243 - INFO: Done
+ok
+test 006: Creating SFC(service function chaining) bridge (__main__.UnittestSuite) ...
+2020-08-26 10:18:31,273 - INFO: New OVS network bridge
+2020-08-26 10:18:31,416 - INFO: Done
+ok
+test 007: Onboarding 128T VNF (wizard API) (__main__.UnittestSuite) ...
+2020-08-26 10:18:31,448 - INFO: Onboard wizard
+2020-08-26 10:21:21,569 - INFO: Done
+ok
+test 008: Onboarding Fortigate VNF (wizard API) (__main__.UnittestSuite) ...
+2020-08-26 10:21:21,608 - INFO: Onboard wizard
+2020-08-26 10:21:27,199 - INFO: Done
+ok
+test 009: Instantiate 128T VNF (__main__.UnittestSuite) ...
+2020-08-26 10:21:27,226 - INFO: Instantiate VNF
+2020-08-26 10:22:27,067 - INFO: Done
+ok
+test 010: Instantiate Fortigate VNF (__main__.UnittestSuite) ...
+2020-08-26 10:22:27,121 - INFO: Instantiate VNF
+2020-08-26 10:22:31,310 - INFO: Done
+ok
+
+----------------------------------------------------------------------
+Ran 10 tests in 301.989s
+
+OK
+
+> python unittestSuite.py -u admin -p admin -H 172.24.3.92 -n inteld1521-17 \
+-s 128t_FG_SFCCleanup.json -d "128T - Fortigate SFC Cleanup"
+
+Running 128T - Fortigate SFC Cleanup...
+
+test 001: Destroying Fortigate VNF (__main__.UnittestSuite) ...
+2020-08-26 10:23:29,308 - INFO: Destroy VNF
+2020-08-26 10:23:30,026 - INFO: Done
+ok
+test 002: Destroying 128T VNF (__main__.UnittestSuite) ...
+2020-08-26 10:23:30,065 - INFO: Destroy VNF
+2020-08-26 10:23:30,917 - INFO: Done
+ok
+test 003: Deleting network bridge SFC (__main__.UnittestSuite) ...
+2020-08-26 10:23:30,960 - INFO: Delete OVS network bridge
+2020-08-26 10:23:31,123 - INFO: Done
+ok
+test 004: Deleting network bridge LAN (__main__.UnittestSuite) ...
+2020-08-26 10:23:31,156 - INFO: Delete OVS network bridge
+2020-08-26 10:23:31,381 - INFO: Done
+ok
+test 005: Deleting VNF management bridge (__main__.UnittestSuite) ...
+2020-08-26 10:23:31,412 - INFO: Delete OVS network bridge
+2020-08-26 10:23:31,596 - INFO: Done
+ok
+test 006: Deleting ibm(In Band Management) bridge (__main__.UnittestSuite) ...
+2020-08-26 10:23:31,621 - INFO: Delete OVS network bridge
+2020-08-26 10:23:47,980 - INFO: Done
+ok
+test 007: Unbind LAN NIC from DPDK target (__main__.UnittestSuite) ...
+2020-08-26 10:23:48,019 - INFO: Unbind NIC
+2020-08-26 10:23:49,547 - INFO: Done
+ok
+test 008: Offboarding 128t VNF (__main__.UnittestSuite) ...
+2020-08-26 10:23:49,575 - INFO: Offboard VNF
+2020-08-26 10:23:50,252 - INFO: Done
+ok
+test 009: Offboarding Fortigate VNF (__main__.UnittestSuite) ...
+2020-08-26 10:23:50,295 - INFO: Offboard VNF
+2020-08-26 10:23:50,589 - INFO: Done
+ok
+
+----------------------------------------------------------------------
+Ran 9 tests in 21.326s
+
+OK
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/doc/book.xml b/doc/book-enea-edge-example-usecases/doc/book.xml
new file mode 100644
index 0000000..2ffbefe
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/book.xml
@@ -0,0 +1,44 @@
+
+
+]>
+
+ Enea Edge Example Use-cases
+
+ Release Version
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/book-enea-edge-example-usecases/doc/clav_vnf_examples.xml b/doc/book-enea-edge-example-usecases/doc/clav_vnf_examples.xml
new file mode 100644
index 0000000..8895c23
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/clav_vnf_examples.xml
@@ -0,0 +1,396 @@
+
+
+ Clavister VNF Example Use-cases
+
+ The Clavister VNF is a telco-ready, carrier-grade virtual next
+ generation firewall.
+
+
+ Clavister VNF using an Open vSwitch Bridge
+
+ In this use-case, uCPE device 1 runs the Clavister VNF, while uCPE
+ device 2 runs two Enea Test VNFs with iPerf client and server
+ applications. The uCPE devices are connected using OVS-DPDK
+ bridges.
+
+
+ Prerequisites
+
+ Two uCPE devices will be required for this setup. The system
+ requirements for each uCPE device are:
+
+
+
+ 1 Network Interface
+
+
+
+ 2 GB of RAM memory
+
+
+
+ The following files are needed for this example use-case:
+
+
+
+ Enea Test VNF image. Please contact Enea to get this image.
+
+
+
+ Clavister VNF image. Please contact Clavister to get this
+ image.
+
+
+ VNF Configuration files. These files are provided with your Enea
+ Edge release:
+
+
+ clavister-cloudinit.conf.
+ enea-vnf-iperf-client.conf.
+ enea-vnf-iperf-server.conf.
+
+
+
+
+
+
+ Use-case Setup
+
+ In this use-case, uCPE device 1 runs the Clavister VNF, while uCPE
+ device 2 runs two Enea Test VNFs with iPerf client and server
+ applications. The uCPE devices are connected using OVS-DPDK
+ bridges.
+
+
+ Clavister VNF using an Open vSwitch bridge
+
+
+
+
+
+
+
+
+
+ When connecting, the uCPE devices can use a back-to-back or a VPN connection.
+ An appropriate interface with the required capabilities needs to be chosen for
+ this purpose.
+
+
+ Network Configuration:
+
+
+
+ Select uCPE device 1, access Configuration,
+ add the network interface that will be used and configure it for
+ DPDK.
+
+
+
+ Create an OVS bridge and attach the DPDK network
+ interface.
+
+
+
+ Repeat the steps above for uCPE device 2.
+
+
+
+ Onboarding the VNFs:
+
+
+
+ Onboard the Clavister VNF by filling the required fields with
+ the following values:
+
+
+
+ VM Image File: Provide
+ the path to the Clavister VNF qcow2 image
+
+
+
+ Memory in MB: 1024
+
+
+
+ Num of CPUs: 4
+
+
+
+ Storage in GB: 20
+
+
+
+ Interfaces: Add 2
+ interfaces
+
+
+
+ Cloud-init Datasource:
+ ConfigDrive
+
+
+
+ Cloud-init Disk Type:
+ disk
+
+
+
+
+
+ Onboard the Enea Test VNF by filling the required fields with
+ the following values:
+
+ VM Image File: Provide
+ the path to the Enea Test VNF qcow2 image
+
+
+
+ Memory in MB:
+ 2048
+
+
+
+ Num of CPUs: 2
+
+
+
+ Storage in GB:
+ 10
+
+
+
+ Interfaces: Add 1
+ interface
+
+
+
+ Cloud-init Datasource:
+ NoCloud
+
+
+
+ Cloud-init Disk Type:
+ disk
+
+
+
+
+
+ Instantiating the VNFs:
+
+
+
+ Instantiate the Clavister VNF on uCPE device 1 using the
+ required fields below:
+
+
+
+ Name: clavister
+
+
+
+ VNF Type: Select
+ Clavister VNF
+
+
+
+ uCPE Device: Select
+ uCPE device 1
+
+
+
+ Cloud Init File:
+ Provide the path to the Clavister cloud-init file.
+
+
+
+ Interfaces: Set the
+ interface type to DPDK and select the OVS
+ bridge created above, for both interfaces.
+
+
+
+
+
+ Instantiate the Enea iPerf server VNF on uCPE device 2 by
+ filling the required fields with the values below:
+
+
+
+ Name:
+ iperf_server
+
+
+
+ VNF Type: Select Enea
+ Test VNF
+
+
+
+ uCPE Device: Select
+ uCPE device 2
+
+
+
+ Cloud Init File:
+ Provide the path to the Enea VNF IPerf server cloud-init
+ file.
+
+
+
+ Interfaces: Set the
+ interface type to DPDK and select the OVS
+ bridge created above.
+
+
+
+
+
+ Instantiate the Enea iPerf client VNF on uCPE device 2 by
+ filling the required fields with the values below:
+
+
+
+ Name:
+ iperf_client
+
+
+
+ VNF Type: Select Enea
+ Test VNF
+
+
+
+ uCPE Device: Select
+ uCPE device 2
+
+
+
+ Cloud Init File:
+ Provide the path to the Enea VNF iPerf client cloud-init
+ file.
+
+
+
+ Interfaces: Set the
+ interface type to DPDK and select the OVS
+ bridge created above.
+
+
+
+
+
+
+
+ Testing the Use-case
+
+ SSH to uCPE device 2 (Username: root) and connect to the IPerf
+ client VNF console:
+
+ virsh list
+virsh console <id of iperf client>
+
+ In order to check that traffic is forwarded between the VNFs, run
+ the following:
+
+ # qemux86-64 login: root
+root@qemux86-64:~# iperf3 -c 192.168.10.10
+
+
+
+
+ Clavister VNF using SR-IOV
+
+
+ Prerequisites
+
+ Two uCPE devices will be required for this setup. The system
+ requirements for each uCPE device are:
+
+
+
+ 1 Network Interface
+
+
+
+ 2 GB of RAM memory
+
+
+
+ The following files are needed for this example use-case:
+
+
+
+ Enea Test VNF image. Please contact Enea to get this image.
+
+
+
+ Clavister VNF image. Please contact Clavister to get this
+ image.
+
+
+ VNF Configuration files. These files are provided with your Enea
+ Edge release:
+
+ clavister-cloudinit.conf.
+ enea-vnf-iperf-client.conf.
+ enea-vnf-iperf-server.conf.
+
+
+
+
+
+
+ Use-case Setup
+
+ The following use-case is essentially the same as the one detailed
+ above, in this scenario however, the uCPE devices are connected using
+ SR-IOV, with two virtual functions.
+
+
+ Clavister VNF using SR-IOV
+
+
+
+
+
+
+
+
+ Network Configuration:
+
+
+
+ Select uCPE device 1, access Configuration,
+ add the network interface that will be used and configure it for
+ SR-IOV. For sriov-mode select adapter-pool and for
+ sriov-num-vfs select "2".
+
+
+
+ Repeat the step above for uCPE device 2.
+
+
+
+ Onboarding the VNFs:
+
+ See the onboarding parameters in the use-case above.
+
+ Instantiating the VNFs:
+
+ Use the same instantiation parameters as above, but select
+ interface type SrIovAdapterPool instead.
+
+
+
+ Testing the Use-case
+
+ Use the same test instructions as detailed in the use-case
+ above.
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/doc/enea_test_vnf_examples.xml b/doc/book-enea-edge-example-usecases/doc/enea_test_vnf_examples.xml
new file mode 100644
index 0000000..bee5a63
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/enea_test_vnf_examples.xml
@@ -0,0 +1,308 @@
+
+
+ Enea Test VNF Example Use-cases
+
+ The Enea Test VNF is a simple Enea Linux based VM, which can be used
+ for various testing purposes, by using basic DPDK applications (e.g.
+ testpmd) as well as non-DPDK tools (e.g. iPerf3). For more information about
+ the Testpmd application please see the Testpmd Application User
+ Guide.
+
+
+ Prerequisites
+
+ Two uCPE devices will be required for this setup. The system
+ requirements for each uCPE device are:
+
+
+
+ 2 Network Interfaces. One for Enea Edge Management and one for data
+ traffic.
+
+
+
+ 2 GB of RAM memory
+
+
+
+ The following files are needed for this example use case:
+
+
+
+ VNF image: Enea Test VNF. Please contact Enea to get this
+ image.
+
+
+ VNF Configuration files. These files are provided with your Enea
+ Edge release:
+
+
+ enea-vnf-testpmd-fwd.conf.
+
+
+
+ enea-vnf-testpmd-term.conf.
+
+
+
+
+
+ TestPMD VNF
+
+ In this use-case, uCPE device 1 runs the pktgen DPDK application to
+ generate traffic and uCPE device 2 runs two Enea Test VNFs. One VNF runs
+ the TestPMD DPDK application forwarding traffic, and the other runs the
+ TestPMD in order to terminate traffic.
+
+
+ TestPMD VNF Overview
+
+
+
+
+
+
+
+
+
+ Use-case Setup
+
+ Network Configuration:
+
+
+
+ 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 uCPE device 2, access Configuration,
+ add the network interface that will be used and configure it for
+ DPDK.
+
+
+
+ Create an OVS bridge on uCPE device 2 and attach the DPDK
+ interface.
+
+
+
+ Onboarding the VNF:
+
+ Onboard the Enea Test VNF by filling the required fields with the
+ following values:
+
+
+
+ VM Image File: Provide the
+ path to the Enea Test VNF qcow2 image.
+
+
+
+ Memory in MB: 2048
+
+
+
+ Num of CPUs: 2
+
+
+
+ Storage in GB: 10
+
+
+
+ Interfaces: Add 1
+ interface.
+
+
+
+ Cloud-init Datasource:
+ NoCloud
+
+
+
+ Cloud-init Disk Type:
+ disk
+
+
+
+ Instantiating the VNFs:
+
+
+
+ Instantiate the Enea Edge TestPMD forwarding VNF on uCPE
+ Device 2 by filling the required fields with the following
+ values:
+
+
+
+ Name: testpmd_fwd
+
+
+
+ VNF Type: Select Enea
+ Test VNF.
+
+
+
+ uCPE Device: Select uCPE
+ device 2.
+
+
+
+ Cloud Init File: Provide
+ the path to the Enea VNF TestPMD forwarding cloud-init
+ file.
+
+
+
+ Interfaces: Set the
+ interface type to DPDK and select the OVS
+ bridge created above.
+
+
+
+
+
+ Instantiate the Enea Edge TestPMD termination VNF on
+ uCPE Device 2 by filling the required fields with the following
+ values:
+
+
+
+ Name: testpmd_term
+
+
+
+ VNF Type: Select Enea
+ Test VNF.
+
+
+
+ uCPE Device: Select uCPE
+ device 2.
+
+
+
+ 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.
+
+
+
+
+
+ Creating OVS flow rules:
+
+ Select uCPE device 2, access Configuration,
+ open the OVS bridge and add two flow rules:
+
+
+
+ Source: DPDK interface, Target:
+ testpmd_fwd.
+
+
+
+ Source: testpmd_fwd, Target:
+ testpmd_term.
+
+
+ The flow rules can be described using either the Enea Edge
+ Management interface or the configuration files.
+
+
+
+
+
+
+ Testing the Use-case
+
+
+
+ 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.
+
+
+
+
+ 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
+
+
+
+
+
+ TestPMD VNF using PCI passthrough
+
+ In this use case, uCPE device 1 will run the Pktgen and uCPE
+ device 2 will run the TestPMD VNF. Both will be using PCI
+ passthrough:
+
+
+
+ Make sure that neither uCPE device 1 nor uCPE device 2 have
+ any configured host interfaces by selcting uCPE device :
+ Configuration ->
+ OpenVSwitch -> Host
+ Interfaces.
+
+
+
+ On uCPE device 1 start the Pktgen VNF. Select
+ PciPassthrough as the Interface type.
+
+ From the drop-down list, select the PCI interface
+ corresponding to the NIC which is connected to uCPE device 2:
+
+
+
+ On uCPE device 2, start the TestPmdForwarder VNF. Select
+ "PciPassthrough" as the Interface type. From the drop-down list,
+ select the PCI interface corresponding to the NIC which is connected
+ to uCPE device 1:
+
+
+
+ To check that traffic is being forwarded from uCPE device 2,
+ SSH to the uCPE device and connect to the VNFs console:
+
+ Right click on uCPE device 2 and select SSH.
+Run: virsh list
+Run: virsh console [VM NAME]
+Run: tail -f /opt/testpmd-out
+
+
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/doc/forti_vnf_examples.xml b/doc/book-enea-edge-example-usecases/doc/forti_vnf_examples.xml
new file mode 100644
index 0000000..bb38140
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/forti_vnf_examples.xml
@@ -0,0 +1,627 @@
+
+
+ FortiGate VNF Example Use-cases
+
+ FortiGate virtual appliances feature all of the security and
+ networking services common to traditional hardware-based FortiGate
+ appliances. The virtual appliances can be integrated in Firewall or SD-WAN
+ solution development.
+
+
+ FortiGate VNF as a Firewall
+
+ Enea provides an example of a simple basic firewall configuration
+ for the FortiGate VNF. FortiGate In-Band Management is a feature used for
+ running FortiGate Management traffic over WAN.
+
+ Instructions on how to alter the default configuration are provided
+ in section FortiGate VNF Web Management in the
+
+ Manual.
+
+
+ Prerequisites
+
+ System requirements for the uCPE device:
+
+
+
+ 4 x Network Interfaces
+
+
+
+ 4 cores
+
+
+
+ 4 GB of RAM memory
+
+
+
+ The following file(s) are needed for this example use-case:
+
+
+
+ FortiGate VNF image. Please contact Fortinet to get a VNF
+ image and its license file.
+
+
+
+ VNF Configuration file(s), provided with your Enea Edge
+ release: fortigate-basic-fw.conf.
+
+
+
+
+
+ Use-case Setup
+
+
+ Fortigate VNF as a Firewall
+
+
+
+
+
+
+
+
+ Network Configuration:
+
+ Since the firewall uses three External Network Interfaces, three
+ bridges need to be configured. Each bridge provides the ability to
+ connect a physical network interface to the virtual network interface of
+ a VM.
+
+ Setup of the uCPE device:
+
+
+
+ Connect WAN to the Lab Network.
+
+
+
+ Connect LAN1 to the Test Machine.
+
+
+
+ Leave LAN2 unconnected.
+
+
+
+ Connect ETH0 to the Lab Network (for Enea Edge Management
+ communications).
+
+
+
+ Select the uCPE device, access
+ Configuration and bind the three physical network
+ interfaces to DPDK.
+
+
+
+ Create three OVS bridges, one for each DPDK network interface
+ (WAN, LAN1 and LAN2).
+
+ Alternatively, the firewall can be setup to use bridges as
+ connection points for the FortiGate VNF, by replacing the OVS-DPDK
+ bridges with SR-IOV connection points.
+
+ Please note that while previously three physical interfaces
+ were presumed necessary for VNF connection, in the case of a
+ firewall setup only two physical interfaces are required for the
+ data path (one for WAN and one for LAN). Only two interfaces will be
+ configured as DPDK, with two bridges created, one for each type of
+ connection.
+
+
+ At VNF instantiation instead of assigning distinct bridges
+ for each LAN interface, only one will be used for both LAN1 and
+ LAN2, with no changes in WAN interface configuration.
+
+
+
+
+ Onboarding the VNF:
+
+ Onboard the FortiGate VNF by filling the required fields with the
+ following values:
+
+
+
+ VM Image File: Provide the
+ path to the FortiGate VNF qcow2 image.
+
+
+
+ Memory in MB: 1024
+
+
+
+ Num of CPUs: 1
+
+
+
+ Storage in GB: 20
+
+
+
+ Interfaces: Add 3 interfaces
+ (wan, lan1 and lan2).
+
+
+
+ Cloud-init Datasource:
+ ConfigDrive
+
+
+
+ Cloud-init Disk Type:
+ cdrom
+
+
+
+ Cloud-init content file: Add
+ a file entry where Path: license.
+
+
+
+ Instantiating the VNF:
+
+ Instantiate the FortiGate VNF by filling the required fields with
+ the following values:
+
+
+
+ Name: Name of the VM which
+ will be created on the uCPE device.
+
+
+
+ VNF Type: Name of the
+ onboarded VNF.
+
+
+
+ uCPE Device: Select the uCPE
+ device where the VNF will be instantiated.
+
+
+
+ License file: The FortiGate
+ license file provided by Fortinet.
+
+
+
+ Configuration file: The
+ Firewall example configuration file provided by Enea
+ (fortigate-basic-fw.conf).
+
+
+
+ Port1 - WAN: Set the
+ External Interface type to
+ DPDK and connect it to the
+ wan_br ovs bridge.
+
+
+
+ Port2 - LAN1: Set the
+ Incoming Interface type to
+ DPDK and connect it to the
+ lan1_br ovs bridge.
+
+
+
+ Port3 - LAN2: Set the
+ Outgoing Interface type to
+ DPDK and connect it to the
+ lan2_br ovs bridge.
+
+
+ The names of the ports used during instantiation need to be
+ the same as the ones described above, as the same names will be
+ used in the configuration files provided for this example
+ use-case.
+
+
+
+
+
+
+ Testing the Use-case
+
+ Connect the Test Machine on the LAN interface and access the
+ internet from the Test Machine to use the firewall on the uCPE
+ device.
+
+
+ The connected Test Machine can be a laptop or a uCPE device. It
+ must have one interface configured to get a dynamic IP from a DHCP
+ server. The dhclient <interface> command can
+ be used to request an IP address. The received IP must be in the
+ 172.16.1.2 - 172.16.1.255 range.
+
+
+ The FortiGate VNF management interface is accessible through the
+ WAN interface. The WAN IP address can be used from a web browser on the
+ Lab Machine to access the FortiGate VNF Management Web UI. See section
+ FortiGate VNF web management in the
+
+ Manual for more information.
+
+
+
+
+ FortiGate VNF as an SD-WAN or a VPN
+
+ SD-WAN decouples the network from the management plane, detaching
+ traffic management and monitoring functions from hardware. Most forms of
+ SD-WAN technology create a virtual overlay that is transport-agnostic,
+ i.e. it abstracts underlying private or public WAN connections.
+
+ For deployment, the user plugs in WAN links into the device, which
+ automatically configures itself with the network.
+
+ Example SD-WAN configurations for the FortiGate VNF are provided by
+ Enea.
+
+
+ Prerequisites
+
+ Two uCPE devices will be needed for this setup. The system
+ requirements for each uCPE device are:
+
+
+
+ 4 x Network Interfaces
+
+
+
+ 4 cores
+
+
+
+ 4 GB of RAM memory
+
+
+
+ The following files are needed for this example use-case:
+
+
+
+ FortiGate VNF image. Please contact Fortinet to get a VNF
+ image and its license file.
+
+
+
+ VNF Configuration file(s), provided with your Enea Edge
+ release: fortigate-sdwan<x>.conf.
+
+
+
+
+
+ Use-case Setup
+
+
+ Fortigate VNF as an SD-WAN or a VPN
+
+
+
+
+
+
+
+
+
+ When connecting, the uCPE devices can use a back-to-back or a
+ VPN connection. An appropriate interface with the required
+ capabilities needs to be chosen for this purpose.
+
+
+ Network Configuration:
+
+ Since the SD-WAN VNF uses three External Network Interfaces, three
+ bridges need to be configured. Each bridge provides the ability to
+ connect a physical network interface to the VM's virtual network
+ interface.
+
+ Each VNF instance will have a virtual interface for VNF
+ management, for the WAN network and for LAN communication.
+
+ Setup of an Intel Whitebox uCPE
+ device:
+
+
+
+ Connect the VNF Management interfaces to
+ the Lab Network for VNF management access.
+
+
+
+ Connect the WAN interfaces back to back or
+ via VPN.
+
+
+
+ Connect the LAN interfaces to the Test
+ Machine.
+
+
+
+ Connect the ETH0 interfaces to the Lab
+ Network (for Enea Edge Management communications).
+
+
+
+ Select uCPE Device 1, access Configuration
+ and bind the three physical network interfaces to the DPDK.
+
+
+
+ Create three OVS bridges, one for each DPDK network interface
+ (VNF management, WAN and LAN).
+
+
+
+ Repeat the steps above for uCPE device 2.
+
+
+
+ Onboarding the VNF:
+
+ Onboard the FortiGate VNF by filling the required fields with the
+ following values:
+
+
+
+ VM Image File: Provide the
+ path to the FortiGate VNF qcow2 image.
+
+
+
+ Memory in MB: 1024
+
+
+
+ Num of CPUs: 1
+
+
+
+ Storage in GB: 20
+
+
+
+ Interfaces: Add 3 interfaces
+ in the same order as listed below:
+
+
+
+ vnfmgr: to connect it to
+ the vnfmgmt_br bridge.
+
+
+
+ wan: to connect it to the
+ wan_br bridge.
+
+
+
+ lan: to connect it to the
+ lan_br bridge.
+
+
+
+
+
+ Cloud-init Datasource:
+ ConfigDrive
+
+
+
+ Cloud-init Disk Type:
+ cdrom
+
+
+
+ Cloud-init content file: Add
+ a file entry where Path: license.
+
+
+
+
+ The order of the interfaces that need to be added must be
+ exactly as listed above or else onboarding and in turn instantiation
+ will fail.
+
+
+ Instantiating the FortiGate
+ VNF:
+
+ Instantiate the FortiGate VNF by filling the required fields with
+ the following values:
+
+
+
+ Name: Name of the VM which
+ will be created on the uCPE device.
+
+
+
+ VNF Type: Name of the
+ onboarded VNF.
+
+
+
+ uCPE Device: Select the uCPE
+ device where the VNF will be instantiated.
+
+
+
+ License file: The FortiGate
+ license file provided by Fortinet.
+
+
+
+ Configuration file: The
+ SD-WAN example configuration files provided by Enea:
+ fortigate-sdwan1.conf for the FortiGate VNF on
+ uCPE device 1 and fortigate-sdwan2.conf for the
+ FortiGate VNF on uCPE device 2.
+
+
+
+ Port1 - VNF Mgr: Set the type
+ to DPDK and connect it to the
+ vnfmgmt_br bridge.
+
+
+
+ Port2 - WAN: Set the type to
+ DPDK and connect it to the
+ wan_br bridge.
+
+
+
+ Port3 - LAN: Set the type to
+ DPDK and connect it to the
+ lan_br bridge.
+
+
+
+ Instantiate the FortiGate VNF on uCPE device 1 using the
+ sdwan1 example configuration file.
+
+ To complete the branch-to-branch setup, configure uCPE
+ device 2 in the same way as uCPE device
+ 1.
+
+
+ The names of the ports used during instantiation need to be the
+ same as the ones described above, as the same names will be used in
+ the configuration files provided for this example use-case.
+
+
+
+
+ Testing the Use-case
+
+ Once the full SD-WAN setup is in place a VPN connection needs to
+ be established between the two uCPE devices. The Test Machines can be
+ connected to the LAN interface on each uCPE device.
+
+
+ The connected Test Machine can be a laptop or a uCPE device that
+ has one interface configured to get a dynamic IP from a DHCP server.
+ The dhclient <interface> command can be used
+ to request an IP address.The received IP must be in the 172.16.1.2 -
+ 172.16.1.255 range for Test Machine-1 and in the 172.16.2.2 -
+ 172.16.2.255 range for Test Machine-2.
+
+
+ The Test Machine connected to uCPE device 1
+ should be able to ping the Test Machine connected to uCPE
+ device 2 in this setup, over the WAN connection. The FortiGate
+ VNF management interface can be accessed from a web browser on the Lab
+ Machine. For more details please see FortiGate VNF Web Management, .
+
+
+ In this SD-WAN VPN setup example, bridges were used as
+ connection points for the FortiGate VNF. It is possible to replace
+ OVS-DPDK bridges with SR-IOV connection points.
+
+
+
+
+
+ FortiGate VNF Web Management
+
+ In order to check the IP address assigned to the FortiGate VNF you
+ need to connect to the FortiGate CLI.
+
+
+
+ SSH to the uCPE Device (Username: root) and connect to the
+ FortiGate VNF console:
+
+ virsh list
+virsh console <id of FortiGate VNF>
+
+
+
+ To access the FortiGate CLI, use admin as the
+ user, leaving the password blank/empty, and press enter.
+
+ Use the CLI command get system interface to
+ get the dynamic interfaces configuration.
+
+
+
+ Use the IP address assigned for the management interface in the
+ web browser (https://<IP>), to access the
+ FortiGate VNF Web Management Interface. Use the same credentials as
+ before to login.
+
+
+
+ Browse through the configuration and perform changes according
+ to your setup:
+
+
+ The FortiGate VNF Web Management Interface
+
+
+
+
+
+
+
+
+
+
+ Optionally, alter the default FortiGate example configuration
+ provided by Enea, through the following steps:
+
+
+
+ Deploy the FortiGate Firewall in its default
+ settings.
+
+ Maybe more info about how to do it should be added
+ here.
+
+
+
+ Connect to the FortiGate VNF Web Management interface with a
+ web browser.
+
+
+
+ Modify the FortiGate configuration in the FortiGate VNF Web
+ Management as needed.
+
+
+
+ Store the updated configuration in a file, so it may be used
+ at the next FortiGate VNF instantiation.
+
+
+
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/doc/images/fortinet_interface.png b/doc/book-enea-edge-example-usecases/doc/images/fortinet_interface.png
new file mode 100755
index 0000000..9452264
Binary files /dev/null and b/doc/book-enea-edge-example-usecases/doc/images/fortinet_interface.png differ
diff --git a/doc/book-enea-edge-example-usecases/doc/images/trgt.png b/doc/book-enea-edge-example-usecases/doc/images/trgt.png
new file mode 100644
index 0000000..2977524
Binary files /dev/null and b/doc/book-enea-edge-example-usecases/doc/images/trgt.png differ
diff --git a/doc/book-enea-edge-example-usecases/doc/images/trgt.svg b/doc/book-enea-edge-example-usecases/doc/images/trgt.svg
new file mode 100755
index 0000000..86f4d12
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/images/trgt.svg
@@ -0,0 +1,1231 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+ Guest
+
+
+ OVS Bridge
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Legend: - Connection via cloud/internet:- Back to Back: BTB- Flow rules:
+
+
+
+
+
+
+ uCPE Device
+
+
+
+
+ Internet
+
+
+
+ Enea Edge Management
+
+
+
+ Web Interface (128T) https://<IP>:60001
+
+
+
+ ibm_br
+
+
+
+
+ lan_br
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Test Machine
+
+
+
+
+
+
+ vnf_mgmt_br
+
+
+
+
+
+
+ 128T
+
+
+
+ LAN
+ WAN
+ MGMT
+
+
+
+
+
+ .1
+ .2
+ .1
+ .2
+ 192.168.64.0/24
+ 10.0.0.0/24
+
+
diff --git a/doc/book-enea-edge-example-usecases/doc/images/trgt_servicechain.png b/doc/book-enea-edge-example-usecases/doc/images/trgt_servicechain.png
new file mode 100644
index 0000000..7cb5af0
Binary files /dev/null and b/doc/book-enea-edge-example-usecases/doc/images/trgt_servicechain.png differ
diff --git a/doc/book-enea-edge-example-usecases/doc/images/trgt_servicechain.svg b/doc/book-enea-edge-example-usecases/doc/images/trgt_servicechain.svg
new file mode 100755
index 0000000..4bd6d85
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/images/trgt_servicechain.svg
@@ -0,0 +1,1402 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+ Guest
+
+
+ OVS Bridge
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Legend: - Connection via cloud/internet:- Back to Back: BTB- Flow rules:
+
+
+
+
+
+
+
+
+
+
+ uCPE Device
+
+
+
+ Internet
+
+
+ Enea Edge Management
+
+
+
+
+
+ ibm_br
+
+
+
+ lsfc_br
+
+
+
+ 128T
+
+ LAN
+ WAN
+ MGMT
+
+
+
+
+ .2
+ .1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Test Machine
+
+ .2
+
+ 192.168.64.0/24
+
+
+
+ vnf_mgmt_br
+
+ .1
+ 10.0.0.0/24
+
+
+
+ lan_br
+
+
+
+ Fortigate
+
+
+ LAN
+ WAN
+ MGMT
+
+ .3
+ .1
+ 172.16.1.0/24
+ .2
+
+
+
+
+
+
+
+ Web Interface(128T) https://<IP>:60001(Fortigate) https://<IP>:60002
+
+
+
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_bridge.png b/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_bridge.png
new file mode 100644
index 0000000..97492ca
Binary files /dev/null and b/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_bridge.png differ
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_bridge.svg b/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_bridge.svg
new file mode 100755
index 0000000..2890881
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_bridge.svg
@@ -0,0 +1,966 @@
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Legend: - Connection via cloud/internet:- VPN/Back to Back (BTB):- Flow rules:
+
+
+
+
+
+
+
+
+
+
+
+
+ Enea Edge Management
+
+
+
+
+
+
+
+
+
+ Internet
+
+
+
+
+
+
+
+
+
+
+
+
+
+ uCPE Device 2
+
+
+ Iperf client
+
+
+ Iperf server
+
+
+
+
+ 192.168.20.20
+ 192.168.10.10
+
+
+
+ bridge
+
+ dpdk
+
+
+
+
+
+
+
+
+
+
+
+ uCPE Device 1
+
+
+
+
+
+
+
+ Clavister
+ 192.168.10.1
+ 192.168.20.1
+
+
+
+ bridge
+
+ dpdk
+
+
+
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_sriov.png b/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_sriov.png
new file mode 100644
index 0000000..2c9ae6b
Binary files /dev/null and b/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_sriov.png differ
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_sriov.svg b/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_sriov.svg
new file mode 100755
index 0000000..a33c619
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/images/uc_clavister_sriov.svg
@@ -0,0 +1,1152 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Legend: - Connection via cloud/internet:- VPN/Back to Back (BTB):- Flow rules:
+
+
+
+
+
+
+
+
+
+
+
+
+ Internet
+
+
+
+
+
+
+
+
+ Enea Edge Management
+
+
+
+
+
+
+
+
+
+
+
+
+ uCPE Device2
+
+
+
+
+
+
+
+
+
+
+ Iperf server
+ 192.168.10.10
+
+
+
+
+
+ SR-IOV
+
+ Iperf client
+ 192.168.20.20
+
+
+
+ uCPE Device1
+
+
+ SR-IOV
+
+
+
+
+
+
+
+
+
+
+ Clavister
+ 192.168.10.1
+ 192.168.20.1
+
+
+
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_enea_test_vnf.png b/doc/book-enea-edge-example-usecases/doc/images/uc_enea_test_vnf.png
new file mode 100644
index 0000000..be97bc0
Binary files /dev/null and b/doc/book-enea-edge-example-usecases/doc/images/uc_enea_test_vnf.png differ
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_enea_test_vnf.svg b/doc/book-enea-edge-example-usecases/doc/images/uc_enea_test_vnf.svg
new file mode 100755
index 0000000..fc71729
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/images/uc_enea_test_vnf.svg
@@ -0,0 +1,1002 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+ Guest
+
+
+
+
+
+ Enea Edge Management
+
+
+
+
+
+
+
+
+
+
+
+
+ Internet
+
+
+ BTB
+
+
+
+ uCPE Device 1
+
+
+
+
+
+
+ pktgen_dpdk
+
+
+
+
+
+
+
+
+
+
+
+
+ uCPE Device 2
+
+
+ testpmd_fwd
+
+
+ testpmd_term
+
+
+
+
+
+
+
+
+
+ bridge
+ dpdk
+
+
+
+
+
+
+
+
+ Legend: - Connection via cloud/internet:- Back to Back: BTB- Flow rules:
+
+
+
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_fw.png b/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_fw.png
new file mode 100644
index 0000000..f8ae39a
Binary files /dev/null and b/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_fw.png differ
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_fw.svg b/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_fw.svg
new file mode 100755
index 0000000..160c8b0
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_fw.svg
@@ -0,0 +1,940 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+ Test Machine
+
+
+
+
+
+
+
+
+ dpdk
+
+
+ wan_br
+
+
+
+
+ dpdk
+
+
+ lan1_br
+
+
+
+
+ dpdk
+
+
+ lan2_br
+
+
+
+ Fortigate
+
+
+ uCPE Device
+
+
+
+
+
+
+
+ Legend: - Connection via cloud/internet:
+
+
+
+
+
+
+
+
+
+ Test
+
+
+
+
+
+
+
+ Internet
+
+
+
+ Enea Edge Management
+
+
+
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_sdwan.png b/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_sdwan.png
new file mode 100644
index 0000000..b71b02e
Binary files /dev/null and b/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_sdwan.png differ
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_sdwan.svg b/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_sdwan.svg
new file mode 100755
index 0000000..3de54dd
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/images/uc_fortigate_sdwan.svg
@@ -0,0 +1,1449 @@
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cloud
+
+
+
+ uCPEDevice
+
+
+ uCPEManager
+
+
+
+ Internet
+
+
+
+ VNF
+
+
+
+ Guest
+
+
+
+ OVS Bridge
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Internet
+
+
+
+ Enea Edge Management
+
+
+
+
+ uCPE Device 2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ vnfmgmt_br
+
+ dpdk
+
+
+
+ Fortigate
+
+
+
+
+ wan_br
+ dpdk
+
+
+ dpdk
+
+
+ lan_br
+
+
+
+
+
+
+
+
+
+
+
+
+ Test Machine
+
+
+
+
+
+
+ Test Machine
+
+
+
+
+
+
+
+
+
+
+
+ uCPE Device 1
+
+
+
+
+
+
+
+
+
+ wan_br
+
+ dpdk
+
+
+
+
+ lan_br
+
+ dpdk
+
+
+
+
+
+ vnfmgmt_br
+
+ dpdk
+
+ Fortigate
+
+
+
+
+
+
+
+ Legend: - Connection via cloud/internet:- VPN/BTB:
+
+
+
+
+
+
+
+
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_vnf_chaining.png b/doc/book-enea-edge-example-usecases/doc/images/uc_vnf_chaining.png
new file mode 100644
index 0000000..6aaf4c0
Binary files /dev/null and b/doc/book-enea-edge-example-usecases/doc/images/uc_vnf_chaining.png differ
diff --git a/doc/book-enea-edge-example-usecases/doc/images/uc_vnf_chaining.svg b/doc/book-enea-edge-example-usecases/doc/images/uc_vnf_chaining.svg
new file mode 100755
index 0000000..2bb15af
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/images/uc_vnf_chaining.svg
@@ -0,0 +1,1186 @@
+
+
+
+
+
+ image/svg+xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cloud
+
+
+
+ uCPEDevice
+
+
+ uCPEManager
+
+
+
+ Internet
+
+
+
+ VNF
+
+
+
+ Guest
+
+
+
+ OVS Bridge
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ sfc_br
+
+
+
+
+
+
+ Fortigate
+
+ lan
+ wan
+
+
+
+ LAN2
+
+ dpdk
+
+ lan_br
+
+ Juniper
+ lan
+ wan
+
+ dpdk
+
+
+ wan_br
+
+
+ uCPE Device 2
+
+
+
+
+
+
+
+
+
+
+ sfc_br
+
+
+
+ Juniper
+ wan
+ lan
+
+ dpdk
+
+ wan_br
+
+
+ Fortigate
+ wan
+ lan
+
+ dpdk
+
+
+ lan_br
+
+
+ uCPE Device 1
+
+
+ LAN1
+
+
+
+
+
+
+ Legend: - Connection via cloud/internet:- VPN/BTB:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Internet
+
+
+
+ Enea Edge Management
+
+
+
diff --git a/doc/book-enea-edge-example-usecases/doc/introduction.xml b/doc/book-enea-edge-example-usecases/doc/introduction.xml
new file mode 100644
index 0000000..b502e8b
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/introduction.xml
@@ -0,0 +1,27 @@
+
+
+ Introduction
+
+ This document describes several example use-cases concerning uCPE
+ configuration, onboarding and instantiation of certain VNFs, VNF chaining,
+ etc.
+
+ Before running any example use case make sure the uCPE device(s) have
+ been added to Enea Edge Management and placed on the map. For detailed
+ information on how to add a device to Enea Edge Management, how to configure the
+ network interfaces to use DPDK, PCI-passthrough or SR-IOV drivers, or VNF
+ configuration, please refer to the Manual.
+
+
+ Examples presented in this document use 3rd-party VNFs, which are
+ not provided by Enea. To procure and use these VNF image files and license
+ files, please contact the VNF provider.
+
+ Request the VNF prerequisites from the VNF vendors, or alternatively
+ obtain the prerequisites based on instructions from each VNF vendor
+ respectively.
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/doc/service_chaining_128t_fortigate.xml b/doc/book-enea-edge-example-usecases/doc/service_chaining_128t_fortigate.xml
new file mode 100644
index 0000000..bb05905
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/service_chaining_128t_fortigate.xml
@@ -0,0 +1,1064 @@
+
+
+ Service Chaining 128T - Fortigate Example Use-case
+
+ The following is an example of how to setup and configure a service
+ chain on top of the Enea Edge Runtime, using the
+ following commercial VNFs: 128T router and FortiGate.
+
+
+ Prerequisites
+
+ The 128T router and the Fortinet firewall in a service chain require
+ the following prequisites for this example use case:
+
+
+
+ 1 in band management port for device management.
+
+
+
+ 1 in band management port for the 128T router.
+
+
+
+ 1 in band management port for Fortinet.
+
+
+
+ 1 WAN interface for Fortinet.
+
+
+
+ 1 LAN facing interface for Fortinet.
+
+
+
+ 1 WAN facing interface for the 128T router.
+
+
+
+ 1 service chain (SFC Bridged interface) to sit between the
+ Firewall and vRouter.
+
+
+
+ The following files are needed for this example use-case:
+
+
+
+ FortiGate VNF image. Please contact Fortinet to get a VNF image
+ and its license file.
+
+
+
+ 128T router VNF image. Please contact 128 Technology to get a
+ VNF image and its license file.
+
+
+
+ Cloud-init iso image.
+
+
+
+
+ To procure the VNF image files and their licenses, please contact
+ each respective VNF provider.
+
+
+
+
+ Service Chaining 128T - Fortigate
+
+
+ Service Chaining 128T - Fortigate Setup Overview
+
+
+
+
+
+
+
+
+
+ Use-case Setup
+
+ Configuring Network Interfaces on uCPE
+ devices:
+
+ Add the trgt uCPE device into Enea Edge Management:
+ Devices -> Manage -> Add, and fill in the
+ required fields with the following data:
+
+
+ Device Details
+
+
+
+
+
+
+
+
+
+
+ Field
+
+ Value
+
+
+
+
+
+ Type
+
+ Enea universal CPE
+
+
+
+ Release
+
+ 2.2.2
+
+
+
+ Name
+
+ trgt
+
+
+
+ IP/DNS Address
+
+ <unspecified>
+
+
+
+ Description
+
+ Target 1
+
+
+
+ SSH Port
+
+ 830
+
+
+
+ SSH User Name
+
+ root
+
+
+
+ Password
+
+ null
+
+
+
+ Device ID
+
+ Also configured during installation of the device
+ (E.g.: Target-15).
+
+
+
+ OK
+
+ Green status indicates connection with uCPE device
+ was established.
+
+
+
+
+
+
+
+ In order to add the device on the map: Right-Click on
+ Map -> Place Device -> trgt.
+
+
+
+ Configure the infrastructure for the 128T and Fortigate VNFs
+ in the service chain by creating four OVS bridges and a host
+ interface.
+
+ Add the Host Interface by selecting the trgt device, then
+ Configuration -> External Interfaces ->
+ Configuration -> Add, and fill in the required fields
+ with the following data:
+
+
+ Host Interface Details
+
+
+
+
+
+
+
+
+
+
+ Field
+
+ Value
+
+
+
+
+
+ Source
+
+ enp4s0f1. The only interface
+ available for LAN connection.
+
+
+
+ networking-type
+
+ dpdk
+
+
+
+ dpdk-type
+
+ vfio-pci
+
+
+
+ Create
+
+ <interface enp4s0f1 ready to be used in a LAN
+ bridge.>
+
+
+
+
+
+ Add the OVS bridges by selecting the trgt device then:
+ Configuration -> OpenVSwitch -> Bridges ->
+ Add. Fill in the required fields for each bridge with
+ the following data from each table:
+
+
+ ibm_br Bridge Details
+
+
+
+
+
+
+
+
+
+
+ Field
+
+ Value
+
+
+
+
+
+ id
+
+ <autogenerated - do not change>
+
+
+
+ Name
+
+ ibm_br
+
+
+
+ ovs-bridge-type
+
+ inbandMgmt
+
+
+
+ Create
+
+
+
+
+
+
+
+
+
+ Onboarding the VNFs:
+
+ Onboard the 128T VNF VM Image through VNF ->
+ Descriptors -> On-board, and fill in the required fields
+ with the following values:
+
+
+ 128T VM Image Details
+
+
+
+
+
+
+
+
+
+
+ Field
+
+ Value
+
+
+
+
+
+ VM image file
+
+ centos_128t_with_ci.qcow2
+
+
+
+ Image format
+
+ QCOW2
+
+
+
+ VNF Type Name
+
+ 128T
+
+
+
+ Description
+
+ 128T Router
+
+
+
+ Version
+
+ 1.0
+
+
+
+ Memory in MB
+
+ 8192. More memory can be allocated if required
+ (<28672).
+
+
+
+ Num. of CPUs
+
+ 2. More CPUs can be reserved if required
+ (<15).
+
+
+
+ Interfaces -> +
+
+ Name: mgmt
+
+
+
+ Interfaces -> +
+
+ Name: wan
+
+
+
+ Interfaces -> +
+
+ Name: lan
+
+
+
+ Cloud Init -> Cloud-Init Datasource
+
+ ISO
+
+
+
+ Cloud Init -> Cloud-Init Disk Type
+
+ cdrom
+
+
+
+ Properties -> +
+
+ Name: vnfMgmtIpAddress. Value: 10.0.0.2
+
+
+
+ Properties -> +
+
+ Name: internalMgmtPort. Value: 443
+
+
+
+ Properties -> +
+
+ Name: externalMgmtPort. Value: 60001
+
+
+
+ Onboard
+
+ <Wait for message: VNF package onboarded
+ successfully>
+
+
+
+ Close
+
+
+
+
+
+
+
+
+
+
+ HTTPS access (443) can be changed to another type of access.
+ Please consult official 128T documentation and make sure the 128T
+ VNF is configured to accept another type of connection before
+ changing the port number.
+
+
+
+ externalMgmtPort(60001) represents the
+ external port on which the user can access the VNF management
+ interface from the web browser via HTTPS. The user can select
+ another port if needed. There are no other changes required or
+ components affected by this change.
+
+
+
+ vnfMgmtIpAddress (10.0.0.2) represents
+ the IP address of the management interface of the 128T VNF.
+ Changing this value requires an update to the 128T configuration
+ to match the new IP address.
+
+
+
+
+ Onboard the Fortigate VNF VM Image through VNF ->
+ Descriptors -> On-board, and fill in the required fields
+ with the following values:
+
+
+ Fortigate VM Image Details
+
+
+
+
+
+
+
+
+
+
+ Field
+
+ Value
+
+
+
+
+
+ VM image file
+
+ fortios.qcow2. Please make sure to
+ contact Fortinet for an official FortiGate KVM image.
+
+
+
+ Image format
+
+ QCOW2
+
+
+
+ VNF Type Name
+
+ Fortigate
+
+
+
+ Description
+
+ Fortigate VNF
+
+
+
+ Version
+
+ 1.0
+
+
+
+ Memory in MB
+
+ 1024. More memory can be allocated if required
+ (<28672).
+
+
+
+ Num. of CPUs
+
+ 1. More CPUs can be reserved if required
+ (<15).
+
+
+
+ Interfaces -> +
+
+ Name: mgmt
+
+
+
+ Interfaces -> +
+
+ Name: wan
+
+
+
+ Interfaces -> +
+
+ Name: lan
+
+
+
+ Cloud Init -> Cloud-Init Datasource
+
+ ConfigDrive
+
+
+
+ Cloud Init -> Cloud-Init Disk Type
+
+ cdrom
+
+
+
+ Cloud Init -> +
+
+ Path: license
+
+
+
+ Properties -> +
+
+ Name: vnfMgmtIpAddress. Value: 10.0.0.3
+
+
+
+ Properties -> +
+
+ Name: internalMgmtPort. Value: 443
+
+
+
+ Properties -> +
+
+ Name: externalMgmtPort. Value: 60002
+
+
+
+ Onboard
+
+ <Wait for message: VNF package onboarded
+ successfully>
+
+
+
+ Close
+
+
+
+
+
+
+
+
+
+
+ HTTPS access (443) can be changed to another type of access.
+ Please consult official Fortigate documentation and make sure the
+ Fortigate VNF is configured to accept another type of connection
+ before changing the port number.
+
+
+
+ externalMgmtPort (60002) represents the
+ external port on which the user can access the VNF management
+ interface from the web browser via HTTPS. The user can select
+ another port if needed. There are no other changes required or
+ components affected by this change.
+
+
+
+ vnfMgmtIpAddress (10.0.0.3) represents
+ the IP address of the management interface of the Fortigate VNF.
+ Changing this value requires an update to the Fortigate
+ configuration to match with new IP address.
+
+
+
+
+ Instantiating the VNFs:
+
+ Instantiate the 128T VNF by selecting the trgt device, then
+ VNF -> Instances -> Add.
+
+ Fill in the required fields with the following values:
+
+
+
+
+ To procure the VNF image files and their licenses, please
+ contact each respective VNF provider.
+
+
+ Instantiate the Fortigate VNF by selecting the trgt device, then
+ VNF -> Instances -> Add.
+
+ Fill in the required fields with the following values:
+
+
+
+
+
+ Testing the Use-case
+
+ In order to access the web interfaces of the 128T VNF, open a
+ browser on a machine connected on the same network with the WAN port of
+ the target and connect to:
+ https://<publicIP>:60001 using the username:
+ admin and the password: 128Tadmin.
+
+ In order to access the web interfaces of the Fortigate VNF, open a
+ browser on a machine connected on the same network with the WAN port of
+ the target and connect to:
+ https://<publicIP>:60002 using the username:
+ admin, and leaving the password blank.
+
+
+ Make sure the WAN interface of the trgt device has access to the
+ internet. The Fortigate VNF requires internet access to validate the
+ license.
+
+
+ In order to validate the data path connect a test machine to the
+ LAN physical port and check for a dynamic IP (the Fortigate LAN
+ interface is configured with a DHCP server):> dhclient eth1
+> ping 8.8.8.8For data path validation, a new cloud-init
+ image may need to be generated for the 128T VNF to match your network
+ configuration.
+
+
+
+ Use-case Clean-up
+
+ In order to remove the setup created in previously, all components
+ need to be deleted in reverse order:
+
+
+
+ Select the trgt uCPE device -> VNF -> Instances. Select
+ the 128T and Fortigate VNFs -> Delete.
+
+
+
+ Select the trgt uCPE device -> Configuration ->
+ OpenVSwitch -> Bridges. Select all bridges -> Delete.
+
+
+
+ Select the trgt uCPE device -> Configuration -> External
+ Interfaces -> Configuration. Select all interfaces ->
+ Delete.
+
+
+
+ VNF -> Descriptors. Select all bundles ->
+ Offboard.
+
+
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/doc/vnf_chaining.xml b/doc/book-enea-edge-example-usecases/doc/vnf_chaining.xml
new file mode 100644
index 0000000..24442af
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/doc/vnf_chaining.xml
@@ -0,0 +1,407 @@
+
+
+ VNF Chaining Example Use-case
+
+ The term service chaining or service function chaining (SFC) is used
+ to describe the definition and instantiation of an ordered list of instances
+ of such service functions and the subsequent "steering" of traffic flows
+ through those service functions. The set of enabled service function chains
+ reflects operator service offerings and is designed in conjunction with
+ application delivery and service and network policy.
+
+ The following is an example of how to setup and configure a
+ branch-to-branch service comprised on two commercial VNFs (SD-WAN +
+ Firewall). This service will run in a service chain on top of the Enea
+ Edge Runtime, deployed through the Enea Edge
+ Management.
+
+ In the example setup the following commercial VNFs are used: Juniper
+ vSRX as the SD-WAN VNF and Fortigate as the Router/Firewall.
+
+
+ VNF Chaining with FortiGate
+
+
+ Prerequisites
+
+ Two uCPE devices will be needed for this setup. The system
+ requirements for each uCPE device are:
+
+
+
+ 4 x Network Interfaces
+
+
+
+ 4 GB of RAM memory
+
+
+
+
+ On each uCPE device, 3 interfaces need to be DPDK compliant and
+ one of these needs to be connected back-to-back to the other uCPE
+ device. This link simulates a WAN/uplink connection. Optionally, one
+ additional device (PC/laptop) can be connected on the LAN port of each
+ branch to run LAN-to-LAN connectivity tests.
+
+
+ The following files are needed for this example use-case:
+
+
+
+ Fortigate VNF image file.
+
+
+
+ Juniper vSRX VNF image file.
+
+
+
+ vSRX-Site<x>.iso Cloud-init files.
+
+
+
+ VNF Configuration files, provided with your Enea Edge
+ Release:
+
+
+
+ vSRX-domain-update-script.
+
+
+
+ FortiFW-Site<x>.conf.
+
+
+
+
+
+
+ To procure the VNF image files and their licenses, please
+ contact each respective VNF provider. To create the
+ vSRX-Site<x>.iso file, please follow the documentation provided
+ by Juniper.
+
+
+
+
+ Use-case Setup
+
+
+ VNF Chaining with Fortigate
+
+
+
+
+
+
+
+
+ No info about vnf_mgmt_br?
+
+ Network Configuration:
+
+ Both branches in the example have similar setups, therefore
+ necessary step details are presented for only one branch. The second
+ branch shall be configured in the same way, adapting as needed the
+ corresponding VNFs configuration files.
+
+
+
+ Assign three physical interfaces to the DPDK (one for
+ management, one WAN and one for LAN). In the example, one of these
+ interfaces gets an IP through DHCP and it will be used exclusively
+ for the management plane.
+
+
+
+ Create the following OVS-DPDK bridges:
+
+
+
+ vnf_mgmt_br. Used by VNF management
+ ports.
+
+
+
+ wan_br. Used by the service uplink
+ connection. In our case, Juniper vSRX will have its WAN virtual
+ interface in this bridge.
+
+
+
+ sfc_br. Used for creating the service
+ chain. Each VNF will have a virtual interface in this
+ bridge.
+
+
+
+ lan_br. Used for the LAN interface of
+ the Fortigate FW.
+
+
+
+
+
+ Add corresponding DPDK ports (see Step 1) to the management,
+ WAN and LAN bridges (sfc_br does not have a
+ physical port attached to it).
+
+
+ The networking setup (Steps 1-3) can be modeled using the
+ Offline Configuration entry, so that it is automatically
+ provisioned on the uCPE device, once it gets enrolled into the
+ management system (Enea Edge Management).
+
+
+
+
+ Onboarding the VNFs:
+
+
+
+ Onboard Juniper vSRX using the VNF by filling the required
+ fields with the following values:
+
+
+
+ The Flavor selected must have at least 2 vCPUs and 4 GB
+ RAM since vSRX is quite resource consuming.
+
+ Tested in-house with 4 vCPUs/ 6 GB RAM.
+
+
+
+ Add three virtual interfaces: management, WAN and
+ LAN.
+
+
+
+ Select ISO as the Cloud-Init Datasource
+ in the Cloud-Init tab.
+
+
+
+ Select cdrom as the Cloud-Init Disk
+ Type in the Cloud-Init tab.
+
+
+
+
+
+ Onboard Fortigate FW using the VNF Onboarding Wizard:
+
+
+
+ The Flavor selected can be quite light in resource
+ consumption, e.g. 1 CPU and 1 GB RAM.
+
+
+
+ Add three virtual interfaces: management, WAN and
+ LAN.
+
+
+
+ Select ConfigDrive as the Cloud-Init
+ Datasource in the Cloud-Init tab.
+
+
+
+ Select cdrom as the Cloud-Init Disk
+ Type in the Cloud-Init tab.
+
+
+
+ In the Cloud-init content files field add an entry where
+ Path: license.
+
+
+
+
+
+ Instantiating the VNFs:
+
+
+
+ Create the vSRX instance:
+
+
+
+ Use vSRX-Site1.iso as the Cloud-Init
+ file.
+
+
+
+ The Domain Update Script field can be
+ left empty for the Atom C3000 architecture, while for XeonD the
+ vSRX-domain-update-script file will be
+ used.
+
+
+
+ Add virtual interfaces:
+
+
+
+ Management interface added to
+ vnf_mgmt_br.
+
+
+
+ WAN interface added to
+ wan_br.
+
+
+
+ LAN interface added to
+ sfc_br.
+
+
+
+
+
+
+ The login/password values for the vSRX VNF are
+ root/vsrx1234, respectively.
+
+
+
+
+ Create the Fortigate FW instance:
+
+
+
+ Use FortiFW-Site1.conf as the
+ Cloud-Init file.
+
+
+
+ Add .lic (not part of the folder) as
+ the license file.
+
+
+
+ Add virtual interfaces:
+
+
+
+ Management interface added to
+ vnf_mgmt_br.
+
+
+
+ WAN interface added to
+ sfc_br.
+
+
+
+ LAN interface added to
+ lan_br.
+
+
+
+
+
+
+ The login/password values for the Fortigate VNF are
+ admin/<empty password>,
+ respectively.
+
+
+
+
+ At this point the service will be up and running on Site1. Repeat
+ the steps to instantiate a VNF for Site2, by changing the configuration
+ files accordingly.
+
+ After the service is deployed on both branches, the VPN tunnel is
+ established and LAN to LAN visibility can be verified by connecting one
+ device on each uCPE LAN port.
+
+
+
+ Testing the Use-case
+
+ Before testing LAN to LAN connectivity, preliminary tests of
+ service can be run to ensure everything was set up properly. For
+ instance, by connecting to vSRX CLI (any site), one can test IKE
+ security associations:
+
+ root@Atom-C3000:~ # cli
+root@Atom-C3000> show security ike security-associations
+Index State Initiator cookie Responder cookie Mode Remote Address
+1588673 UP 2f2047b144ebfce4 0000000000000000 Aggressive 10.1.1.2
+...
+root@Atom-C3000> show security ike security-associations index 1588673 detail
+...
+
+ Also, from the vSRX CLI, a user can check that the VPN tunnel was
+ established and get statistics of the packets passing the tunnel:
+
+ root@Atom-C3000> show security ipsec security-associations
+...
+root@Atom-C3000> show security ipsec statistics index <xxxxx>
+...
+
+ From the Fortigate Firewall CLI on Site 1, one can check
+ connectivity to the remote Fortigate FW (from Site 2):
+
+ FGVM080000136187 # execute ping 192.168.168.2
+PING 192.168.168.2 (192.168.168.2): 56 data bytes
+64 bytes from 192.168.168.2: icmp_seq=0 ttl=255 time=0.0 ms
+64 bytes from 192.168.168.2: icmp_seq=1 ttl=255 time=0.0 ms
+64 bytes from 192.168.168.2: icmp_seq=2 ttl=255 time=0.0 ms
+...
+
+ Since VNF management ports were configured to get IPs through
+ DHCP, the user can use a Web-based management UI to check and modify the
+ configuration settings of both vSRX and Fortigate.
+
+ For example, in the case of vSRX, from the VNF CLI you can list
+ the virtual interfaces as below:
+
+ root@Atom-C3000> show interfaces terse
+...
+fxp0.0 up up inet 172.24.15.92/22
+gre up up
+ipip up up
+...
+
+ When using provided configurations, the VNF management port for
+ Juniper vSRX is always fxp0.0.
+
+ In the case of Fortigate, from the VNF CLI you can list the
+ virtual interfaces as such:
+
+ FGVM080000136187 # get system interface
+== [ port1 ]
+name: port1 mode: dhcp ip: 172.24.15.94 255.255.252.0 status: up netbios-forward:
+disable type: physical netflow-sampler: disable sflow-sampler: disable...
+...
+
+ When using provided configurations, the VNF management port for
+ Fortigate is always port1.
+
+ If functionality is as intended, LAN-to-LAN connectivity can be
+ checked (through the VPN tunnel) by using two devices (PC/laptop)
+ connected to the LAN ports of each uCPE. Optionally, these devices can
+ be simulated by using Enea's sample VNF running on both uCPEs and
+ connected to the lan_br on each side. Please note
+ that instructions for onboarding and instantiating this VNF is not in
+ the scope of this document.
+
+ Since Fortigate VNF, which is acting as router and firewall, is
+ configured to be the DHCP server for the LAN network, the device
+ interface connected to the uCPE LAN port has to be configured to get
+ dinamically assigned IPs. These IPs are in the 172.0.0.0/24 network for
+ Site1 and the 172.10.10.0/24 network for Site2. Therefore, site-to-site
+ connectivity can be checked (from Site1) as such:
+
+ root@atom-c3000:~# ping 172.10.10.2
+PING 172.10.10.1 (172.10.10.2): 56 data bytes
+...
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-example-usecases/swcomp.mk b/doc/book-enea-edge-example-usecases/swcomp.mk
new file mode 100755
index 0000000..83f672c
--- /dev/null
+++ b/doc/book-enea-edge-example-usecases/swcomp.mk
@@ -0,0 +1,10 @@
+# Component build specification
+
+# Version of THIS book
+BOOK_VER ?= $(REL_VER)-dev
+
+DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
+
+BOOKPACKAGES := book-enea-edge-example-usecases
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge $(PROD_VER) Example Use-cases"
+BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-edge-getting-started/doc/advanced_configurations.xml b/doc/book-enea-edge-getting-started/doc/advanced_configurations.xml
new file mode 100644
index 0000000..70a9978
--- /dev/null
+++ b/doc/book-enea-edge-getting-started/doc/advanced_configurations.xml
@@ -0,0 +1,1042 @@
+
+
+
+ Advanced Configurations
+
+ This chapter describes possible configurations for advanced features
+ such as the Hugepage Reservation Service customization, UEFI Secure Boot and
+ Bare Metal Provisioning.
+
+
+ Bare Metal Provisioning
+
+ Bare Metal Provisioning can be used for automated deployment of the
+ Enea Edge Runtime on a large number of uCPE devices. The uCPE devices may
+ have no previous operating system installed, or are reinstalled without
+ preserving any existing data. Enea Edge Bare Metal Provisioning is based
+ on standardized Pre-Boot Execution environment (PXE) booting.
+
+ The Bare Metal Provisioning process begins by PXE booting an Enea
+ Edge installer initramfs image. The installer downloads
+ a configuration file, as well as the Enea Edge Runtime image and then
+ proceeds to install the system by dividing the disk into 2 partitions: a
+ GPT partition containing the GRUB boot loader and a second partition
+ containing the Enea Edge Runtime root filesystem. When the installation is
+ complete, the uCPE device is automatically rebooted into Enea Edge
+ Runtime.
+
+
+ The .hddimg, initramfs, and
+ bzImage files are available in the
+ Enea_Edge_Runtime_<processor>_<version>-<build_number>.tar.gz
+ file you downloaded with your release.
+
+
+
+ Prerequisites
+
+
+
+ The uCPE devices to be installed are connected in a working
+ PXE network boot environment. The PXE server can be set up using any
+ Linux distribution that includes TFTP and DHCP software packages.
+ Refer to the documentation for your distribution for setup
+ instructions.
+
+
+
+ An HTTP server must be available and accessible from the uCPE
+ devices in the provisioning network. Note that the installer will
+ use the same interface that the uCPE device is PXE-booted from, to
+ obtain an IP address using DHCP and access the HTTP server.
+
+
+
+ The uCPE devices are preconfigured in BIOS to boot from the
+ hard drive where the Enea Edge Runtime will be installed.
+
+
+
+ CSM support and Dual Boot must be enabled in BIOS (i.e. PXE
+ booting in legacy mode), while the final Enea Edge Runtime image
+ will boot in UEFI mode. Doing a mass deployment using legacy PXE
+ booting usually means that Secure Boot is disabled, Secure Boot will
+ need to be enabled afterwards.
+
+
+
+ A remote management tool such as ipmitool
+ (or a vendor-specific tool) is available for use to set the next
+ boot option to PXE and reboot the uCPE devices in order to begin the
+ installation.
+
+
+
+
+
+ Server Configuration
+
+ The following images provided with your Enea Edge release need to
+ be made available on the PXE and HTTP servers:
+
+
+
+ Copy the Enea Edge installer initramfs
+ image and kernel bzImage for your uCPE device
+ architecture to the TFTP directory on the PXE server (e.g
+ /var/lib/tftpboot).
+
+
+
+ Compress the Enea Edge Runtime .hddimg
+ image for the uCPE device architecture using gzip
+ and copy the resulting hddimg.gz file to the HTTP
+ server.
+
+
+
+
+ Installation Configuration File
+
+ An installation configuration file needs to be prepared on the
+ HTTP server. The format of the configuration file is a list of
+ "name = value" pairs and the available parameters
+ are described below.
+
+ Mandatory parameter(s):
+
+
+
+ image_url. The HTTP server URL used for
+ downloading the Enea Edge Runtime image.
+
+
+
+ Optional parameters:
+
+
+
+ install_drive. The name of the drive
+ where the Enea Edge Runtime will be installed (e.g
+ /dev/sda). If not set, the installer will use
+ the largest detected (non-USB) drive on the uCPE device.
+
+
+
+ prompt_user. If the parameter is set to
+ "yes", the installer will ask for confirmation before formatting
+ and partitioning the drive. The default behaviour is to proceed
+ automatically without any user interaction.
+
+
+
+ Installation Configuration File Example:
+
+ image_url = http://192.168.1.100/enea-nfv-access-xeon-d.hddimg.gz
+install_drive = /dev/sda
+
+
+ The installation configuration file needs to use the Linux
+ end-of-line format (\n), not the Windows format (\r\n).
+
+
+
+
+ PXE Configuration
+
+ A PXE entry for the Enea Edge installation needs to be added as
+ the default boot selection in the pxelinux configuration file (e.g
+ /var/lib/tftpboot/pxelinux.cfg/default). The PXE
+ entry should have the following settings:
+
+ default nfv_access
+label nfv_access
+menu label ^NFV_ACCESS_INSTALLER
+kernel <Path to kernel>
+append root=/dev/ram0 initrd=<Path to initramfs> LABEL=pxe-installer \
+ INSTALL_CFG=http://<Server IP>/<Path to install config file> \
+ console=ttyS0,115200 earlyprintk=ttyS0,115200
+ipappend 2
+
+
+
+
+ Starting the Installation
+
+ To initiate the installation, set the boot device (for next boot
+ only) to PXE and reboot the uCPE devices. How to do this depends on the
+ remote management capabilities of the uCPE devices and may require
+ vendor-specific tools.
+
+ Example initiation using ipmitool:
+
+ ipmitool -U <user> -P <password> -H <uCPE device IPMI IP address> chassis bootdev pxe
+ipmitool -U <user> -P <password> -H <uCPE device IPMI IP address> power reset
+
+ The uCPE devices should be configured in BIOS to boot from the
+ installation drive first in order to automatically start the Enea Edge
+ Runtime when the installation is finished.
+
+
+
+
+ UEFI Secure Boot
+
+ Secure Boot was designed to enhance security in the pre-boot
+ environment. It prevents malicious software and applications from being
+ loaded during the system start-up process.
+
+ The basic principle of UEFI Secure Boot is that it requires all
+ artifacts involved in the boot process (bootloaders, kernel, initramfs) to
+ be signed using a set of private keys. On a Secure Boot enabled uCPE
+ device these artifacts are checked against a set of public certificates
+ which correspond to these keys. If there are any mismatches the boot
+ process will fail at the stage(s) they are detected.
+
+ For more information about Secure Boot please refer to Secure
+ Boot in Modern Computer Security Solutions.
+
+
+ Enabling UEFI Secure Boot
+
+ All Enea Edge image artifacts delivered with the release are
+ signed using the Enea UEFI Secure boot private keys. These artifacts can
+ be used on a uCPE device that doesn't have Secure Boot enabled. To use
+ the Secure Boot feature, however, the user must make the Enea UEFI
+ Secure Boot public certificates available on the uCPE device before
+ enabling the feature in BIOS. This process is called
+ "Provisioning".
+
+
+ Provisioning the Enea UEFI Secure Boot Certificates
+
+ The UEFI firmware is normally shipped with factory preloaded
+ certificates. If these do not already include Certificates from Enea,
+ they will need to be appended or replaced with the Enea
+ Certificates.
+
+ UEFI Secure Boot certificates provided
+ with your release:
+
+
+
+ Platform Key (PK): this key protects the
+ next key from uncontrolled modification. Once this key is
+ enrolled, Secure Boot enters into User Mode.
+ The drivers and loaders signed with the Platform
+ Key can then be loaded by the firmware.
+
+
+
+ Key Exchange key (KEK): this key allows
+ other certificates which have a connection to the private portion
+ of the Platform Key to be used.
+
+
+
+ Authorized Signature (DB): contains the
+ trusted keys used for authenticating any
+ drivers or applications executed in the UEFI environment.
+
+
+
+ The Enea UEFI Secure Boot certificates are installed together
+ with the Enea Edge Runtime onto the hard drive. They can be found on
+ the EFI partition (usually the first partition of the drive) under
+ /uefi_sb_keys.
+
+ These certificates need to be manually enrolled in BIOS. The
+ exact details on how to proceed may vary depending the version of the
+ UEFI firmware.
+
+ The UEFI firmware is normally shipped with factory preloaded
+ certificates. If these do not already include Certificates from Enea,
+ they will need to be appended or replaced with the Enea
+ Certificates.
+
+
+
+ Enabling Secure Boot in BIOS
+
+ Once the certificates are enrolled, Secure Boot needs to be
+ enabled in BIOS and the device rebooted.
+
+
+
+
+
+ Hugepage Reservation Service
+
+ Huge page memory support is a mechanism that allows the Linux kernel
+ to support larger page sizes than the default page unit (4KB). Huge pages
+ are contiguous blocks of memory that come in 2MB or 1GB sizes. By using
+ huge page allocations, less memory is used for page tables and the
+ Translation Lookaside Buffer (TLB) miss rate is significantly reduced.
+ Enea Edge Runtime uses huge page backed memory in KVM guests in order to
+ improve performance.
+
+ Enea Edge Runtime implements an automatic hugepage allocation
+ service that is triggered at each startup. The service is skipped if
+ hugepages have been allocated in the kernel boot command line.
+
+ There are two strategies outlined for hugepage allocation:
+
+
+
+ If a system has an amount of memory up to 8GB, the allocation
+ algorithm will reserve up to 30% (no more than 2GB), for the OS and
+ the rest as 2MB hugepages.
+
+
+
+ If a system has an amount of memory that's higher than 8GB, the
+ allocation algorithm will reserve all but 2GB of memory as 1GB
+ hugepages, leaving the rest (2GB) to be used by the OS.
+
+
+
+
+ This is a best effort reservation after kernel boot, so the
+ results may vary accordingly.
+
+
+
+ Customizing Automatic Hugepage Reservation
+
+ Configuration of Hugepage reservation is done in
+ /etc/enea-nfv-access/hugepages.cfg.
+
+ Parameters used by the automatic algorithm:
+
+
+
+
+ hugepage_setup: Enables the automatic
+ configuration algorithm. It has only one value,
+ auto. For manual configuration comment or remove
+ this parameter. Use the other parameter descriptions as a
+ template/example.
+
+
+
+ threshold_to_use_1g: Decides the threshold
+ which instructs the algorithm to use 1GB hugepages. If a system's
+ memory is higher than threshold_to_use_1g, then
+ the algorithm will use 1GB hugepages, otherwise it will use 2MB
+ hugepages.
+
+
+
+ percent_os_alloc: Decides how much memory
+ to try to reserve for userspace applications. The algorithm will try
+ to reserve at least the value of percent_os_alloc
+ of the total system memory for userspace applications.
+
+
+
+ maximum_os_alloc_mb: Maximum amount of
+ memory to allocate for userspace applications. If
+ percent_os_alloc of the total system memory
+ exceeds maximum_os_alloc_mb then the maximum
+ allocated memory for userspace applications is
+ maximum_os_alloc_mb.
+
+
+
+ Example of automatic Hugepage
+ Configuration:
+
+ hugepage_setup = auto
+threshold_to_use_1g = 8192
+percent_os_alloc = 30
+maximum_os_alloc_mb = 2048
+
+ The following possible allocations can result (based on total
+ system memory available):
+
+
+
+ 2GB of memory: approximately 30% will be allocated for the OS
+ and the rest will be allocated as 2MB hugepages.
+
+
+
+ 4GB of memory: approximately 30% will be allocated for the OS
+ and the rest will be allocated as 2MB hugepages.
+
+
+
+ 16GB of memory: approximately 2GB will be allocated for the OS
+ and the rest as 1GB hugepages.
+
+
+
+
+ The memory allocated for the kernel and hugepages might vary
+ slightly depending on how much memory is available.
+
+
+
+
+ Customizing Manual Hugepage Reservation
+
+ The automatic algorithm can be disabled and hugepages in turn,
+ configured manually. To do this, comment the line which defines
+ hugepage_setup as auto and
+ configure memory for each CPU socket in the following manner:
+
+ <NUMA node>.<hugepage size> = <number of pages>
+
+ Where <NUMA node> refers to a node which
+ is part of the system's NUMA topology, <hugepage
+ size> decides what type of hugepages should be set and
+ <number of hugepages> is how many hugepages of
+ <hugepage size> should be allocated.
+
+ To list the available system nodes, run:
+
+ ls -d /sys/devices/system/node/node*
+
+ To list available hugepage sizes, per node, run:
+
+ ls -d /sys/devices/system/node/node*/hugepages/hugepages-*
+
+ Example of Manual Hugepage Configuration, configuring the system
+ to allocate three 1GB hugepages and 512 of 2MB hugepages on node:
+
+ node0.2048kB = 512
+node0.1048576kB = 3
+
+
+ Make sure there are no hugepages reserved in the kernel boot
+ command line, these will override any manual configuration done in the
+ service.
+
+
+
+
+
+ Installing the Enea Edge Management in High Availability
+ Mode
+
+ The following describes the setup needed for running the Enea Edge
+ Management in High Availabilty (HA) mode, with a MariaDB database cluster.
+ A setup example is illustrated in the diagram below.
+
+
+ The High Availability setup
+
+
+
+
+
+
+
+
+ The setup consists of two sub-clusters, placed in different
+ geographical locations, each consisting of three MariaDB servers. In this
+ example, two of the machines are running only MariaDB, while the rest are
+ hosting a MariaDB server and an Enea Edge Management instance. The entire
+ network is hidden behind a firewall that performs NAT. While in protection
+ (cluster) mode, the Enea Edge Management instances promote a Virtual IP
+ (VIP) that represents the IP address of the entire cluster. The firewall
+ in this case will allocate a public IP for the outside world that will be
+ translated into the VIP. Also in this example, the traffic towards the
+ cluster from outside the firewall is done through HTTPS, which will be
+ translated to HTTP inside the private network.
+
+
+ By default, communication to the Enea Edge Management is done with
+ HTTPS. To enable HTTP, go to System,
+ Configuration, click on the Web Access tab and check the Enable HTTP checkbox.
+
+
+
+ Requirements for High Availability
+
+ The following hardware is needed for deploying the base
+ configuration:
+
+
+
+ Machines running the Enea Edge Management and MariaDB:
+
+
+
+ 4 CPU cores
+
+
+
+ 12 - 16 GB memory
+
+
+
+ 256 - 512 GB hard disk
+
+
+
+
+
+ Machines running only MariaDB:
+
+
+
+ 2 CPU cores
+
+
+
+ 8 GB memory
+
+
+
+ 256 - 512 GB hard disk
+
+
+
+
+
+
+
+ Firewall Rules
+
+ Please refer to Firewall Configuration in the
+ Manual. In addition, the following configuration is needed:
+
+
+
+ Disable SELINUX on all database servers by
+ editing /etc/sysconfig/selinux and changing the
+ following:
+
+ SELINUX=disabled
+SELINUXTYPE=targeted
+
+
+
+ Reboot the server:
+
+ [root@localhost ~]# sudo shutdown -r now
+
+
+
+ The following ports should be opened in the local firewall (not
+ the one doing NAT), for each Enea Edge Management machine:
+
+
+
+
+
+ Installing High Availability
+
+ The Enea Edge Management can be installed in High Availability
+ mode with a MariaDB database cluster by performing the following steps.
+ The mandatory Java configuration is also detailed.
+
+
+ Installing and configuring the MariaDB cluster
+
+ Install the latest MariaDB packages on all servers.
+
+
+ The setup was tested using MariaDB 10.5.8, built for CentOS
+ 7.
+
+
+ How to install MariaDB
+
+
+
+ Install the MariaDB official yum repository. Create a file
+ named mariadb.repo in
+ /etc/yum.repos.d/ with the following
+ content:# MariaDB 10.5 CentOS repository list - created 2021-02-16 08:46 UTC
+# http://downloads.mariadb.org/mariadb/repositories/
+[mariadb]
+name = MariaDB
+baseurl = http://yum.mariadb.org/10.5/centos7-amd64
+gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
+gpgcheck=1
+
+
+
+ For more information about setting the repository, consult
+ Downloads
+ - Setting up MariaDB Repositories.
+
+
+
+
+ Make sure the following packages are installed:
+
+ MariaDB-compat-10.5.8-1.el7.centos.x86_64
+MariaDB-common-10.5.8-1.el7.centos.x86_64
+MariaDB-server-10.5.8-1.el7.centos.x86_64
+MariaDB-client-10.5.8-1.el7.centos.x86_64
+galera-4-26.4.6-1.el7.centos.x86_64
+
+ These provide the MariaDB server, client and the Galera
+ wsrep provider library.
+
+
+
+ Copy the wsrep template:
+
+ [root@localhost ~]# cp /usr/share/mysql/wsrep.cnf /etc/my.cnf.d
+
+
+
+
+ Change the following configuration in
+ /etc/my.cnf.d/wsrep.cnf:
+
+ # Full path to wsrep provider library or 'none'
+wsrep_provider=/usr/lib64/galera-4/libgalera_smm.so
+
+# Provider specific configuration options
+#wsrep_provider_options=
+
+# Logical cluster name. Should be the same for all nodes.
+wsrep_cluster_name="ucpemanager"
+
+# Group communication system handle
+wsrep_cluster_address="gcomm://192.168.10.11,192.168.10.12,..,192.168.10.16"
+
+# Human-readable node name (non-unique). Hostname by default.
+wsrep_node_name=Node1 # current node's name. set node name for each server in \
+the cluster
+
+# Base replication <address|hostname>[:port] of the node.
+# The values supplied will be used as defaults for state transfer receiving,
+# listening ports and so on. Default: address of the first network interface.\
+wsrep_node_address=192.168.10.11
+#current node's interface IP . must be set for each node in the cluster
+
+
+ Steps 2, 3 and 4 must be performed for each MariaDB node
+ in the cluster.
+
+
+
+
+ Bootstrap the first node in the cluster (referred to as
+ Node1 in this example), by running:
+
+ [root@localhost ~]# galera_new_cluster
+
+ This script passes the
+ --wsrep-new-cluster to
+ mysqld which tells the node that there is no
+ pre-existing cluster to connect to. The node will create a new
+ UUID to identify the new cluster.
+
+
+ Do not execute this script when connecting to an existing
+ cluster. It will create a new UUID to identify the cluster
+ again, and the node won't reconnect to the old cluster.
+
+
+
+
+ Go to Node1 and start the service:
+
+ [root@localhost ~]# systemctl start mariadb
+
+ Subsequently, start the service on the other servers.
+
+
+
+ Verify that the nodes have entered the cluster:
+
+ [root@localhost ~]# mysql --host=localhost --user=root -p
+MariaDB [(none)]> show status like 'wsrep_cluster_conf_%';
++-----------------------+-------+
+| Variable_name | Value |
++-----------------------+-------+
+| wsrep_cluster_conf_id | 3 |
++-----------------------+-------+
+1 row in set (0.001 sec)
+
+
+
+ Run the initial configuration script (only once, on one of
+ the machines in the cluster):
+
+ [root@localhost ~]# mysql_secure_installation
+
+Switch to unix_socket authentication [Y/n] Y
+Enabled successfully!
+Reloading privilege tables..
+ ... Success!
+…
+Change the root password? [Y/n] Y
+New password:
+Re-enter new password:
+Password updated successfully!
+Reloading privilege tables..
+ ... Success!
+…
+Remove anonymous users? [Y/n] Y
+ ... Success!
+…
+Disallow root login remotely? [Y/n] Y
+ ... Success!
+…
+Remove test database and access to it? [Y/n] Y (optional)
+ - Dropping test database...
+ ... Success!
+ - Removing privileges on test database...
+ ... Success!
+Reload privilege tables now? [Y/n] Y
+ ... Success!
+
+Cleaning up...
+
+All done! If you've completed all of the above steps, your MariaDB
+installation should now be secure.
+
+Thanks for using MariaDB!
+
+
+
+ Create the initial database and grant access to it:
+
+ [root@localhost application]# mysql --host=localhost --user=root -p
+MariaDB [(none)]> CREATE DATABASE ucpemanager CHARACTER SET='utf8' \
+COLLATE='utf8_bin';
+Query OK, 1 row affected (0.004 sec)
+
+MariaDB [(none)]> GRANT ALL PRIVILEGES ON ucpemanager.* \
+TO 'enea'@'%' IDENTIFIED BY 'somepassword' WITH GRANT OPTION;
+
+
+
+
+
+ Installing the Java SDK
+
+ Please refer to Configuring OpenJDK and
+ PostgreSQL in the
+ Manual, for details on how to install and configure Java
+ OpenJDK.
+
+ Make sure the JAVA_HOME variable points to
+ the OpenJDK 11 installation:
+
+ [root@localhost ~]# echo $JAVA_HOME
+/usr/lib/jvm/java-11-openjdk-11.0.10.0.9-0.el7_9.x86_64
+
+
+
+
+ Installing the Enea Edge Management in High Availabilty
+ mode
+
+ These steps must be taken on each of the CentOS 7 machines that
+ will host the Enea Edge Management. The Enea Edge Management will be
+ installed and the setup for the external database cluster will be
+ prepared.
+
+ As the root user, go to the distribution folder of the Enea Edge
+ Management, and run:
+
+ [root@localhost distro]#./install.sh /opt/ \
+Enea_NFV_Access_uCPEManager_2.3.0-build23.tar.gz
+This will install uCPEManager into /opt/ucpemanager folder.
+Select the following options, while asked by the installation script:
+Are you using the embedded PostgreSQL database? [Y/N]: N
+External database selected, getting user information ...
+Press 1 for PostgreSQL, 2 for MariaDB, 3 for SQL Server, 4 for Oracle and 5 \
+for MySQL: 2
+Specify database server name(s) or IP Address(es): \
+192.168.10.11,192.168.10.12,…,192.168.10.16 *(see note)
+Specify database ID (or name) [ucpemanager]:
+Specify database server port [3306]:
+Specify database user name [root]: enea
+Specify database password [root]: somepassword
+Specify database startup thread pool size [1]:
+Creating database configuration file \
+/opt//ucpemanager/application/config/databaseConfig.xml ...
+Done .
+…
+Installing ucpemanager service ..
+Specify service username [ucpemanager]:
+Specify service password [ucpemanager]: somepassword
+…
+Specify the IP address of the local interface: 192.168.10.11
+Is this server part of a cluster? [Y/N]: Y
+Specify the name of the cluster [ucpemanager]:
+Specify the shared (virtual) cluster IP address: 192.168.10.10
+Specify the netmask for the cluster IP address [255.255.255.0]:
+HA Configuration files modified successfully.
+Configuration complete.
+
+
+ For each Enea Edge Management installation, place the local
+ interface IP first in the list of IPs. This will optimize database
+ communication, since the Enea Edge Management uses the list of IPs
+ sequentially, therefore using the internal loopback interface for
+ communicating with the database.
+
+
+ Once the servers are up and running, log into the Primary and go to System and select Cluster
+ View. The list of Enea Edge Management servers should be
+ displayed, with one listed as Primary and the rest as Backup.
+
+
+
+
+ Upgrading a High Availability Deployment
+
+ Upgrading a High Availabilty deployment is a highly complex,
+ multi-step process that requires care to ensure both consistency and
+ high-availability. Some steps need to be done manually.
+
+
+
+ We start with the assumption that ucpeManager-1
+ is the "PRIMARY" server.
+
+
+
+ Shut down database services on one side of the network, for
+ example: MariaDB-4, MariaDB-5 and MariaDB-6.
+
+
+
+ Disconnect the network interfaces towards the VPN for machines
+ MariaDB-4, MariaDB-5 and MariaDB-6. This will prevent any attempts
+ at failover/synchronization.
+
+
+
+ Run the upgrade process on ucpeManager-3
+ and ucpeManager-4. This will upgrade the service
+ to the current release. Once the upgrade process completes, shutdown
+ the Enea Edge Management service on both machines.
+
+
+
+ Disconnect the ucpeManager-2 machine from
+ the network (which will take MariaDB-2 offline as well). At this
+ point, only the "PRIMARY" server is running, this is the start of
+ the interval when we are susceptible to single-server
+ failure.
+
+
+
+ Shutdown the MariaDB-2 process and run the Enea Edge
+ Management upgrade process on ucpeManager-2. This
+ will upgrade the service to the current release. Once the upgrade
+ process completes, shutdown the Enea Edge Management service on the
+ machine.
+
+
+
+ Reconnect the network interfaces towards the VPN for MariaDB-4
+ (ucpeManager-3), MariaDB-5
+ (ucpeManager-4) and MariaDB-6
+ (ucpeManager-2). Restart database services on
+ MariaDB-2, MariaDB-4, MariaDB-5 and MariaDB-6. This will allow
+ database services on all machines to synchronize, any data that has
+ been modified during the upgrade process will be made
+ consistent.
+
+
+
+ Shutdown the "Primary" server
+ (ucpeManager-1). At this point, the service is no
+ longer available.
+
+
+
+ Start the Enea Edge Management services on
+ ucpeManager-2. This machine will come up as the
+ new "PRIMARY" with the upgraded software. As part of the startup
+ process, it will upgrade the database and perform any other
+ upgrade-related functionality.
+
+
+
+ At this point (once startup completes), service is available.
+ However, we are still susceptible to single-server failure.
+
+
+
+ Start the Enea Edge Management services on
+ ucpeManager-3 and
+ ucpeManager-4. At this point, we are in
+ highly-available mode.
+
+
+
+ Upgrade the Enea Edge Management on
+ ucpeManager-1 (the one that has been shut down).
+ Once that upgrade is complete and the service restarts, the entire
+ setup has been upgraded to the new version.
+
+
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-getting-started/doc/book.xml b/doc/book-enea-edge-getting-started/doc/book.xml
new file mode 100644
index 0000000..f02f770
--- /dev/null
+++ b/doc/book-enea-edge-getting-started/doc/book.xml
@@ -0,0 +1,44 @@
+
+
+]>
+
+ Enea Edge Getting Started
+
+ Release Version
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/book-enea-edge-getting-started/doc/grafana.xml b/doc/book-enea-edge-getting-started/doc/grafana.xml
new file mode 100644
index 0000000..05276ed
--- /dev/null
+++ b/doc/book-enea-edge-getting-started/doc/grafana.xml
@@ -0,0 +1,266 @@
+
+
+ Using Grafana and InfluxDB
+
+ InfluxDB is essentially a time series database process that runs on a
+ server, while Grafana is a visualization tool for time series data. Grafana
+ is a very lightweight server-side application, and most of the monitoring
+ runs in a browser.
+
+
+ Deploying Grafana and InfluxDB
+
+ Grafana and InfluxDB can be deployed using images for Docker on
+ linux. These images are provided by Enea along with a deploy script and
+ predefined dashboards.
+
+ The Grafana and InfluxDB images can be deployed on the same machine
+ or on separate machines.
+
+
+ Prerequisites for Deploying an Image
+
+ The following must be present in order to deploy an image:
+
+
+
+ CentOS 7 Linux.
+
+
+
+ Docker for CentOS 7 installed on the machine and set to
+ autostart as a service.
+
+
+
+ Superuser rights on the CentOS 7 machine.
+
+
+
+
+
+ Deploying Grafana and InfluxDB
+
+ On the CentOS 7 server open a terminal, log into a bash shell with
+ the root account and perform the following:
+
+
+
+ Extract
+ Enea_Edge_Telemetry_Deploy_<version>-build<build_number>.tar.gz.
+
+ The directory in which the archive will be unpacked will be
+ denoted as: <Telemetry-installdir>.
+
+
+
+ Enter <Telemetry-installdir>.
+
+
+
+ Run the provided telemetry_deploy.sh
+ script.
+
+
+
+ When prompted, select what images you want to deploy.
+
+ If an image is already deployed, you will be prompted to
+ replace it.
+
+
+
+ During the InfluxDB deployment, you will be prompted to
+ provide a username and password. These must match the ones
+ configured in the Enea Edge Management for Telemetry.
+
+
+ Changing the InfluxDB username and password requires
+ redeploying the InfluxDB image.
+
+
+
+
+ Verify the installation by running the command docker
+ ps -a. The Grafana and InfluxDB containers should be
+ present and have the status Up.
+
+
+
+
+
+
+ Setting Grafana and InfluxDB parameters
+
+ Customizing InfluxDB and Grafana parameters can be done by selecting
+ System, then the Configuration menu, accessing the Properties tab, and clicking on the Telemetry tab. The settings that can be changed are
+ listed in the table below:
+
+
+ Telemetry settings
+
+
+
+
+
+
+
+
+
+
+ Field name
+
+ Description
+
+ Default value
+
+
+
+ Grafana Hostname or IP Address
+
+ The hostname or IP address where the Grafana instance is
+ installed.
+
+ no default
+
+
+
+ Grafana Port
+
+ The port Grafana uses.
+
+ 3000
+
+
+
+ Grafana Dashboard
+
+ The dashboard that should be used when opening Grafana
+ using the Enea Edge Management.
+
+ host
+
+
+
+ InfluxDB Hostname or IP Address
+
+ The hostname or IP address where the InfluxDB database is
+ installed.
+
+ no default
+
+
+
+ InfluxDB Port
+
+ The port used for communication between InfluxDB and the
+ Telemetry server.
+
+ 25826
+
+
+
+ InfluxDB Username
+
+ The username used for encrypting communication between
+ InfluxDB and the Telemetry server.
+
+ admin0
+
+
+
+ InfluxDB Password
+
+ The password used for encrypting communication between
+ InfluxDB and the Telemetry server.
+
+ admin
+
+
+
+
+
+ When changing any of the settings in the Telemetry tab, the Enea Edge Management will inform
+ all uCPE devices of the change if they have telemetry running.
+
+
+ Telemetry Properties
+
+
+
+
+
+
+
+
+
+
+ Starting and stopping Telemetry
+
+ When a uCPE Device is selected, in the Operations menu, the Start
+ Telemetry and Stop Telemetry
+ options are available.
+
+ When starting Telemetry for a uCPE device, the Enea Edge Management
+ sends the following information about the InfluxDB:
+
+
+
+ The IP address and hostname where InfluxDB is installed.
+
+
+
+ The port used for communication between InfluxDB and the
+ Telemetry server.
+
+
+
+ The credentials used for encrypting communication between
+ InfluxDB and the Telemetry server.
+
+
+
+ These fields are read-only and are populated with the values already
+ set in the System Configuration. If one
+ of the fields is not set or if it does not have the desired value, modify
+ it in the System Configuration. The
+ password is sent encrypted using the Base64 scheme.
+
+
+ Telemetry Start Dialog
+
+
+
+
+
+
+
+
+ When the Telemetry status is changed on a uCPE device, a
+ notification is sent to the Enea Edge Management. These notifications can
+ be inspected under Fault found in the
+ Event menu.
+
+
+
+ Launching Grafana
+
+ When a uCPE Device is selected, the Telemetry button is available. Pressing this button
+ will open a new window pointing to Grafana. The current uCPE device will
+ be selected in Grafana.
+
+ The hostname or IP Address and the port of the Grafana installation
+ can be customized by selecting System,
+ then the Configuration menu, accessing
+ the Properties tab, and clicking on the
+ Telemetry tab. The default dashboard
+ available when launching Grafana can be customized as well.
+
+
diff --git a/doc/book-enea-edge-getting-started/doc/images/archive_list.png b/doc/book-enea-edge-getting-started/doc/images/archive_list.png
new file mode 100755
index 0000000..302f32d
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/archive_list.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/collect_debug_logs.png b/doc/book-enea-edge-getting-started/doc/images/collect_debug_logs.png
new file mode 100755
index 0000000..6582737
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/collect_debug_logs.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/debug_settings.png b/doc/book-enea-edge-getting-started/doc/images/debug_settings.png
new file mode 100755
index 0000000..2c97b2c
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/debug_settings.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/dev_file_mg.png b/doc/book-enea-edge-getting-started/doc/images/dev_file_mg.png
new file mode 100755
index 0000000..a4a4f5c
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/dev_file_mg.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/download_files.png b/doc/book-enea-edge-getting-started/doc/images/download_files.png
new file mode 100755
index 0000000..cb686e4
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/download_files.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/edit_inter.png b/doc/book-enea-edge-getting-started/doc/images/edit_inter.png
new file mode 100755
index 0000000..fddde37
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/edit_inter.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/edit_inter_config.png b/doc/book-enea-edge-getting-started/doc/images/edit_inter_config.png
new file mode 100755
index 0000000..f9ab8aa
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/edit_inter_config.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/fault_events.png b/doc/book-enea-edge-getting-started/doc/images/fault_events.png
new file mode 100755
index 0000000..aeec955
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/fault_events.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/high_av_setup.png b/doc/book-enea-edge-getting-started/doc/images/high_av_setup.png
new file mode 100644
index 0000000..d119ecb
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/high_av_setup.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/onboard_a_vnf_image.png b/doc/book-enea-edge-getting-started/doc/images/onboard_a_vnf_image.png
new file mode 100755
index 0000000..da52202
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/onboard_a_vnf_image.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/ovs_bridges_tab.png b/doc/book-enea-edge-getting-started/doc/images/ovs_bridges_tab.png
new file mode 100755
index 0000000..0b3ec54
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/ovs_bridges_tab.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/prep_deploy.png b/doc/book-enea-edge-getting-started/doc/images/prep_deploy.png
new file mode 100755
index 0000000..2db2487
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/prep_deploy.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/prep_execution.png b/doc/book-enea-edge-getting-started/doc/images/prep_execution.png
new file mode 100755
index 0000000..404760b
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/prep_execution.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/telemetry_settings.png b/doc/book-enea-edge-getting-started/doc/images/telemetry_settings.png
new file mode 100644
index 0000000..276b716
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/telemetry_settings.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/telemetry_start.png b/doc/book-enea-edge-getting-started/doc/images/telemetry_start.png
new file mode 100644
index 0000000..81510b5
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/telemetry_start.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/vnf_space.png b/doc/book-enea-edge-getting-started/doc/images/vnf_space.png
new file mode 100755
index 0000000..57ed581
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/vnf_space.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/wap_external_interface.png b/doc/book-enea-edge-getting-started/doc/images/wap_external_interface.png
new file mode 100644
index 0000000..ee49fc1
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/wap_external_interface.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/images/wap_wireless_ap.png b/doc/book-enea-edge-getting-started/doc/images/wap_wireless_ap.png
new file mode 100644
index 0000000..b7c77bf
Binary files /dev/null and b/doc/book-enea-edge-getting-started/doc/images/wap_wireless_ap.png differ
diff --git a/doc/book-enea-edge-getting-started/doc/installation_guide.xml b/doc/book-enea-edge-getting-started/doc/installation_guide.xml
new file mode 100644
index 0000000..d9784a0
--- /dev/null
+++ b/doc/book-enea-edge-getting-started/doc/installation_guide.xml
@@ -0,0 +1,1193 @@
+
+
+ Setting up and Installing the Enea Edge Base Configuration
+
+ The setup and installation steps detailed below will deploy a base
+ configuration which will be used as a reference for more complex deployment
+ scenarios.
+
+
+ Hardware Requirements
+
+ The following hardware is needed for deploying the base
+ configuration:
+
+
+
+ One server running the CentOS 7 distribution
+
+
+ The CentOS 7 server must be updated to the latest revision
+ before installing Enea Edge.
+
+
+ The following will detail CPU, RAM and storage requirements for
+ the Enea Edge Management.
+
+
+
+ For small-sized deployments (tens of devices):
+
+
+
+ 4 cores
+
+
+
+ 16 GB RAM
+
+
+
+ 300 GB single disk storage
+
+
+
+
+
+ For mid-sized deployments (hundreds of devices):
+
+
+
+ 8 cores
+
+
+
+ 32 GB RAM
+
+
+
+ 300 GB single disk storage
+
+
+
+
+
+ For large deployments (thousands of devices):
+
+
+
+ 16 cores
+
+
+
+ 64-256 GB RAM
+
+
+
+ 1-2 TB single disk storage
+
+
+
+
+
+ The purpose of the CentOS 7 server is to host the Enea Edge
+ Management. Network access between the CentOS 7 server and the uCPE
+ devices is required. The Enea Edge Management and the uCPE devices
+ will be connected on separate subnets to avoid inconsistencies.
+
+
+
+ One or more uCPE devices.
+
+ Whitebox devices where the Enea Edge Runtime will be installed,
+ containing a minimum of 2 cores and 4 GB RAM and at least two ethernet
+ ports that will be configured as WAN and LAN during deployment.
+
+ When hosting an entire solution including one or several network
+ services, the hardware must also have the resources to host one or
+ more VNFs. During a typical evaluation, a dual VNF service on the Enea
+ Edge Runtime needs a CPU with 4-8 cores and at least 8 GB RAM. The
+ supported Intel CPUs of Enea Edge are documented in the
+ manual.
+
+ Enea Edge Runtime needs EFI support in BIOS to boot. When
+ configuring the uCPE device BIOS a serial connection is
+ required.
+
+
+
+ A laptop.
+
+ The laptop is used for 2 scenarios:
+
+
+
+ Installing the Enea Edge Runtime on uCPE Devices.
+
+
+
+ Connecting to the GUI of the Enea Edge Management for
+ management and configuration. Network access between the CentOS 7
+ server and the laptop is required. Please see the manual
+ available with your release, for recommended browsers.
+
+
+
+
+
+ A 16 GB USB stick used for the uCPE Device Installation.
+
+
+
+
+
+ Software Configuration
+
+ The CentOS 7 server requires a specific configuration for the setup
+ to work.
+
+
+ Firewall Configuration
+
+ Any firewall running on the CentOS 7 server may block the
+ management protocols required to communicate between the uCPE device and
+ the Enea Edge Management as well as between the Enea Edge Management and
+ its northbound clients. Quick handling of a blocking firewall would be
+ to disable it, typical for a lab environment, through:
+
+ sudo systemctl stop firewalld
+sudo systemctl disable firewalld
+sudo systemctl mask now firewalld
+
+ For an advanced firewall configuration, the following ports need
+ to be opened:
+
+
+ Ports to be Activated
+
+
+
+
+
+
+ 80
+
+ TCP
+
+ Required for GUI Access.
+
+
+
+ 443
+
+ TCP
+
+ Required for GUI Access and Device Connectivity.
+
+
+
+ 54327
+
+ UDP
+
+ Required for the Enea Edge Management High Availability
+ Configuration.
+
+
+
+ 5701:5708
+
+ TCP
+
+ Required for the Enea Edge Management High Availability
+ Configuration.
+
+
+
+ 4334
+
+ TCP
+
+ Required for Call Home.
+
+
+
+ 2021:2040
+
+ TCP
+
+ Required for Call Home when connecting uCPE Devices using
+ Enea NFV Access 2.3.0 or older.
+
+
+
+
+
+ Use the following command sequence to enable the required ports
+ for deployment of the Enea Edge Management:
+
+ sudo firewall-cmd --permanent --add-port=80/tcp
+sudo firewall-cmd --permanent --add-port=443/tcp
+sudo firewall-cmd --permanent --add-port=54327/udp
+sudo firewall-cmd --permanent --add-port=5701-5708/tcp
+sudo firewall-cmd --permanent --add-port=4334/tcp
+sudo firewall-cmd --permanent --add-port=2021-2040/tcp
+sudo firewall-cmd --reload
+
+
+ If the Enea Edge Management host resides behind a corporate
+ port-filtering firewall, then all the aforementioned ports need to
+ also be enabled on the respective firewall. As an additional
+ requirement, port 22/TCP also needs to be enabled for reverse SSH to
+ the Enea Edge Management.
+
+ No enabling and no forwarding rules are necessary for ports
+ 2021-2040 if using Enea Edge 2.4.0 or newer.
+
+
+
+
+ Configuring OpenJDK and PostgreSQL
+
+ The Enea Edge Management requires a specific Java version (OpenJDK
+ 11) and a PostgreSQL version to operate correctly.
+
+ Installing OpenJDK
+
+
+
+ Install OpenJDK 11 using the root account:
+
+ yum install java-11-openjdk-devel
+
+
+
+ Verify the installation:
+
+ java -version
+openjdk version "11.0.3" 2019-04-16 LTS
+OpenJDK Run Time Environment 18.9 (build 11.0.3+7-LTS)
+OpenJDK 64-Bit Server VM 18.9 (build 11.0.3+7-LTS, mixed mode, sharing)
+
+
+ If there are multiple java versions installed, switch
+ between them using the following command:
+
+ alternatives --config java
+
+ Optionally, the user can switch between the
+ javac versions using:
+
+ alternatives --config javac
+
+
+
+
+ The following system variables need to point to the OpenJDK 11
+ installation:
+
+ export JAVA_HOME=$(dirname $(dirname $(readlink $(readlink $(which java)))))
+export PATH=$PATH:$JAVA_HOME/bin
+export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
+
+
+ In order to make these system variables persistent, the
+ commands given above should be added to a script in the
+ /etc/profile.d/ folder. Sudo access is needed for this
+ operation.
+
+
+
+
+ The Enea Edge Management requires a specific PostgreeSQL version.
+ This is embedded in the Enea Edge Management installation. In order to
+ avoid conflicts, any existing PostgreeSQL installation needs to be
+ uninstalled.
+
+ Uninstalling PostgreSQL
+
+
+
+ Open a terminal with administrative rights, i.e. log into a
+ bash shell with root privileges.
+
+
+
+ Execute the following command to check if you have a currently
+ running PostgreSQL database server:
+
+ ps -ef | grep post
+
+
+
+ Remove the installed PostgreSQL server (including the existing
+ postgres user):
+
+
+ This step is not necessary if the Enea Edge Management will
+ be using an external database (like MariaDB).
+
+
+ yum remove postgres\*
+rm -rf /var/lib/pgsql
+rm -f /etc/postgres-reg.ini
+userdel postgres
+
+
+
+ If you have multiple spindles, it is recommended to let the
+ application run off one and the database off the other. This will result
+ in optimum performance. It is also recommended that the swap disk be the
+ same as the one used for the application.
+
+ Assuming another spindle is used (/drive2) do
+ the following:
+
+
+
+ Create a folder which will host the database (e.g.
+ emsDatabase).
+
+
+
+ Create a soft-link that will point to this folder:
+
+ ln -s /opt/ems/elementcenter/database /drive2/emsDatabase
+
+
+
+ Follow the installation steps for the Enea Edge Management
+ available in Installing the Enea Edge Management in
+ the
+ Manual.
+
+
+
+
+
+
+ uCPE Device Configuration
+
+
+ Determining the WAN and LAN ports
+
+ A typical whitebox comes with multiple physical network ports,
+ ready to be used. The user must determine the purpose and allocation of
+ each port. The allocation is later aligned with the software
+ configuration within the Web-installer.
+
+ A common way is to allocate the left ports to WANs and the right
+ ports to LANs. At least one port must be allocated to WAN and one to
+ LAN.
+
+
+
+ Determining the Device ID
+
+ Each uCPE device needs a unique identifier. This identifier is
+ used to match the registration in the Enea Edge Management and the
+ offline configuration of the uCPE device during ZTP (Zero Touch
+ Provisioning).
+
+ Select a text string to represent the uCPE device, e.g.
+ uCPE-1 or fwa-t1012vc_boston_1234.
+ It can have any length and any type of characters with the exception of
+ quotation characters (' or ") or line terminators (\n or \r) which can
+ interfere with the JSON format of the
+ install_data.json file.
+
+
+
+ Configuring the BIOS
+
+ The factory configuration of the BIOS may not match the
+ requirements of Enea Edge Runtime. The BIOS configuration needs to be
+ reviewed and potentially reconfigured to prepare for a successful
+ installation.
+
+ Access the BIOS using a serial cable between the uCPE device and
+ the laptop, to review and configure the BIOS correctly. The whitebox
+ vendor is expected to provide the right serial cable for the box. A
+ terminal emulator (such as putty) is needed on the laptop.
+
+ Enable the following BIOS features/configurations:
+
+
+
+ EFI
+
+
+
+ Intel Virtualization Technology (VT-x)
+
+
+
+ Intel Virtualization Technology for Directed I/O (VT-d)
+
+
+
+ SR-IOV
+
+
+
+ The boot order may also need to be modified to support
+ installation and execution of the Enea Edge Runtime on the uCPE
+ device.
+
+ The following boot order is recommended for a base
+ configuration:
+
+
+
+ Boot from USB
+
+
+
+ Boot from Disk
+
+
+
+ By arranging the above boot order there is no need for a further
+ configuration of the BIOS during installation and deployment.
+
+
+
+
+ Preparing the Deployment
+
+
+ Installing the Enea Edge Management
+
+ The Enea Edge Management can be installed using a fresh
+ (first-time) configuration or using a backup file of a previous
+ installation, created within the Enea Edge Management GUI.
+
+
+ Fresh Installation of the Enea Edge Management
+
+ On the CentOS 7 server open a terminal, log into a bash shell
+ with the root account and perform the following:
+
+
+
+ Extract
+ Enea_Edge_Management_<version>-build<build_number>.tar.gz
+
+ The directory in which the archive has been unpacked will be
+ denoted as: <uCPEM-installdir>.
+
+
+
+ Enter <uCPEM-installdir>/dist.
+
+
+
+ Choose the target installation folder, e.g.
+ /opt/ems. Everything will be installed under a
+ folder called /ucpemanager within the target
+ installation folder.
+
+ The application files will be installed in
+ /opt/ems/ucpemanager/application. The database
+ will be installed in
+ /opt/ems/ucpemanager/database.
+
+
+
+ Run the following interactive command:
+
+ ./install.sh /opt/ems \
+Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
+
+ The default configuration values are specified in brackets.
+ If no other value is preferred and typed in, pressing
+ ENTER will keep the default values. When there
+ is an option within parentheses (i.e.Y/N), a value must be
+ specified.
+
+
+ The same configuration values set now will need to be
+ provided when upgrading or uninstalling the Enea Edge
+ Management.
+
+
+
+
+ Database Configurations:
+
+
+
+ Are you using the embedded PostgreSQL database?
+ [Y/N]: Y.
+
+
+
+ Specify the database process password
+ [postgres]:
+
+
+
+ Specify the database ID (or name)
+ [ucpemanager]:
+
+
+
+ Specify the database server port
+ [5432]:
+
+
+
+ Specify a database user name
+ [postgres]:
+
+
+
+ Specify a database password
+ [postgres]:
+
+
+
+ Specify the database startup thread pool size
+ [1]:
+
+
+
+
+
+ Service Configurations:
+
+
+
+ Specify a service username
+ [ucpemanager]:
+
+
+
+ Specify a service password
+ [ucpemanager]:
+
+
+
+
+
+ High Availability Configurations:
+
+
+
+ Specify the IP address of the local interface: The
+ CentOS 7 Server loopback address:
+ 127.0.0.1.
+
+
+
+ Is this server part of a cluster? [Y/N]:
+ N.
+
+
+
+
+
+ Heap Configuration: Please enter the new
+ Maximum Heap Size [4g]:
+
+
+
+ Create the self-signed certificate: Specify IP
+ or domain name:
+
+
+ The certificate can be generated again by running the
+ createCertificate script from the
+ distribution folder.
+
+
+
+
+ This command will:
+
+
+
+ Extract the application files from the compressed
+ installation kit.
+
+
+
+ Install the bundled database.
+
+
+
+ Install the Enea Edge Management as a service with the
+ name ucpemanager.
+
+
+
+ Start the ucpemanager service
+
+
+
+
+
+ Using the IPv4 address of the CentOS 7 Server in a web
+ browser, running on the laptop, log into the Enea Edge Management
+ GUI using the default username and password:
+ admin/admin.
+
+
+
+
+ The IPv4 address of the CentOS 7 Server, connected to the same
+ network as the uCPE Devices, will be used as a configuration
+ parameter when setting up the uCPE devices.
+
+ If the CentOS 7 Server is installed behind NAT, the IPv4
+ address used will be the public IP of the NAT device and port
+ forwarding rules must be created to ensure the uCPE device can
+ access the Enea Edge Management. For more details, please see Firewall Configuration.
+
+
+
+
+ Installation of the Enea Edge Management using a System
+ Back-up
+
+ The Enea Edge Management can be restored if a backup file has
+ been previously created.
+
+ A backup file can be created by accessing the System menu, and clicking System Backup, from the Enea Edge Management
+ GUI. The resulting zip archive will be located in the
+ /opt/ems/ucpemanager/application/backup folder
+ and will be named
+ SystemBackup_MMMDD_YYYY_HHMM_SS.zip (e.g
+ System-Backup_Feb19_2013_2257_42.zip). Save the archive to another
+ location outside the Enea Edge Management installation folder for
+ future use.
+
+
+ The System Back-up file obtained from the Enea Edge Management
+ GUI (SystemBackup_MMMDD_YYYY_HHMM_SS.zip) is
+ different from the snapshot obtained during a Enea Edge Management
+ Upgrade or Uninstall operation
+ (ucpemanager-Backup-YYYYddMMHHmm.tar.gz) needed
+ for recovery of the Enea Edge Management. For more details, see
+ Restoring a previous Enea Edge
+ Management installation in the
+ Manual.
+
+
+ To install the Enea Edge Management with the restore option
+ provide an additional argument as shown below during
+ installation:
+
+ ./install.sh \
+/opt/ems Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz \
+SystemBackup_MMMDD_YYYY_HHMM_SS.zip
+
+
+
+
+ Preparing the USB stick for installation of the Enea Edge
+ Runtime
+
+ To install the Enea Edge Runtime, create a bootable USB stick with
+ the image you intend to install.
+
+ In the example below, step by step instructions are provided for
+ the CentOS 7 distribution. It's possible with the appropriate tools to
+ also use Windows OS or MacOS.
+
+
+ The .hddimg image is available in the
+ Enea_Edge_Runtime_Platform_
+ <processor>_<version>-build<build_number>.tar.gz
+ file you downloaded with your release.
+
+
+ Create a bootable USB stick
+ image
+
+
+
+ Copy the .hddimg image file provided by
+ Enea, into the CentOS 7 server.
+
+
+
+ Connect the USB stick to the CentOS 7 Server and identify the
+ USB device name given by the system with
+ lsblk:
+
+ NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
+sda 8:0 1 28.7G 0 disk
+sdb 8:0 0 111.8G 0 disk
+|-sdb1 8:1 0 111.8G 0 part
+
+
+
+ Copy the .hddimg image onto the USB
+ stick, e.g:
+
+ sudo dd if=./enea-nfv-access-<machine>.hddimg \
+of=/dev/sdb bs=4M conv=fsync
+
+ Where
+ enea-nfv-access-<machine>.hddimg is the
+ .hddimg file and sdb is the
+ assigned USB device name.
+
+
+
+
+
+ Preparing Physical Deployment for Installation
+
+
+ Preparing for Hardware Installation
+
+
+
+
+
+
+
+
+ While the uCPE device is powered off, in order to install and
+ configure the Enea Edge Runtime (using the prepared USB stick), connect
+ the laptop to a uCPE device LAN port. For this purpose, a Layer 2 switch
+ or direct cable connection can be used.
+
+
+
+ Installing Enea Edge - uCPE Device Installation
+
+ To initiate the installation of the Enea Edge Runtime do the
+ following:
+
+
+
+ Plug the USB stick into the uCPE device.
+
+
+
+ Power up the uCPE device and boot the USB stick.
+
+
+
+ The Web-installer application will start automatically and can
+ be accessed in a web browser on the laptop at
+ http://172.16.1.1 (port 80).
+
+
+
+ On the Requirements page of
+ the Web-installer, the user must confirm the current state of
+ installation prerequisites is inline with the desired state:
+
+
+
+ Requirements table. Minimum values apply to the
+ installation process only. For runtime operations, additional
+ resources should be available depending on the specific
+ workload. Requirements are color coded (green when met, red when
+ mandatory and not met, orange when optional and not met). The
+ Requirements table has the following fields:
+
+
+
+ Disk size (mandatory). 2GB or more are required for
+ the installation.
+
+
+
+ CPU cores (mandatory). 2 cores or more are required
+ for the installation.
+
+
+
+ RAM (mandatory). 2GB or more are required for the
+ installation.
+
+
+
+ VT-x (mandatory). Intel Virtualization Technology must
+ be enabled.
+
+
+
+ VT-d (optional, recommended). Intel Virtualization
+ Technology for Directed I/O should be enabled.
+
+
+
+ IOMMU Group separation (optional). If the hardware
+ does not support IOMMU Group separation, there are certain
+ limitations regarding how the vfio-pci
+ driver can be used. For more details, see the Known Issues and Limitations in
+ this Release in the
+ Manual.
+
+
+
+
+
+ Force installation checkbox. When enabled, the
+ installation can be performed even if some of the mandatory
+ requirements are not met or if non-fatal problems are detected
+ during the process.
+
+
+
+
+
+ On the Enea Edge Management
+ settings page of the Web-installer, the user must fill
+ in:
+
+
+
+ The static Enea Edge Management IP Address or FQDN. This can be
+ either:
+
+
+
+ The IP address of the Enea Edge Management host
+ machine, if the device can directly access it.
+
+
+
+ The IP address of the NAT device, if the Enea Edge
+ Management host is located behind a NAT. For more details,
+ please see Firewall
+ Configuration.
+
+
+
+ The Fully Qualified Domain Name (FQDN) of the Enea
+ uCPE Manager host machine.
+
+
+
+
+
+ The unique identifier of the uCPE device (called
+ "DeviceId" in this guide).
+
+
+
+ Customer Tags. They are used for Zero Touch Provisioning
+ (ZTP) and can be left empty for a base configuration. What can
+ be entered here (if needed), are the tag(s) specified when
+ creating an offline configuration in the Enea Edge Management. A
+ later addition of customer tags can only be done by reinstalling
+ the uCPE devices.
+
+
+
+
+
+ Connect the WAN cable to the uCPE device (see Figure 2). This
+ will be used as the uCPE management network interface, as described
+ below.
+
+
+
+ On the Network Setup page of
+ the Web-installer, the user must do the following:
+
+
+
+ Select a WAN interface to use as the management network
+ interface. This interface is used by the Enea Edge Management to
+ communicate with the uCPE device.
+
+
+
+ Plug-in additional WAN interfaces (if applicable) and
+ provide their Layer 3 configuration.
+
+
+
+
+
+ When the user has completed the configuration steps in the
+ Web-installer, Enea Edge Runtime is installed on the hard drive. At this
+ stage, the user should remove the USB stick and the LAN cable, and
+ shutdown the uCPE device. It will be started after necessary
+ configurations are done in the Enea Edge Management, as described
+ below.
+
+
+ If errors are detected during installation, full logs will be
+ available on the last page of the Web-installer. Please contact Enea
+ for log analysis. The system is not expected to be usable if errors are
+ reported during installation.
+
+ If the USB stick was booted in UEFI mode, a UEFI boot entry is
+ automatically created and the system will start booting from the hard
+ drive without further user configuration.
+
+
+
+
+ Preparing Physical Deployment for Execution
+
+
+ Preparing for Deployment Execution
+
+
+
+
+
+
+
+
+ The following network configuration is needed for managing the
+ uCPE device and service deployment:
+
+
+
+ Network connection between the server running the Enea Edge
+ Management and the laptop.
+
+
+
+ Network connection between the server running the Enea Edge
+ Management and the uCPE device.
+
+
+
+
+
+
+ Management of uCPE Devices
+
+ When the installation is complete the uCPE device can be managed in
+ the Enea Edge Management.
+
+
+ Add a default Offline Configuration
+
+ Zero Touch Provisioning is always turned on when a uCPE device
+ connects to the Enea Edge Management. To enable it in the Enea Edge
+ Management, an offline configuration needs to be registered for Day-0
+ configuration.
+
+
+ Day-0 configuration is a software lifecycle term referring to
+ early configurations used to put the uCPE device in an active state.
+ Day-1 Configurations are applied after Day-0 and set the uCPE device
+ and its service in an active state. Day-2 Configurations are live
+ configurations on the uCPE device and its service, applied after they
+ have been activated.
+
+
+ The offline configuration consists of data and parameters that are
+ meant to be automatically set when a uCPE device connects to the Enea
+ Edge Management for the first time. The configuration is typically
+ focused on setting up the network management of the uCPE device, e.g.
+ configuring network interfaces, WAN and LAN networking and service
+ chains.
+
+ For this base configuration, the offline configuration will be
+ left blank. The blank offline configuration can be filled with
+ user-specific values and data once the service is created, which is done
+ after the installation is complete.
+
+
+ If the offline configuration is not configured, an alarm will be
+ raised: Day-0 Config:ZTP:Major when the uCPE device
+ tries to connect to the Enea Edge Management, informing the user that
+ the ZTP setup failed for the uCPE device.
+
+
+ To create an offline
+ configuration
+
+ In a browser access the Enea Edge Management, open Applications and select Offline Config.
+
+
+
+ Create a new offline configuration in the GUI by selecting
+ the Add button and filling in the
+ mandatory fields: name,
+ deviceVersion and
+ deviceId.
+
+ The name is user defined and can be set to any unique text
+ string identifying the configuration. The
+ deviceVersion must match the Enea Edge Runtime
+ version of the uCPE device and the deviceId
+ must be the previously set identifier of the uCPE device
+ (DeviceId).
+
+
+
+
+
+ Add a uCPE device to the Management System
+
+ In order to enroll a uCPE device in the management system and
+ establish a management connection, the user will add uCPE device
+ information in the Enea Edge Management. This is accomplished by going
+ to Devices, selecting Manage and then clicking the Add button.
+
+ The relevant parameters are:
+
+
+
+ Type. The type of device to
+ be added, i.e Enea universal CPE.
+
+
+
+ Name. The name by which the
+ uCPE device is referred to in the Enea Edge Management.
+ (Mandatory).
+
+
+
+ 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 uCPE device communications. For
+ a base configuration, leave this flag unchecked.
+
+
+
+ Device ID. The unique
+ identifier of the uCPE device. (Mandatory).
+
+
+
+ For more details concerning Device Calls Home, please see Device Call Home Connection for
+ Deployment behind NAT in the
+ Manual.
+
+
+
+ Booting the uCPE device and adding it to the Map
+
+ When connectivity is established with the Enea Edge Management and
+ a uCPE device is already registered with a matching Device
+ ID, the installation is complete, and the connection is
+ established.
+
+ When a uCPE device is registered it can be manually added to the
+ map for overview. Right-click on the
+ map and select Place Device to put the
+ uCPE device on the map.
+
+ In case of management connection failure (e.g. due to a
+ misconfiguration), the uCPE device status will be seen as RED
+ (disconnected) in the Enea Edge Management. The uCPE device
+ configuration can be corrected by removing the WAN cable(s),
+ reconnecting the laptop to the LAN interface of the uCPE device and
+ rebooting it. At this point, the Web-installer can be accessed from the
+ laptop as described in Installing Enea Edge - uCPE Device
+ installation in the
+ Manual.
+
+
+
+
+ uCPE Device Monitorization and Control
+
+ Once the uCPE device is connected to the Enea Edge Management, it is
+ ready for central management. Two important functions available in the
+ Enea Edge Management GUI are alarm checking and resource
+ allocation.
+
+
+ Checking Alarms
+
+ The Enea Edge Management dashboard presents alarms in a specific
+ window on the front page.
+
+ An alarm can be easily triggered by disconnecting and reconnecting
+ the WAN ethernet cable from the uCPE device. The management system will
+ detect the broken link and raise an alarm: Device
+ Disconnected::Critical.
+
+ A separate Alarm Management window can be accessed from the Enea
+ Edge Management menu for in-depth access and programming of Alarms and
+ Events.
+
+
+
+ Checking uCPE device Resource Allocation
+
+ When the uCPE device is connected to the Enea Edge Management it
+ is of interest to check the amount of hardware resources in use.
+
+ To check CPU, RAM and disk utilization simply select the uCPE
+ device and go to the Virtual Machines
+ tab in the map view. The same view will show active VNFs running on the
+ uCPE device once instantiated.
+
+
+
+ Accessing the uCPE device CLI
+
+ As a final check to make sure the uCPE device was installed and
+ configured correctly, access the uCPE device Linux CLI by selecting the
+ uCPE device on the map and using the SSH
+ button from the panel. A new window will appear for CLI
+ access. The default user and password are root and
+ blank, respectively.
+
+ This is a pure Linux CLI providing access to standard Linux CLI
+ commands. The CLI is a central feature for running custom
+ scripting.
+
+
+ In case the uCPE device was installed behind a NAT device, the
+ reverse SSH connection will be used. For more details, please see
+ Device Call Home Connection for
+ deployment behind NAT in the
+ Manual.
+
+
+
+
diff --git a/doc/book-enea-edge-getting-started/doc/introduction.xml b/doc/book-enea-edge-getting-started/doc/introduction.xml
new file mode 100644
index 0000000..4dec1e1
--- /dev/null
+++ b/doc/book-enea-edge-getting-started/doc/introduction.xml
@@ -0,0 +1,264 @@
+
+
+
+ Overview
+
+ This document describes the Enea Edge and provides installation
+ steps for deploying a base configuration in order to create:
+
+
+
+ A functional Enea Edge Management installation ready to manage uCPE
+ devices.
+
+
+
+ One or several managed uCPE devices, ready to host network
+ services, using one wired WAN and one wired LAN connection.
+
+
+
+ Extended deployment and configuration options are also detailed in the
+ following chapters.
+
+
+ Enea Edge
+
+ Enea Edge for universal Customer Premise Equipment (uCPE) is a
+ virtualization and management platform, which allows end-users to onboard,
+ instantiate, and run third-party VNFs onto their systems. It is comprised
+ of two major components working in close cooperation:
+
+
+
+ The Enea Edge Runtime, which acts as the host
+ for Virtualized Network Functions (VNFs) and provides management over
+ NETCONF.
+
+
+
+ The Enea Edge Management, a solution that runs on an external
+ server, used for VNF Management and managing large numbers of uCPE
+ devices.
+
+
+
+ In addition, Enea Edge includes a framework for
+ automation and testing. More information can be found in
+ .
+
+ Details concerning release content, including documentation
+ structure, are provided in the manual included
+ with your release.
+
+
+ Enea Edge Runtime
+
+ Enea Edge Runtime is a lightweight,
+ multi-architecture virtualization platform built on de-facto standards
+ in an SDN/NFV ecosystem. It is designed for a high networking
+ performance with minimal hardware footprint, by only providing relevant
+ functionalties and technologies.
+
+ Virtualization methods include Virtual Machines (KVM / QEMU) and
+ container(s) (Docker). High networking throughput and low latency are
+ ensured by accelerated data plane relying on technologies like DPDK,
+ OVS-DPDK and SR-IOV/PCI-Passthrough. Key functionalities, such as
+ platform software management, virtualized networking, VNFs life-cycle
+ management and FCAPS are provided through the YANG-modelled NETCONF
+ protocol.
+
+
+ VNF Space
+
+
+
+
+
+
+
+
+
+
+ Enea Edge Management
+
+ The Enea Edge Management is centralized control system providing
+ uCPEs domain management capabilities through a GUI and REST API. It can
+ be deployed on a host or a virtual machine running 64-bit CentOS 7 on an
+ x86 platform. The Enea Edge Management uses a southbound NETCONF protocol
+ to connect and manage uCPE devices.
+
+ The Enea Edge Management provides the following key features:
+
+
+
+ Enea Edge Runtime Software Management
+
+
+
+ VNF Onboarding
+
+
+
+ VNF Management
+
+
+
+ FCAPS
+
+
+
+ Zero Touch Provisioning
+
+
+
+ Alarms / Events management and monitoring
+
+
+
+
+
+
+ Definitions and Acronyms
+
+
+ Definitions
+
+
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-getting-started/doc/log_collector.xml b/doc/book-enea-edge-getting-started/doc/log_collector.xml
new file mode 100644
index 0000000..baa1340
--- /dev/null
+++ b/doc/book-enea-edge-getting-started/doc/log_collector.xml
@@ -0,0 +1,401 @@
+
+
+ Using the Log Collector
+
+ Troubleshooting problems on the uCPE device require an analysis of a
+ set of information i.e. logs collected from the uCPE device and/or the Enea
+ Edge Management. The following information describes how the log collection
+ mechanism works.
+
+
+ Log collecting using the Enea Edge Management
+
+ The Enea Edge Management allows for collecting a set of logs and state
+ information from a uCPE device.
+
+
+ Collecting the Logs
+
+ Collect the necessary log files and system details, then create an
+ archive (a tar file) on the uCPE device in the
+ /var/odm/log/archives folder:
+
+
+
+ Access Operations and then
+ select Collect Debug Logs.
+
+
+
+ Provide a file name in the new window.
+
+
+
+ Press the Execute button.
+
+ A success message is shown in the same window as shown below.
+ At this moment, the process of collecting logs on the uCPE device
+ starts.
+
+
+
+ Collecting Debug Logs
+
+
+
+
+
+
+
+
+
+
+ It might take some time for the archive to be created. When the
+ operation completes, a "CollectLogsComplete" notification is sent from
+ the uCPE device to the Enea Edge Management. This can be viewed in the
+ GUI in the Faults menu, after selecting
+Events.
+
+
+ Collecting Debug Logs
+
+
+
+
+
+
+
+
+
+
+
+ View collected Logs
+
+ A list with the archives containing already collected logs will be
+ shown in the Device File Listing table:
+
+
+
+ Access Files and then the
+Download button.
+
+
+
+ Press the List button.
+
+
+ Device File Listing Table
+
+
+
+
+
+
+
+
+
+
+
+ If the filename you specified does not appear, it might still be
+ in the process of creation. Click on the Refresh
+ icon at the bottom of the table until you can see the desired file
+ listing.
+
+
+
+
+ Downloading Logs from the uCPE Device
+
+ This option transfers a debug file archive from the uCPE device to
+ Enea Edge Management.
+
+
+
+ Access Files and choose the
+ Download button.
+
+
+
+ Press the List button.
+
+
+
+ In the Device File Listing table, select
+ the archive you want to download from the uCPE device to Enea Edge
+ Management.
+
+
+
+ Press the Download from Device
+ button.
+
+ The archive will be downloaded from the uCPE device and stored
+ on the Enea Edge Management.
+
+
+
+
+ The archive will not be deleted from the uCPE device after
+ download.
+
+
+
+
+ Downloading collected Logs locally
+
+ This option downloads a logs archive from the Enea Edge Management to
+ a local (user) machine for analysis. The archive must first be available
+ in the Enea Edge Management in order to be downloaded.
+
+
+
+ Access the Devices menu and select
+Files.
+
+
+
+ Select the Downloaded Files tab.
+
+
+
+ Select an archive from the Downloaded Files
+ table.
+
+
+
+ Click the Download button.
+
+ The file will be downloaded in browser's download
+ folder.
+
+
+ Downloaded Files Table
+
+
+
+
+
+
+
+
+
+
+
+
+ Deleting a Logs Archive from a uCPE device
+
+ Use this option when you want to delete unnecessary collected logs
+ on the uCPE device.
+
+
+
+ Access Files and then click the
+ Download button.
+
+
+
+ Press the List button.
+
+
+
+ In the Device File Listing table, select
+ the archive you want to delete from the uCPE device.
+
+
+
+ Press the Delete button.
+
+ The archive will be deleted from the uCPE device and the table
+ will be updated.
+
+
+
+ The same can be achieved using these alternative options:
+
+
+
+ Access the Operations menu and
+select Delete Debug Log Archive.
+
+
+
+ Provide a file name in the new window.
+
+
+
+ Press the Execute button.
+
+ A success message is displayed if the file is deleted from the
+ uCPE device correctly.
+
+
+
+
+
+ Deleting a Logs Archive from the Enea Edge Management
+
+ This option deletes a logs archive from the Enea Edge
+ Management.
+
+
+
+ Access the Devices menu, then select
+ Files.
+
+
+
+ Select the Downloaded Files tab.
+
+
+
+ Select an archive from the Downloaded Files
+table.
+
+
+
+ Click the Delete button.
+
+ The file will be deleted from the Enea Edge Management and the
+ table will be updated.
+
+
+
+
+ Deleting the logs file from the Enea Edge Management does not
+ affect the file located on the uCPE device.
+
+
+
+
+ Enabling/Disabling of the Log Collector via Permissions
+
+ To disable the ability to access/download the uCPE device's
+ debug-log files from the Enea Edge Management, the appropriate permissions
+ must be changed:
+
+
+
+ Access the Security menu,
+then select Configuration.
+
+
+
+ Click the Security Groups tab.
+
+
+
+ Click the desired group.
+
+
+
+ Click the Permissions tab on the right
+ side.
+
+
+
+ Click the Devices tab like in the image
+ below.
+
+
+
+ Change the Device File Management option to
+ none to disable the feature.
+
+
+
+
+ Device File Management
+
+
+
+
+
+
+
+
+
+
+ Downloading Enea Edge Management Logs
+
+ Often, sending the Enea Edge Management logs together with collected
+ uCPE device logs to the support team provides important information for
+ troubleshooting (especially in cases of connectivity issues with the
+ uCPE device and error popups).
+
+ Enea Edge Management log files are located in
+ application/logs/ in the Enea Edge Management's
+ installation folder
+ (e.g./opt/ems/ucpemanager/application/logs). They
+ can be copied from that location, or they can be downloaded using the
+ Enea Edge Management GUI by performing the following:
+
+
+
+ Access Test, then Debug
+ Settings and select the Log Files tab.
+
+
+
+ Select the desired log file
+ (ucpemanager.log or
+ watchdog.log) and press the
+ Download button.
+
+
+
+ A new (blank) popup window opens and the file is downloaded
+ locally. This popup can be closed after the download.
+
+
+
+ Repeat steps 2. And 3. Until all the desired log files have
+ been downloaded
+
+
+
+
+ Debug Settings
+
+
+
+
+
+
+
+
+
+
+
+ Log collecting without using the Enea Edge Management
+
+ Log collection from uCPE Devices can also be done when there is no
+ Enea Edge Management connection. A SSH connection to uCPE Device is needed
+ for use of the log collector script, which can be found in the uCPE Device
+ file system in /usr/local/enea/.
+
+ The Log collector script takes relevant information about the system
+ and collects it in an archive:
+
+ ./log-collector.sh -p <LOG_PATHh> -n <ARCHIVE_NAME>
+
+ Where -p is the path where the log archive will
+ be saved, -n is the archive name.
+
+
+ If -p is not provided, the default path will be
+ used: /var/logcollector. If -n is
+ not provided, the default name will be used:
+ log_archive_<timestamp>.tar.gz.
+
+
+ To access the help menu of the script:
+
+ ./log-collector.sh -h
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-getting-started/doc/net_config_options.xml b/doc/book-enea-edge-getting-started/doc/net_config_options.xml
new file mode 100644
index 0000000..dae5b36
--- /dev/null
+++ b/doc/book-enea-edge-getting-started/doc/net_config_options.xml
@@ -0,0 +1,886 @@
+
+
+ Network Configuration Options
+
+ Various Advanced Network Configuration options can be done from Enea
+ Edge Management GUI.
+
+
+ Device Call Home Connection for Deployment behind NAT
+
+ The Device Call Home option enables the initiation of the connection
+ between the uCPE Device and the Enea Edge Management, from the uCPE
+ device. The Device Call Home option is required when deploying a uCPE
+ device behind NAT since the IP address of the uCPE device is hidden for
+ the Enea Edge Management.
+
+ Enable Device Call Home by marking the Device Call Home checkbox
+ when registering the uCPE device in Enea Edge Management. When using this
+ mechanism, the device will initiate a connection to the Enea Edge
+ Management for NETCONF traffic (over SSH), while the Enea Edge Management
+ waits for a device connection.
+
+
+
+ uCPE Device Network Configuration
+
+ The following describes the steps required for setting up the
+ virtualization infrastructure, ensuring that a uCPE device has networking
+ setup for virtualized service deployment. Networking is enabled by
+ selecting physical interfaces to be used by virtualized networking and
+ creating different types of bridges to enable VNF communication.
+
+ The Zero Touch Provisioning mechanism is also touched upon, as
+ alternative to manual configuration of the virtualization
+ infrastructure.
+
+
+ Configure DPDK
+
+ DPDK is an important functionality for accelerating networking
+ performance. The DPDK is enabled by default and should be utilized in
+ most configurations.
+
+ In use cases where CPU capacity is very limited, disabling DPDK
+ can free up CPU capacity and overall performance can improve. Navigate
+ to Configuration, then DPDK and deselect Enable
+ DPDK to disable the DPDK.
+
+
+ Disabling the DPDK cannot be done after other network
+ configurations have been made.
+
+
+ In Configuration, select
+ DPDK where DPDK resources can also be
+ configured such as:
+
+
+
+ LCore Mask. Allocated cores
+ for non-datapath OVS-DPDK threads (CPU core bitmask). Default:
+ 0x2.
+
+
+
+ PMD CPU Mask. Allocated cores
+ for datapath processing (CPU core bitmask). Default: 0x4.
+
+
+
+ Socket Memory. Hugepage
+ memory allocated for DPDK. Default: 1494.
+
+
+
+
+
+ Configure External Interfaces
+
+ Once a management connection with the uCPE device has been
+ established by using any of the supported methods, the virtualization
+ networking infrastructure can be configured either manually or by using
+ Zero Touch Provisioning.
+
+ 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.
+
+ To add an interface into the Enea Edge Management, select the uCPE
+ device, then from the top toolbar select Configuration, then External Interfaces, Configuration, and click the Add button. 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 DPDK can be attached to an OVS-DPDK
+ bridge.
+
+
+ Make sure the Enable DPDK
+ checkbox is selected by accessing Device, Configuration and choosing DPDK, otherwise no interface can be assigned
+ as DPDK.
+
+
+ To add a DPDK interface under the management system, set
+ appropriate values for the following fields:
+
+
+
+ Source: name of the physical interface.
+
+
+
+ Networking-type: dpdk
+
+
+
+ Dpdk-type: the kernel module that allows user space access
+ to the physical interface. Either the vfio-pci
+ (most commonly used type) or the igb_uio driver
+ can be used.
+
+
+
+
+
+ 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.
+
+
+
+ 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.
+
+ 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.
+
+
+
+
+
+ Wan Interface Type
+
+ WAN interfaces configured during the installation of the uCPE
+ device are automatically added in the Enea Edge Management as type
+ wan. The WAN interface used for management of the
+ uCPE device is marked with the Management property
+ set to True.
+
+ If a WAN interface is to be assigned for use by a VNF, it must
+ be changed into another interface type depending on the type of
+ connection that will be used. The management WAN interface cannot be
+ changed to a different type. It is automatically used when an In-band
+ management bridge is created.
+
+ How to Edit the Configuration of a Wan
+ Interface
+
+
+
+ To edit an interface configuration type from the Enea Edge
+ Management, select the uCPE device, then from the top toolbar
+ select the Configuration menu,
+ then External Interfaces and
+ Configuration. The already
+ configured interfaces are displayed here, as seen in the figure
+ above.
+
+
+
+ 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:
+
+
+ Editing an Interface
+
+
+
+
+
+
+
+
+
+
+
+ When changing the address-assignment from
+ static to DHCP, if any of the ip-address,
+ netmask or gateway fields have
+ invalid values a validation error will be triggered. These fields
+ must be empty or have the valid values for their respective address
+ assignment.
+
+
+
+
+ Wap Interface Type
+
+ Wireless Access Point (Wap) interfaces are used to create
+ Wireless Access Points. Only interfaces with
+ wap-capable capabilities can be added as WAP
+ interfaces.
+
+ How to edit the Configuration of a Wap
+ Interface
+
+
+
+ To edit an interface configuration from the Enea Edge
+ Management, select the uCPE device, then from the top toolbar
+ select the Configuration menu
+ then External Interfaces and
+ select Configuration. The already
+ configured interfaces will be displayed here.
+
+
+
+ In order to edit an already configured interface, (as in the
+ example popup shown below, a WAP interface) double click on the
+ desired one and a pop-up will appear. A different pop-up appears
+ for each type of interface. From the Host
+ Interface window, the following parameters are
+ configurable:
+
+
+
+ Country Code: the country code, a 2 letter
+ ISO3166-alpha2 identifier.
+
+
+
+ Wireless Band: 2.4 GHz or 5 GHz. Depending on the band
+ selection, the correct Wireless Mode and
+ Radio Channel must be provided.
+
+
+
+
+ Editing an Interface
+
+
+
+
+
+
+
+
+
+
+
+ Correct Country Code
+ selection is mandatory. All configuration options are available in
+ the Enea Edge Management GUI but only the Radio Settings that
+ conform with the selected country's official regulatory laws will be
+ applied when the Wireless AP is started on the uCPE Device.
+
+
+
+
+ Manual Configuration
+
+ For Manual Configuration of uCPE networking, select the uCPE
+ device first, then access the Configuration menu, and choose External Interfaces, where a list of available
+ network interfaces and their capabilities can be found.
+
+ After networking interfaces have been added to the Enea Edge
+ Management, the user can change the interface type (DPDK, SR-IOV,
+ Standard, WAN, WAP).
+
+
+ Configuration of External Interfaces
+
+
+
+
+
+
+
+
+
+
+
+ Configuring Bridges
+
+ After networking interfaces have been added to the Enea Edge
+ Management, the user can create the necessary OVS bridges.
+
+
+ OVS Bridges
+
+
+
+
+
+
+
+
+ How to add OVS bridges in the Enea Edge
+ Management
+
+
+
+ Select the uCPE device.
+
+
+
+ Select Configuration.
+
+
+
+ Click OpenvSwitch.
+
+
+
+ Select the Bridges option,
+ then click Add.
+
+
+
+
+ Depending on the settings found when accessing the Configuration menu and selecting DPDK, OVS bridges with or without DPDK support
+ will be used on the uCPE device.
+
+
+ There are three types of bridges which can be created, each one
+ fulfiling a different role.
+
+
+ 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.
+
+ The solution provided by Enea for in-band management is based
+ upon an OpenvSwitch bridge managing all traffic passing through the
+ WAN physical port. Any standard or DPDK-assigned network interface can
+ be used for the In-Band management bridge.
+
+ 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
+
+
+
+
+
+ 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.
+
+ For this setup, three types of traffic will pass over the WAN
+ physical interface:
+
+
+
+ Device management. Part of
+ the device configuration done by the Enea Edge Management.
+
+
+
+ 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.
+
+
+
+ To create a VNF In-Band Management bridge, the user must set
+ values for the following fields:
+
+
+
+ name: name of the bridge.
+
+
+
+ ovs-bridge-type: vnfMgmt
+
+
+
+ vnf-mgmt-address: select IPv4 as the type and fill in an
+ internal IP address for the bridge interface that will be
+ connected to the VNF management network, e.g 10.0.0.1.
+
+
+
+
+ VNF management interfaces must be configured in same subnet as
+ that used by the bridge interface connected to the VNF management
+ network.
+
+
+
+
+ Data-plane bridge
+
+ 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.
+
+
+
+ Allows for creation of Wireless Access
+ Points. This bridge type does not need a 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.
+
+
+
+ To create a Data-plane bridge, the user must set values for the
+ following fields:
+
+
+
+ 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.
+
+
+
+
+
+
+
+ Zero Touch Provisioning - Creating an Offline Configuration
+
+ Zero-Touch Provisioning (ZTP) refers to the process of when a device
+ starts up for the first time and its initial configuration is pushed down
+ by an external management system, so that it is setup for proper operation
+ without additional manual intervention by an operator. ZTP is an
+ alternative to Manual configuration.
+
+ A variety of operations can occur as part of ZTP such as initial
+ device setup, configuration of managed objects, etc. The goal is to set up
+ a device to the maximum possible extent without forcing an operator to be
+ physically present (initially) to manage the device.
+
+ An offline configuration is usually prepared in advance for the Enea
+ Edge Management to setup the virtualization infrastructure on the uCPE
+ device, as soon as a device enrolls into the management system.
+
+
+ Offline Configuration
+
+ The Offline Configuration subsystem is used to pre-populate a
+ configuration for a device that will be brought under management at a
+ future point in time. When creating an offline configuration store a
+ Device ID can be specified. This ID uniquely
+ identifies the device to be initialized.
+
+ Alternatively, a wildcard can be used in the Device
+ ID field, which results in a configuration being pushed on all
+ uCPE devices upon their initial connection towards the Enea Edge
+ Management.
+
+ If the offline configuration is not configured for a uCPE device,
+ an alarm will be raised: Day-0 Config:ZTP:Major,
+ which occurs when the uCPE device connects to the Enea Edge Management
+ informing that the ZTP setup failed for the specific uCPE device.
+
+ To create an offline configuration, select from the top toolbar
+ the Applications menu, then Offline Config and choose Add. The following fields should be
+ filled:
+
+
+
+ Name: name of the device.
+
+
+
+ Device type: Enea universal CPE.
+
+
+
+ DeviceVersion:
+
+
+
+ Config Set: uCPE Config
+
+
+
+ Device ID: device ID or a wildcard(*).
+
+
+
+ Device Grouping Tags: a tag to group devices. These tags match
+ the customer tags provided during the installation of the
+ device.
+
+
+
+ The Name is user defined and can be set to any unique text string
+ identifying the configuration. The Device Version will match the Enea
+ Edge version of the uCPE device and the Device ID will be set to the
+ previously set identifier of the uCPE device.
+
+ When a device connects to the Enea Edge Management for the first
+ time, it checks the device to see if it has been Zero Touch Provisioned
+ (ZTP). If not, it looks for an offline configuration that matches these
+ values, in the following order:
+
+
+
+ The Device ID.
+
+
+
+ The set of tags.
+
+
+
+ A "*" for Device ID (wildcard).
+
+
+
+ If a match is found, the offline configuration is sent to the
+ device as part of Zero-Touch-Provisioning.
+
+ After creating the Offline Config Store, access the device by
+ selecting Applications, then offline config and clicking Config App, to provision it with the required
+ initial configuration. This operation mirrors what happens during manual
+ configuration described previously.
+
+
+ The ZTP will only be triggered the first time a uCPE device
+ connects to the Enea Edge Management. Just changing an offline
+ configuration will not push the new changes to the device. If an
+ offline configuration is changed after uCPE device registration, a
+ factory reset can be executed to force a new ZTP to execute. Select
+ the device, then access the Operations menu and select factory reset.
+
+
+
+
+
+ Custom Scripts for Custom Networking Configurations
+
+ The custom scripts feature allows users to execute user-defined
+ scripts on the uCPE device at various times.This allows for more flexible
+ and advanced configurations such as a LTE modem configuration, advanced
+ network configurations or OVS flow rule programming at any time.
+
+
+ Uploading Scripts
+
+ The scripts need to be uploaded to the Enea Edge Management prior
+ to use. When uploading scripts to the Enea Edge Management make sure to
+ select the right script type.
+
+ The following script types are supported:
+
+
+
+ Once-before-startup. This script will only
+ execute once after the system has rebooted, prior to processing any
+ device configuration.
+
+
+
+ Always-before-startup. This script will
+ always execute after the system has rebooted, prior to processing
+ any device configuration.
+
+
+
+ Once-after-startup. The script will always
+ execute after the system has rebooted, after all device
+ configuration processes have completed.
+
+
+
+ Always-after-startup. This script will
+ always execute after all device configuration processes have
+ completed after the system has rebooted.
+
+
+
+
+ After a factory reset, any of the
+ Once-before-* or Once-after-*
+ scripts will be re-run as described above.
+
+
+ Follow the instruction below to upload scripts:
+
+
+
+ Access the Devices menu, then
+ Custom Scripts and choose Configure.
+
+
+
+ Select Upload to EMS.
+
+
+
+ In the Script Type menu,
+ select the type the uploaded script should have.
+
+
+
+ Press Choose File to select
+ the scripts needed, and then click Send.
+
+
+
+
+
+ Removing Scripts
+
+ Follow the instruction below to remove scripts:
+
+
+
+ Access the Devices menu, then
+ Custom Scripts and select Configure.
+
+
+
+ Select the script you want to delete from the Uploaded Scripts tab and then click Delete, which will remove the script
+ immediately from the Enea Edge Management.
+
+
+
+
+
+ Configuring Script Location
+
+ The location where the scripts are staged in the Enea Edge
+ Management can be chanaged as described below:
+
+
+
+ Access the Devices menu,
+ choose Custom Scripts and select
+ Configure.
+
+
+
+ Select the Configuration tab
+ and specify a new location to store the scripts.
+
+
+ Change the script storage location only if you have many
+ scripts which you would prefer to store on another partition,
+ otherwise leave this configuration as is.
+
+
+
+
+
+
+ Running the Scripts
+
+ How to run Custom Scripts
+
+
+
+ Access the Devices menu,
+ choose Custom Scripts and select
+ Apply Scripts.
+
+
+
+ In the Script Config Screen
+ pop up, select the devices from the device(s) chooser list on which
+ to run the scripts. Press the >
+ button to move the devices to the right side of the chooser, which
+ is the list of devices that will execute the selected
+ scripts.
+
+
+
+ Select the scripts from the list under the device(s) chooser
+ by pressing the + button.
+
+
+
+ In the pop-up window, select the scripts from the list. If
+ there are no scripts to select, then there is no script uploaded
+ with that particular type. Upload the script(s) needed and try
+ again.
+
+
+
+ Check the Reboot devices
+ checkbox if you want to reboot and execute the scripts at once and
+ then select ok.
+
+
+ The status of execution for the scripts can be seen by
+ accessing Fault, opening the
+ Events screen and filtering by
+ device and/or the event name
+ CustomScriptExecuted.
+
+
+
+
+
+
+
+ Wireless Access Point
+
+ The Wireless AP Screen from the Enea Edge Management Configuration
+ menu allows users to configure a Wireless Access Point.
+ A wap-capable interface and a LAN bridge must be added
+ before doing the Wireless AP configuration. For more details see sections
+ Wap interface Type and Data-plane bridge.
+
+ The following parameters are configurable:
+
+
+
+ SSID: the Wireless network name - any string with a max. length
+ of 32 octets.
+
+
+
+ Interface Name: the wap-capable external
+ interface.
+
+
+
+ Lan Bridge: the LAN bridge where wireless clients will be
+ hosted.
+
+
+
+ WAP Security Mode: open or
+ wpa2Psk. When choosing wpa2Psk,
+ a password and an encryption
+ must be provided. The password can be any string
+ with a minimum length of 8 and a maximum length of 63
+ characters.
+
+
+
+ DHCP Server: disabled or
+ enabled. When enabled is
+ selected, the range of IPs (IP Address Start -
+ IP Address End), Netmask and
+ Gateway values must be provided.
+
+
+
+
+ Wireless AP
+
+
+
+
+
+
+
+
+
+ Only a single Wireless AP is allowed on a physical interface. The
+ validation of the wap-capable interface is done when
+ adding the Wireless AP, so, in case of an error, the parameters of the
+ wap-capable interface must be rechecked. This can be
+ done by accessing the Configuration
+ menu and selecting External
+ Interfaces.
+
+
+
diff --git a/doc/book-enea-edge-getting-started/doc/troubleshooting.xml b/doc/book-enea-edge-getting-started/doc/troubleshooting.xml
new file mode 100644
index 0000000..4984a35
--- /dev/null
+++ b/doc/book-enea-edge-getting-started/doc/troubleshooting.xml
@@ -0,0 +1,226 @@
+
+
+ Troubleshooting and Recovery
+
+ In all scenarios where possible, collect the logs for debugging. More
+ information on log collecting can be found in Using the Log Collector in the
+ Manual.
+
+ The following is a small list of possible Enea Edge problems, and
+ their solutions. If you encounter other issues or can't get Enea Edge to
+ work successfully after consulting the information below, please use the
+ Enea Support Team Form, available in the
+ Manual
+ downloaded with your release.
+
+
+ Troubleshooting and Recovery
+
+
+
+
+
+
+ Enea Edge Problem
+
+ Solution
+
+
+
+
+
+ A uCPE device fails to connect to the Enea Edge Management
+ after installation.
+
+ If the uCPE device is not able to connect to the Enea Edge
+ Management after an installation, the Web-installer application is
+ started automatically on the uCPE device to change the configuration
+ via a web browser. Please see Booting the uCPE device and adding
+ it to the Map in the
+ Manual.
+
+
+
+ The uCPE Device cannot boot after an upgrade.
+
+
+
+ Perform a hardware reboot of the uCPE Device and select
+ the previous Enea Edge Runtime image from the GRUB menu. This
+ action assumes physical access to the uCPE device.
+
+
+
+ Reinitiate the Upgrade procedure according to the steps
+ in section uCPE device upgrades in the
+
+ Manual.
+
+
+
+
+
+ After a failed uCPE device upgrade the previous Enea Edge
+ image (from the GRUB menu) does not boot.
+
+ Reinstall Enea Edge on the uCPE device and redeploy the
+ initial configuration and virtualized services, by following the
+ steps in Installing Enea Edge - uCPE Device
+ installation in the
+ Manual.
+
+
+
+ The Enea Edge Management upgrade fails and a working snapshot
+ is available.
+
+ If a working snapshot obtained during a previous Upgrade or
+ Uninstall is available
+ (ucpemanager-Backup-YYYYddMMHHmm.tar.gz):
+
+
+ Cleanup the current upgrade attempt with:
+
+ ./cleanup.sh /opt/ems
+
+
+
+ Restore the previous installation as described in Restoring a previous
+ Enea Edge Management installation in the
+ Manual.
+
+
+
+
+
+ The Enea Edge Management upgrade fails and no working
+ snapshot is available, but a System Back-up file exists.
+
+
+
+ Cleanup the current upgrade attempt with:
+
+ ./cleanup.sh /opt/ems
+
+
+
+ Perform an installation with the restore option of a
+ previous Enea Edge Management configuration as described in
+ Installation of the
+ Enea Edge Management using a System Back-up in the
+ Manual.
+
+
+
+
+
+ The uCPE device is booted, the ssh connection is available
+ but the device is not connected to the Enea Edge Management.
+
+
+
+ Perform a hardware reboot on the uCPE device to
+ reinitiate the connection mechanism.
+
+
+
+ Use the Reconnect
+ button from the Enea Edge Management's GUI.
+
+
+
+ Connect to uCPE Device console and run the factory reset
+ script:
+
+ /usr/local/odm/bin/factory_reset.sh
+
+
+
+ If the above actions do not work, reinstall and
+ reconfigure the device using the steps provided in Installing Enea Edge - uCPE
+ Device installation in the
+ Manual.
+
+
+
+
+
+ The SSH connection to the device cannot be
+ established.
+
+ Perform a hardware reboot on the uCPE device. If the problem
+ is not fixed, reinstall and reconfigure the device using the steps
+ provided in Installing Enea Edge - uCPE Device
+ installation in the
+ Manual.
+
+
+
+ The VNF Service is not working as expected after
+ reconfiguration (e.g. a VNF chain is malfunctioning).
+
+
+
+ Undo all flows and/or configuration changes in order to
+ move the system to a previously working configuration.
+
+
+
+ Reboot the device by accessing Operations and then selecting Reboot from within the Enea Edge
+ Management.
+
+
+
+ If the above actions do not work, redeploy all services.
+ This is done by cleaning up the existing configuration by
+ accessing Operations, then
+ selecting Factory Reset for a
+ specific device and redeploying the VNF services.
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-system-test-specification/doc/sample_test_cases.xml b/doc/book-enea-edge-system-test-specification/doc/sample_test_cases.xml
new file mode 100644
index 0000000..b1bfa1e
--- /dev/null
+++ b/doc/book-enea-edge-system-test-specification/doc/sample_test_cases.xml
@@ -0,0 +1,1804 @@
+
+
+ Sample Test Cases
+
+ The test cases specified in this chapter are implemented as a Sample
+ Test Suite included in the TH.
+
+
+ VNF, Device and Network Smoke Test Cases
+
+ The following is an automated test suite that acts as basic smoke
+ tests for Enea Edge, and as a sanity-check test suite for the AF and
+ TH.
+
+
+ VNF - Onboard a VNF Image
+
+ Description: Onboarding a VNF
+ Image into the Enea Edge Management. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/onboardVNFImage.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/vnf/onboardVNFRaw.py
+
+
+
+ Preconditions:
+
+
+
+ Add the VNF Image in the vnf_image folder
+ in the QCOW2 format: <AF-TH-install-dir>/vnf_image/<VNF-Image-name>.qcow2
+
+
+
+ A VNF Image JSON configuration file is created:
+ <AF-TH-install-dir>/vnf_config/<VNF-Descriptor-name>/<VNF-Descriptor-name>.jsonExample:<AF-TH-install-dir>/vnf_config/fortigateImage/fortigateImage.json
+
+
+
+ Action: Run the
+ onboardVNFImage.yml Ansible Playbook with the
+ <VNF-Image-name> and the
+ <VNF-Descriptor-name> as extra-vars:
+ ansible-playbook playbooks/onboardVNFImage.yml -e "vnfb=<VNF-Image-name> \
+vnfd=<VNF-Descriptor-name>"
+
+ Result: Output of the test case
+ run using the Test Harness:# Onboard VNF Image task result
+<VNF-Descriptor-name> successfully onboarded!Note: The test will not fail if the VNF Image is
+ already onboarded. The output will instead contain: # debug <VNF-Descriptor-name> already onboarded!
+
+
+
+ VNF - Offboard a VNF
+
+ Description: Removing a VNF
+ Descriptor from the Enea Edge Management. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/offboardVNF.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/vnf/offboardVNF.py
+
+
+
+ Precondition: The VNF has been
+ previously onboarded in the Enea Edge Management instance.
+
+ Action: Run the
+ offboardVNF.yml Ansible Playbook with the
+ <VNF-Descriptor-name> as extra-vars:
+ ansible-playbook playbooks/offboardVNF.yml -e "vnfd=<VNF-Descriptor-name>"
+
+ Result: Output of the test case
+ run using the Test Harness: # Remove Descriptor task result
+<VNF-Descriptor-name> was removed!Note: The test will not fail if the VNF
+ Descriptor does not exist. The output will instead contain:
+ # debug No Descriptor with name <VNF-Descriptor-name>!
+
+
+
+ Device - Add a device
+
+ Description: Adding a uCPE device
+ to the Enea Edge Management. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/addDevice.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/device/addDevice.py
+
+
+
+ Precondition: A device JSON
+ configuration file must be created: <AF-TH-install-dir>/lab_config/<Device-name>/<Device-name>.json
+
+ Example:<AF-TH-install-dir>/lab_config/intelc3850-2/intelc3850-2.json
+
+ Action: Run the
+ addDevice.yml Ansible playbook with the
+ <Device-name> as extra-vars: ansible-playbook playbooks/addDevice.yml -e "device=<Device-name>"
+
+ Result: Output of the test case
+ run using the Test Harness: # Add Device task result
+<Device-name> device was added!Note: The test will not fail if the device
+ already exists. The output will instead contain: # debug
+<Device-name> device already exists!
+
+
+
+ Device - Upload a Edge image
+
+ Description: Upload a Edge
+ image file onto the Enea Edge Management. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/uploadImage.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/device/uploadImage.py
+
+
+
+ Precondition: The image path must
+ already exist.
+
+ Action: Run the
+ uploadImage.yml Ansible playbook with the
+ <Image-path> and
+ <Upgrade-type> as extra-vars:
+
+ ansible-playbook playbooks/deleteUpgradeFile.yml -e \
+image_path="<Image-path>" -e upgrade_type="<Upgrade-type>"
+
+ Example:ansible-playbook playbooks/uploadImage.yml -e \
+image_path="/tmp/enea-nfv-access-xeon-d6.rootfs.ostree.tar.bz2" -e \
+upgrade_type="xeon_d"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ TASK [Upload NFVA image -- Run uploadImage.py module from automation_framework]
+localhost : ok=1 changed=1 unreachable=0 failed=0Note: The test will fail if the image file has
+ already been uploaded.
+
+ TASK [Upload NFVA image -- Run uploadImage.py module from automation_framework]
+ok=0 changed=0 unreachable=0 failed=1
+
+# debug
+A file with the same name is already uploaded.
+
+
+
+ Device - Delete Upgraded File
+
+ Description: Deleting an uploaded
+ Edge image file from the Enea Edge Management. For details please refer
+ to:
+
+
+
+ <AF-TH-install-dir>/playbooks/deleteUpgradeFile.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/device/deleteUpgradeFile.py
+
+
+
+ Preconditions: The image file
+ must already be uploaded onto the Enea Edge Management.
+
+ Action: Run the
+ deleteUpgradeFile.yml Ansible Playbook with the
+ <Image-name> as extra-vars:ansible-playbook playbooks/deleteUpgradeFile.yml -e \
+image_name="<Image-name>"
+
+ Example:ansible-playbook playbooks/deleteUpgradeFile.yml -e \
+image_name="enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2"
+
+ Result: Output of the test case
+ run using the Test Harness:TASK [Remove NFVA image -- Run deleteUpgradeFile.py module from automation_framework]
+localhost : ok=1 changed=1 unreachable=0 failed=0
+ Note: The test will fail if the image
+ file does not exist: TASK [Remove NFVA image -- Run deleteUpgradeFile.py module from automation_framework]
+ok=0 changed=0 unreachable=0 failed=1
+
+# debug
+No oid found for '<image_name>' image name
+
+
+
+ Device - Clear information about upgrades of uCPE devices
+
+ Description: Clear information
+ about upgrades of uCPE devices. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/clearCompletedUpgradesInfo.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/device/clearCompletedUpgradesInfo.py
+
+
+
+ Preconditions: No preconditions
+ needed.
+
+ Action: Run the
+ clearCompletedUpgradesInfo.yml Ansible
+ Playbook:ansible-playbook playbooks/clearCompletedUpgradesInfo.yml
+
+ Result: Output of the test case
+ run using the Test Harness:TASK [Clear completed info about upgrading -- Run \
+clearCompletedUpgradesInfo.py module from automation framework]]
+localhost : ok=1 changed=1 unreachable=0 failed=0
+
+
+
+ Device - Install and Activate a Edge image
+
+ Description: Installing and
+ Activating a Edge image on a uCPE device from the Enea Edge Management.
+ For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/installAndActivate.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/device/installAndActivate.py
+
+
+
+ Preconditions:
+
+ The device must be previously added to the Enea Edge Management
+ instance.
+
+
+
+ The image file must already be uploaded onto the Enea Edge
+ Management.
+
+
+
+ Action: Run the
+ installAndActivate.yml Ansible Playbook with the
+ <Image-name>,
+ <Upgrade-type>, and the
+ <Device-name> as extra-vars:ansible-playbook playbooks/installAndActivate.yml -e \
+image_name="<Image_name>" -e upgrade_type="<Upgrade_type>" -e \
+device="<Device-name>"
+
+ Example:ansible-playbook playbooks/installAndActivate.yml -e \
+image_name="enea-nfv-access-xeon-d6.rootfs.ostree.tar.bz2" -e \
+upgrade_type=xeon_d -e device=inteld1521-16"
+
+ Result: Output of the test case
+ run using the Test Harness:TASK \
+[Install And Activate -- Run installAndActivate.py module from automation_framework]
+localhost : ok=1 changed=1 unreachable=0 failed=0
+ Note: The test will fail if the image
+ has already been installed on the uCPE device:TASK \
+[Install And Activate -- Run installAndActivate.py module from automation_framework]
+ok=0 changed=0 unreachable=0 failed=1
+
+# debug
+Duplicate entry - Release already installed
+
+
+
+ Device - Upload, Install and Activate a Edge image on a
+ uCPE device
+
+ Description: Upload, install and
+ activate a Edge image on a uCPE device from the Enea Edge Management. For
+ details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/installNFVAImage.yml
+
+
+
+ The playbook imports the previously described
+ playbooks:
+
+
+
+ playbooks/waitDeviceUp.yml
+
+
+
+ playbook/uploadImage.yml
+
+
+
+ playbook/installAndActivate.yml
+
+
+
+ playbook/deleteUpgradeFile.yml
+
+
+
+ playbook/clearCompletedUpgradesInfo.yml
+
+
+
+
+
+ Preconditions:
+
+
+
+ The device has to be previously added to the Enea Edge Management
+ instance.
+
+
+
+ A device JSON configuration file must be created:
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/<Device-name>.json
+
+
+
+ Action: Run the
+ installNFVAImage.yml Ansible Playbook with the
+ <Image-path>,
+ <Image-name>,
+ <Upgrade-type>, and the
+ <Device-name> as extra-vars: ansible-playbook playbooks/installNFVAImage.yml -e \
+device="<Device-name>" -e image_path="<Image-path>" -e \
+image_name="<Image-name>" -e upgrade_type="<Upgrade-type>"
+
+ Example:ansible-playbook playbooks/installNFVAImage.yml -e \
+device="inteld1521-16" -e \
+image_path=/tmp/enea-nfv-access-xeon-d5.rootfs.ostree.tar.bz2 -e \
+image_name=enea-nfv-access-xeon-d5.rootfs.ostree.tar.bz2 -e \
+upgrade_type=xeon_d
+
+ Result: Output of the test case
+ run using the Test Harness:localhost : ok=1 changed=1 unreachable=0 failed=0
+ Note: The test will fail if the one
+ imported playbook fails:ok=0 changed=0 unreachable=0 failed=1
+
+
+
+ Device - Wait a Device
+
+ Description: Wait for a uCPE
+ device to connect to the Enea Edge Management. For details please refer
+ to:
+
+
+
+ <AF-TH-install-dir>/playbooks/waitDeviceUp.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/device/waitDeviceUp.py
+
+
+
+ Preconditions:
+
+
+
+ The device has to be previously added to the Enea Edge Management
+ instance.
+
+
+
+ The device JSON configuration file must exist:
+ <AF-TH-install-dir>/lab_config/<Device-name>/<Device-name>.json
+
+
+
+ Action: Run the
+ waitDeviceUp.yml Ansible Playbook with the
+ <Device-name> as extra-vars: ansible-playbook playbooks/waitDeviceUp.yml -e "device=<Device-name>"
+
+ Result: Output of the test case
+ run using the Test Harness:# Wait Device task result
+<Device-name> device is connected!Note: The test will fail if the device does not
+ exist or it is not connected.
+
+
+
+ Device - Remove a Device
+
+ Description: Removing a uCPE
+ device from the Enea Edge Management. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/removeDevice.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/device/removeDevice.py
+
+
+
+ Preconditions:
+
+
+
+ The device has to be previously added to the Enea Edge Management
+ instance.
+
+
+
+ The device JSON configuration file must exist:
+ <AF-TH-install-dir>/lab_config/<Device-name>/<Device-name>.json
+
+
+
+ Action: Run the
+ removeDevice.yml Ansible Playbook with the
+ <Device-name> as extra-vars: ansible-playbook playbooks/removeDevice.yml -e "device=<Device-name>"
+
+ Result: Output of the test case
+ run using the Test Harness:# Remove Device task result
+<Device-name> device was removed!Note: The test will not fail if the device does
+ not exist. The output will contain: # debug
+<Device-name> device was not found!
+
+
+
+ Network - Bind a NIC
+
+ Description: Binding a physical
+ network interface (NIC) to a device. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/bindNIC.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/network/bindNetworkInterface.py
+
+
+
+ Preconditions:
+
+
+
+ A device must have been previously added and connected to the
+ Enea Edge Management instance.
+
+
+
+ A NIC JSON configuration file must exist: <AF-TH-install-dir>/lab_config/<Device-name>/<NIC>.json
+
+ Example:<AF-TH-install-dir>/lab_config/intelc3850-2/wan_nic.json
+<AF-TH-install-dir>/lab_config/intelc3850-2/lan_nic.json
+
+
+
+ Action: Run the
+ bindNIC.yml Ansible Playbook with the
+ <Device-name> and
+ <NIC> as extra-vars: ansible-playbook playbooks/bindNIC.yml -e "device=<Device-name> nic=<NIC>"
+
+ Result: Output of the test case
+ run using the Test Harness:# Bind NIC task result
+<NIC> binded successfully!Note: The test will not fail if the NIC is
+ already bound, it will be unbound and bound again with the provided
+ configuration.
+
+
+
+ Network - Unbind a NIC
+
+ Description: Unbinding a physical
+ network interface (NIC) from a device. For details please refer
+ to:
+
+
+
+ <AF-TH-install-dir>/playbooks/unbindNIC.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/network/unbindNetworkInterface.py
+
+
+
+ Preconditions:
+
+
+
+ A NIC is bound to a device in a Enea Edge Management instance.
+
+
+
+ A NIC JSON configuration file exists: <AF-TH-install-dir>/lab_config/<Device-name>/<NIC>.json
+
+
+
+ Action: Run the
+ unbindNIC.yml Ansible Playbook with the
+ <Device-name> and
+ <NIC> as extra-vars: ansible-playbook playbooks/unbindNIC.yml -e "device=<Device-name> nic=<NIC>"
+
+ Result: Output of the test case
+ run using the Test Harness: # Unbind NIC task result
+<NIC> unbinded!Note:
+ The test will not fail if the NIC is not bound. The output will instead
+ contain:# debug
+<NIC> is not binded!
+
+
+
+ Network - Create a Bridge
+
+ Description: Creating an OVS
+ network bridge on a uCPE device. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/addBridge.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/network/newNetworkBridge.py
+
+
+
+ Preconditions:
+
+ A NIC is bound to a device in a Enea Edge Management
+ instance.
+
+
+
+ A Bridge JSON configuration file exists:<AF-TH-install-dir>/lab_config/<Device-name>/<Bridge-name>.json
+
+ Example:<AF-TH-install-dir>/lab_config/intelc3850-2/wan_br.json
+<AF-TH-install-dir>/lab_config/intelc3850-2/lan_br.json
+
+
+
+ Action: Run the
+ addBridge.yml Ansible Playbook with the
+ <Device-name> and the
+ <Bridge-name> as extra-vars: ansible-playbook playbooks/addBridge.yml -e "device=<Device-name> bridge=<Bridge-name>"
+
+ Result: Output of the test case
+ run using the Test Harness: # Add Bridge task result
+<Bridge-name> network bridge was added!Note: The test will not fail if there already
+ exists a bridge with the same name. It will be deleted and the bridge
+ will be created again with the provided configuration.
+
+
+
+ Network - Remove a Bridge
+
+ Description: Removing an OVS
+ network bridge from a uCPE device. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/deleteBridge.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/network/delNetworkBridge.py
+
+
+
+ Preconditions:
+
+ A Bridge exists for a device in a Enea Edge Management
+ instance.
+
+
+
+ A Bridge JSON configuration file exists: <AF-TH-install-dir>/lab_config/<Device-name>/<Bridge-name>.json
+
+ Action: Run the
+ deleteBridge.yml Ansible Playbook with the
+ <Device-name> and the
+ <Bridge-name> as extra-vars: ansible-playbook playbooks/deleteBridge.yml -e "device=<Device-name> \
+bridge=<Bridge-name>"
+
+ Result: Output of the test case
+ run using the Test Harness: # Delete Bridge task result
+<Bridge-name> network bridge was deleted!Note: The test will not fail if the bridge does
+ not exist: # debug
+<Bridge-name> bridge not found!
+
+
+
+ Network - Configure a DPDK
+
+ Description: Enabling or
+ Disabling the DPDK support in OVS. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/configDPDK.yml.
+
+
+
+ <AF-TH-install-dir>/automation_framework/network/configDPDK.py.
+
+
+
+ Precondition:
+
+ A device must have been previously added and connected to the Enea Edge
+ Management instance.
+
+ Action: Run the
+ configDPDK.yml Ansible Playbook with the
+ <Device-name> and
+ <enable/disable> as extra-vars:ansible-playbook playbooks/configDPDK.yml -e "device=<Device-name> \
+state=<enable/disable>"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ # Configure DPDK task result
+DEBUG: Set DPDK state to <enable/disable>Note: DPDK use cannot be disabled if DPDK
+ interfaces are configured. The task will fail in this case.
+
+
+
+ Custom Scripts - Upload a Custom Script to the Enea Edge
+ Management
+
+ Description: Upload a Custom
+ Script to the Enea Edge Management. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/uploadCustomScript.yml.
+
+
+
+ <AF-TH-install-dir>/automation_framework/customScripts/upload.py.
+
+
+
+ Precondition:
+
+ <AF-TH-install-dir>/lab_config/customScripts
+ must contain a Custom Script file.
+
+ Action: Run the
+ uploadCustomScript.yml Ansible Playbook with the
+ <scriptName> and
+ <phase> as extra-vars: ansible-playbook playbooks/uploadCustomScript.yml -e "scriptName=<scriptName> \
+phase=
+<always-after-startup|once-after-startup|always-before-startup|once-before-startup>"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ # Upload Custom Script task result
+DEBUG: "{{ scriptName }} was uploaded to Enea Edge Management!"
+
+
+
+ Custom Scripts - Upload a Custom Script from the Enea Edge Management to
+ a Device
+
+ Description: Upload a Custom
+ Script from the Enea Edge Management to a Device. For details please refer
+ to:
+
+
+
+ <AF-TH-install-dir>/playbooks/uploadCustomScriptOnDevice.yml.
+
+
+
+ <AF-TH-install-dir>/automation_framework/customScripts/uploadOnDevice.py.
+
+
+
+ Preconditions:
+
+
+
+ A device must have been previously added and connected to the
+ Enea Edge Management instance.
+
+
+
+ A Custom Script must have been previously added to the Enea Edge
+ Management instance.
+
+
+
+ Action: Run the
+ uploadCustomScriptOnDevice.yml Ansible Playbook
+ with the <scriptName>,
+ <phase> and
+ <deviceName> as extra-vars: ansible-playbook playbooks/uploadCustomScriptOnDevice.yml -e "scriptName=<scriptName> \
+phase=
+<always-after-startup|once-after-startup|always-before-startup|once-before-startup> \
+device=<deviceName>"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ # Upload Custom Script on Device task result
+DEBUG: "{{ scriptName }} was uploaded to {{ device }}!"
+
+
+
+ Custom Scripts - Remove a Custom Script from the Enea Edge
+ Management
+
+ Description: Remove a Custom
+ Script from the Enea Edge Management. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/removeCustomScript.yml.
+
+
+
+ <AF-TH-install-dir>/automation_framework/customScripts/delete.py.
+
+
+
+ Precondition:
+
+ A Custom Script must have been previously added to the Enea Edge
+ Management.
+
+ Action: Run the
+ removeCustomScript.yml Ansible Playbook with the
+ <scriptName> and
+ <phase> as extra-vars: ansible-playbook playbooks/removeCustomScript.yml -e "scriptName=<scriptName> \
+phase=
+<always-after-startup|once-after-startup|always-before-startup|once-before-startup>"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ # Remove Custom Script in phase from Enea Edge Management task result
+DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from Enea Edge Management!"
+
+
+
+ Custom Scripts - Remove a Custom Script from a Device
+
+ Description: Remove a Custom
+ Script from a Device. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/removeCustomScriptOnDevice.yml.
+
+
+
+ <AF-TH-install-dir>/automation_framework/customScripts/deleteOnDevice.py.
+
+
+
+ Preconditions:
+
+
+
+ A device must have been previously added and connected to the
+ Enea Edge Management instance.
+
+
+
+ A Custom Script must have been previously added to the
+ Device.
+
+
+
+ Action: Run the
+ removeCustomScriptOnDevice.yml Ansible Playbook
+ with the <scriptName>,
+ <phase> and
+ <deviceName> as extra-vars: ansible-playbook playbooks/removeCustomScriptOnDevice.yml -e "scriptName=<scriptName> \
+phase=
+<always-after-startup|once-after-startup|always-before-startup|once-before-startup> \
+device=<deviceName>"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ # Remove Custom Script in phase from Device task result
+DEBUG: "{{ scriptName }} from phase {{ phase }} was removed from {{ device }}!"
+
+
+
+ Offline Configuration - Add an Offline Configuration
+ Store
+
+ Description: Adding an Offline
+ Config Store to the Enea Edge Management. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/addConfigStore.yml.
+
+
+
+ <AF-TH-install-dir>/automation_framework/device/addConfigStore.py.
+
+
+
+ Precondition:
+
+ The Offline Configuration Store should not already exist on
+ the Enea Edge Management. If it exists, the test will report a
+ duplicate.
+
+
+
+ A store JSON file needs to exist: <AF-TH-install-dir>/lab_config/<device-name>/store.json
+
+
+
+ Action: Run the
+ addConfigStore.yml Ansible Playbook with the
+ <device-name> as extra-vars: ansible-playbook playbooks/addConfigStore.yml -e \
+"device=<device-name>"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ # Add Config Store task result
+**********************************************************
+**********************************
+ * localhost - changed=False
+--------------------------------------------------
+ Config store for intelc3850-2 device was added!
+
+
+
+ Offline Configuration - Remove an Offline Configuration
+ Store
+
+ Description: Removing an Offline
+ Config Store from the Enea Edge Management. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/removeConfigStore.yml.
+
+
+
+ <AF-TH-install-dir>/automation_framework/device/removeConfigStore.py.
+
+
+
+ Precondition:
+
+ The Offline Configuration Store the user wishes to remove should
+ exist in the Enea Edge Management. If it does not, the test will say so.
+
+ Action: Run the
+ removeConfigStore.yml Ansible Playbook with the
+ <store-name> as extra-vars: ansible-playbook playbooks/removeConfigStore.yml -e \
+"store=<store-name>"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ # Remove Config Store task result **********************************
+*******************************************************
+ * localhost - changed=False
+ -- intelc3850-2 config store was removed! ---------
+
+
+
+ Offline Configuration - Add a network bridge to an Offline
+ Configuration Store
+
+ Description: Adding a network
+ bridge to an Offline Config Store in Enea Edge Management. For details please
+ refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/addOfflineBridge.yml.
+
+
+
+ <AF-TH-install-dir>/automation_framework/network/newNetworkBridge.py.
+
+
+
+ Precondition:
+
+
+
+ The Offline Configuration Store should exist in the Enea Edge
+ Management. If it does not, the test will say so.
+
+
+
+ A Bridge JSON configuration file needs to exist:
+ <AF-TH-install-dir>/lab_config/<device-name>/<bridge-name>.json
+
+
+
+ Action: Run the
+ addOfflineBridge.yml Ansible Playbook with the
+ <device-name>,
+ <store-name> and
+ <bridge-name> as extra-vars: ansible-playbook playbooks/addOfflineBridge.yml -e \
+"device=<device-name> store=<store-name> bridge=<bridge-name>"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ # debug *************************************************************
+******************************************************
+ * localhost - changed=False
+--------------------------------------------------
+ lan_br bridge already exists
+ --- will be deleted to create it with the provided configuration
+..
+# Add Bridge task result ********************************************
+******************************************************
+ * localhost - changed=False
+ -- lan_br network bridge was added! ------------
+
+ Note: if the bridge exists, it
+ will be removed and then re-added, as the output above shows.
+
+
+
+ Offline Configuration - Configure a DPDK
+
+ Description: Adding an "enable"
+ or "disable" DPDK state to an Offline Config Store. For details please
+ refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/configOfflineDPDK.yml.
+
+
+
+ <AF-TH-install-dir>/automation_framework/network/configDPDK.py.
+
+
+
+ Precondition:
+
+ An empty Offline Configuration Store should exist in Enea Edge
+ Management.
+
+ Action: Run the
+ configOfflineDPDK.yml Ansible Playbook with the
+ <store-name> and
+ <enable/disable> as extra-vars:
+ ansible-playbook playbooks/configOfflineDPDK.yml -e \
+"store=<store-name> state=<enable/disable>"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ DEBUG: Set DPDK state to disable
+INFO: Done
+
+ Note: the DPDK state cannot be
+ changed. Recreate the Offline Config Store and set the DPDK again if you
+ want to change the state.
+
+
+
+ Offline Configuration - Upload an offline configuration onto a
+ uCPE Device
+
+ Description: Uploading an offline
+ configuration to a uCPE Device. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/uploadConfigStore.yml.
+
+
+
+ <AF-TH-install-dir>/automation_framework/device/uploadConfigStore.py.
+
+
+
+ Precondition:
+
+
+
+ The Offline Configuration Store should exist in the Enea Edge
+ Management.
+
+
+
+ The device should be connected to the Enea Edge Management.
+
+
+
+ Action: Run the
+ uploadConfigStore.yml Ansible Playbook with the
+ <store-name> and
+ <device-name> as extra-vars:
+
+ ansible-playbook playbooks/uploadConfigStore.yml -e \
+"store=<store-name> device=<device-name>"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ # Upload Config Store task result ****************************
+ * localhost - changed=False ---------------
+ 2020-10-08 13:29:41,062 - INFO: Upload offline \
+ configuration to uCPE Device
+ 2020-10-08 13:30:01,315 - INFO: The '<store-name>' config \
+ store was successfully uploaded on device!
+ 2020-10-08 13:30:01,316 - INFO: Done
+
+
+
+ Offline Configuration - Get the offline configuration upload
+ status on the uCPE Device
+
+ Description: Get the offline
+ configuration upload status to a uCPE Device. For details please refer
+ to:
+
+
+
+ <AF-TH-install-dir>/playbooks/getUploadStatus.yml.
+
+
+
+ <AF-TH-install-dir>/automation_framework/device/getUploadStatus.py.
+
+
+
+ Precondition:
+
+
+
+ An upload of the offline configuration should be done on the
+ uCPE Device.
+
+
+
+ The device should be connected to the Enea Edge Management.
+
+
+
+ Action: Run the
+ getUploadStatus.yml Ansible Playbook with the
+ <device-name> as extra-vars:
+
+ ansible-playbook playbooks/getUploadStatus.yml -e \
+"device=<device-name>"
+
+ Result: Output of the test case
+ run using the Test Harness:
+
+ # Upload Config Store task result ****************************
+ * localhost - changed=False ---------------
+ 2020-10-08 14:13:24,422 - INFO: Get upload offline configure \
+ status on uCPE Device
+ 2020-10-08 14:13:24,521 - INFO: Successful: True
+ 2020-10-08 14:13:24,522 - INFO: Store name: <store-name>
+ 2020-10-08 14:13:24,523 - INFO: In progress: False
+ 2020-10-08 14:13:24,524 - INFO: A config store was successfully \
+ uploaded on device!
+ 2020-10-08 14:13:24,525 - INFO: Done
+
+
+
+
+ VNF Deployment and Lifecycle
+
+ The following details the automated suite that handles the testing
+ of the instantiation, lifecycle and destruction of a VNF for Enea Edge.
+
+
+ Instantiating a VNFI
+
+ Description: Creating a VNF
+ instance on a uCPE device. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/instantiateVNFI.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/vnf/instantiateVNFI.py
+
+
+
+ Preconditions:
+
+ A VNF Image is onboarded and a device is added and connected
+ to the Enea Edge Management. Depending on the VNF, other steps may be
+ required.
+
+
+
+ A VNFI JSON configuration file exists: <AF-TH-install-dir>/vnf_config/<VNF-Descriptor-name>/<VNFI-name>.json
+
+ Example:<AF-TH-install-dir>/vnf_config/fortigateImage/fortigateFWInstance.json
+
+
+
+ Action: Run the
+ instantiateVNFI.yml Ansible Playbook with the
+ <Device-name>,
+ <VNF-Descriptor-name> and the
+ <VNFI-name> as extra-vars: ansible-playbook playbooks/instantiateVNFI.yml -e "device=<Device-name> \
+vnfd=<VNF-Descriptor-name> vnfi=<VNFI-name>"
+
+ Result: Output of the test case
+ run using the Test Harness: # Instantiate VNF task result
+<VNFI-name> was instantiated!Note: The test will not fail if the VNF instance
+ already exists. The output will instead contain: # debug
+<VNFI-name> already exists!
+
+
+
+ Controlling a VNFI
+
+ Description: Changing the status
+ of a VNF instance (Pause, Resume, Stop, Start). For details please refer
+ to:
+
+
+
+ <AF-TH-install-dir>/playbooks/controlVNFI.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/vnf/controlVNFI.py
+
+
+
+ Precondition: A VNF is
+ instantiated on a uCPE device.
+
+ Action: Run the
+ controlVNFI.yml Ansible Playbook with the
+ <Device-name>,
+ <VNFI-name> and the
+ <Command> as extra-vars: ansible-playbook playbooks/controlVNFI.yml -e "device=<Device-name> \
+vnfi=<VNFI-name> status=<pause|resume|start|stop>"
+
+ Result: Output of the test case
+ run using the Test Harness: # Change VNFI Status task result
+<VNFI-name> status was set to <Command>Note: The test will not fail if the VNF instance
+ does not exist or if the specified command is not valid. Depending on
+ the case, the output will contain: # debug
+<VNFI-name> was not found!or# debug
+Invalid VNF Instance control command specified - <Command>
+
+
+
+ Destroying a VNFI
+
+ Description: Destroying a VNF
+ instance from a uCPE device. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/destroyVNFI.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/vnf/destroyVNFI.py
+
+
+
+ Precondition: A VNF is
+ instantiated on a uCPE device.
+
+ Action: Run the
+ destroyVNFI.yml Ansible Playbook with the
+ <Device-name> and the
+ <VNFI-name> as extra-vars: ansible-playbook playbooks/destroyVNFI.yml -e "device=<Device-name> \
+vnfi=<VNFI-name>"Result: Output of the test case run using the
+ Test Harness:# Destroy VNFI task result
+<VNFI-name> was destroyed!Note: The test will not fail if the VNF instance
+ does not exist. The output will instead contain: # debug
+<VNFI-name> was not found!
+
+
+
+
+ Service Creation and Lifecycle
+
+ This test suite contains more complex test cases designed to verify
+ service creation and service lifecycle management. These test cases also
+ serve as examples of how different services can be deployed using the
+ Automation Framework (AF) and the Test Harness (TH).
+
+
+ Fortigate VNF as a Firewall
+
+ This test case was implemented in two different ways to exemplify
+ both methods supported by the AF and TH to deploy such services.
+
+ How to deploy the FortiGate VNF as a
+ Firewall:
+
+
+
+ Add a uCPE device.
+
+
+
+ Wait for the uCPE device to be connected in the Enea Edge
+ Management.
+
+
+
+ Onboard the FortiGate VNF Image.
+
+
+
+ Bind 2 physical interfaces: wan_nic (this
+ physical interface has to be connected to the Lab Network) and
+ lan_nic.
+
+
+
+ Create 2 bridges: wan_br (using the
+ wan_nic interface) and lan_br
+ (using the lan_nic interface).
+
+
+
+ Instantiate the FortiGate VNF using the basic Firewall
+ configuration provided with your Enea Edge Release, and the
+ Fortigate License file.
+
+
+ Please contact the local Fortinet sales representatives in
+ your region to get the Fortigate License file.
+
+
+
+
+ For more information please refer to section FortiGate VNF as a Firewall in the
+
+ Manual.
+
+
+ FortigateFWInstance Test
+
+ Description: Instantiate the
+ FortiGate VNF as a Firewall and test it using an isolated network
+ namespace.
+
+ This example was implemented with the "Test Harness" method,
+ based on Ansible Playbooks. For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/fortigateFWService/instantiateFortigateFW.yml
+
+
+
+ <AF-TH-install-dir>/playbooks/fortigateFWService/testFortigateFWInstance.yml
+
+
+
+ <AF-TH-install-dir>/playbooks/fortigateFWService/cleanupTestFortigateFWInstance.yml
+
+
+
+ <AF-TH-install-dir>/playbooks/fortigateFWService/cleanupFortigateFWInstance.yml
+
+
+
+ Preconditions:
+
+
+
+ A device must have been previously added and connected to
+ the Enea Edge Management instance.
+
+
+
+ Add the Fortigate VNF Image
+ (fortios.qcow2) to the
+ <AF-TH-install-dir>/vnf_image
+ folder.
+
+
+
+ The device JSON configuration file is created:
+ <AF-TH-install-dir>/lab_config/<Device-name>/<Device-name>.json.
+
+
+
+ Add device settings in the hosts Ansible
+ inventory file under [fortigateFW] and remove
+ the intelc3850-2 example.
+
+ Example:intelc3850-2 ansible_host=172.24.12.114 ansible_port=22 \
+ansible_user=root ansible_pass=root
+
+
+
+ NIC JSON configuration files are created:
+
+
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/wan_nic.json
+
+
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/lan_nic.json
+
+
+
+
+
+ Bridge JSON configuration files are created:
+
+
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/wan_br.json
+
+
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/lan_br.json
+
+
+
+
+
+ Download the FortiGate VNF Firewall basic configuration file
+ from Enea, copy it into the
+ <AF-TH-install-dir>/vnf_config/fortigateImage
+ directory and rename it to
+ fortigateFW.conf.
+
+
+
+ Retrieve the FortiGate VNF license file from Fortinet or
+ Enea, copy it into the
+ <AF-TH-install-dir>/vnf_config/fortigateImage
+ directory and rename it to
+ fortigateLicense.lic.
+
+ For more information please refer to section FortiGate VNF as a Firewall in
+ the
+ Manual.
+
+
+
+ Action: Run the
+ instantiateFortigateFW.yml Ansible Playbook with
+ the <Device-name> as
+ extra-vars:ansible-playbook playbooks/fortigateFWService/instantiateFortigateFW.yml \
+-e "device=<Device-name>"
+
+ Result: Output of the test case
+ run using the Test Harness: # Test FortigateFWInstance task result
+FortigateFWInstance tested successfully!
+
+ Cleanup: Run the
+ cleanupFortigateFWInstance.yml Ansible Playbook
+ with the <Device-name> as extra-vars:
+ ansible-playbook playbooks/fortigateFWService/cleanupFortigateFWInstance.yml \
+-e "device=<Device-name>"
+
+
+
+ DeployFortigateFW Scenario
+
+ Description: Deploy the
+ Fortigate VNF as a Firewall. This example was implemented with the
+ "Automation Framework" method, based on the
+ unittestSuite.py Python module.
+
+ For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/unittestSuiteTest/deployFortigateFWScenario.yml
+
+
+
+ <AF-TH-install-dir>/playbooks/unittestSuiteTest/cleanupFortigateFWScenario.yml
+
+
+
+ <AF-TH-install-dir>/automation_framework/unittestSuite
+ directory.
+
+
+
+ Preconditions:
+
+
+
+ A device must have been previously added and connected to
+ the Enea Edge Management instance.
+
+
+
+ Add the FortiGate VNF Image
+ (fortios.qcow2) to the
+ <AF-TH-install-dir>/vnf_image
+ folder.
+
+
+
+ The device JSON configuration file is created:
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/<Device-name>.json.
+
+
+
+ The NIC JSON configuration files are created:
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/wan_nic.json
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/lan_nic.json
+
+
+
+ The Bridge JSON configuration files are created:
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/wan_br.json
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/lan_br.json
+
+
+
+ Download the FortiGate VNF Firewall basic configuration from
+ Enea, copy it into the
+ <AF-TH-install-dir>/vnf_config/fortigateImage
+ directory and rename it to
+ fortigateFW.conf.
+
+
+
+ Retrieve the FortiGate VNF license file from Fortinet or
+ Enea, copy it into the
+ <AF-TH-install-dir>/vnf_config/fortigateImage
+ directory and rename it to
+ fortigateLicense.lic.
+
+ For more details, please refer to:
+
+
+
+ FortiGate VNF as a
+ Firewall in the
+ Manual.
+
+
+
+ Python Unit-Test Suite in
+ .
+
+
+
+
+
+ Action: Run the
+ deployFortigateFWScenario.yml Ansible Playbook
+ with the <Device-name> as extra-vars:
+ ansible-playbook playbooks/unittestSuiteTest/deployFortigateFWScenario.yml \
+-e "device=<Device-name>"
+
+ Result: Output of the test case
+ run using the Test Harness: # unittestSuite Deploy Test task result
+FortigateFW Scenario deployed successfully!
+
+ Cleanup: Run the
+ cleanupFortigateFWScenario.yml Ansible Playbook
+ with the <Device-name> as extra-vars:
+ ansible-playbook playbooks/unittestSuiteTest/cleanupFortigateFWScenario.yml \
+-e "device=<Device-name>"
+
+
+
+
+ chainedVNFsService
+
+ Description: This sample test
+ case corresponds to the "VNF Chaining Example Use-case" from the Enea
+ Edge Example Use-cases manual.
+
+ For details please refer to:
+
+
+
+ <AF-TH-install-dir>/playbooks/chainedVNFsService/chainedVNFsService.yml
+
+
+
+ <AF-TH-install-dir>/playbooks/chainedVNFsService/testChainedVNFsService.yml
+
+
+
+ <AF-TH-install-dir>/playbooks/chainedVNFsService/cleanupChainedVNFsService.yml
+
+
+
+ Preconditions:
+
+
+
+ Two devices must have been previously added and connected to
+ the Enea Edge Management instance.
+
+
+
+ Add the Fortigate VNF Image
+ (fortios.qcow2) to the
+ vnf_image folder.
+
+
+
+ Add the Juniper vSRX VNF Image
+ (juniper.qcow2) to the
+ vnf_image folder.
+
+
+
+ The device JSON configuration file(s) is created, e.g.:
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/<Device-name>.json.
+
+
+
+ Add device settings in the hosts Ansible
+ inventory file under [chainedVNFs]. Keep both
+ devices, the "site1" and "site2" entries, and update the values for
+ ansible_host, ansible_port,
+ ansible_user and ansible_pass,
+ as applicable.
+
+ Example:
+
+ site1 ansible_host=172.24.14.157 ansible_port=22 ansible_user=root \
+ansible_pass=root
+
+ site2 ansible_host=172.24.14.50 ansible_port=22 ansible_user=root \
+ansible_pass=root
+
+
+
+ NIC JSON configuration files are created for each of the
+ devices, where mgmt_nic is connected to the DHCP
+ from the Lab Network and wan_nic is connected
+ back to back to the other device:
+
+
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/mgmt_nic.json
+
+
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/wan_nic.json
+
+
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/lan_nic.json
+
+
+
+
+
+ Bridge JSON configuration files are created for each of the
+ devices:
+
+
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/vnf_mgmt_br.json
+
+
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/sfc_br.json
+
+
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/wan_br.json
+
+
+
+ <AF-TH-install-dir>/lab_config/<Device-name>/lan_br.json
+
+
+
+ Note that sample configuration files needed for devices' NICs
+ and bridges can be found in:
+ <AF-TH-install-dir>/lab_config/inteld1521-1
+ and
+ <AF-TH-install-dir>/lab_config/inteld1521-2.
+
+
+
+ Retrieve the FortiGate VNF Firewall basic configuration files
+ from Enea (FortiFW-Site1.conf and
+ FortiFW-Site2.conf), and copy them into the
+ <AF-TH-install-dir>/vnf_config/fortigateFWImage
+ directory.
+
+
+
+ Retrieve the FortiGate VNF license file from Fortinet or Enea,
+ copy it into the
+ <AF-TH-install-dir>/vnf_config/fortigateFWImage
+ directory and rename it to
+ fortigateLicense.lic.
+
+
+
+ Retrieve the Juniper vSRX basic configuration files from Enea
+ (vSRX-Site1.iso and
+ vSRX-Site2.iso), and copy them into the
+ <AF-TH-install-dir>/vnf_config/junipervSRXImage
+ directory.
+
+
+
+ Retrieve the vSRX-domain-update-script
+ from Enea and copy it into the junipervSRXImage
+ directory.
+
+ Please refer to the Chapter concerning the VNF Chaining Example Use-case in the
+
+ manual for additional information about preconditions.
+
+
+
+ Action: Run the
+ chainedVNFsService.yml Ansible Playbook as
+ follows:ansible-playbook playbooks/chainedVNFsService/chainedVNFsService.yml \
+-e "site1=inteld1521-1 site2=inteld1521-2 arch=XeonD"
+
+ Note that "arch" may either be { XeonD | AtomC } depending on the
+ target set chosen.
+
+ Result: Output of the test case
+ run using the Test Harness: # testChainedVNFsService task result
+******************************************************************************
+ * site1 - changed=False ----------------------------------------------
+----
+<site1_lan-ip> ---> <site2_lan-ip>
+LAN-to-LAN connectivity (through VPN tunnel)tested successfully!
+
+ Cleanup: Run the
+ cleanupChainedVNFsService.yml Ansible Playbook as
+ follows: ansible-playbook playbooks/chainedVNFsService/cleanupChainedVNFsService.yml \
+-e "site1=inteld1521-1 site2=inteld1521-2 arch=XeonD"
+
+
+
+
+ Custom Scripts - Basic Test
+
+ The basic test script can be found in
+ <AF-TH-install-dir>/playbooks/customScripts/basicTest.yml.
+
+ The basicTest.yml script requires the following
+ steps:
+
+
+
+ Upload a Custom Script onto the Enea Edge Management.
+
+
+
+ Upload the Custom Script onto a Device.
+
+
+
+ Reboot the Device.
+
+
+
+ Wait for the Device to be up and running.
+
+
+
+ Remove the Custom Script from the Device.
+
+
+
+ Remove the Custom Script from the Enea Edge Management.
+
+
+
+ Preconditions:
+
+
+
+ A device must have been previously added and connected to the
+ Enea Edge Management.
+
+
+
+ The device JSON configuration file must have been created:
+ <AF-TH-install-dir>/lab_config/<Device-name>/<Device-name>.json.
+
+
+
+ The custom script should have been previously saved in
+ <AF-TH-install-dir>/lab_config/customScripts.
+
+
+
+ Add device settings in the hosts Ansible inventory file under
+ [customScriptDevice] and remove the inteld1521-1
+ example.
+
+
+
+ Example:
+
+ [customScriptDevice]
+inteld1521-1 ansible_host=172.24.12.73 ansible_port=22 ansible_user=root \
+ ansible_pass=root
+
+ Action: Run
+ basicTest.yml (example data for
+ test_success_after_always):
+
+ ansible-playbook playbooks/customScripts/basicTest.yml -e "device=<Device-name>" \
+-e "scriptName=test_success_after_always" -e "phase=always-after-startup" \
+-e "expectedStatus=success"
+
+ Result: Output of
+ basicTest.yml:
+
+ test_success_after_always was uploaded to Enea Edge Management!
+test_success_after_always was uploaded to <Device-name>!
+
+<Device-name> device is connected!
+test_success_after_always from phase always-after-startup was removed \
+from <Device-name>!
+
+test_success_after_always from phase always-after-startup was removed \
+from Enea Edge Management!
+
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-system-test-specification/swcomp.mk b/doc/book-enea-edge-system-test-specification/swcomp.mk
new file mode 100755
index 0000000..2830cc3
--- /dev/null
+++ b/doc/book-enea-edge-system-test-specification/swcomp.mk
@@ -0,0 +1,10 @@
+# Component build specification
+
+# Version of THIS book
+BOOK_VER ?= $(REL_VER)-dev
+
+DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
+
+BOOKPACKAGES := book-enea-edge-system-test-specification
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge $(PROD_VER) System Test Specification"
+BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-edge-telemetry-open-source/doc/README b/doc/book-enea-edge-telemetry-open-source/doc/README
new file mode 100644
index 0000000..1077acb
--- /dev/null
+++ b/doc/book-enea-edge-telemetry-open-source/doc/README
@@ -0,0 +1,4 @@
+The licenses.xml in the git repository of Enea NFV Access Open Source Report
+is the frozen version belonging to the last official release of Enea NFV Access.
+The contents must be generated from the release script to obtain the latest
+lists of packages and licenses.
diff --git a/doc/book-enea-edge-telemetry-open-source/doc/about.xml b/doc/book-enea-edge-telemetry-open-source/doc/about.xml
new file mode 100644
index 0000000..5366626
--- /dev/null
+++ b/doc/book-enea-edge-telemetry-open-source/doc/about.xml
@@ -0,0 +1,12 @@
+
+
+
+ About this Report
+
+ This document contains the open source and license information
+ pertaining to telemetry packages provided with Enea Edge .
+
\ No newline at end of file
diff --git a/doc/book-enea-edge-telemetry-open-source/doc/book.xml b/doc/book-enea-edge-telemetry-open-source/doc/book.xml
new file mode 100644
index 0000000..9b0aa33
--- /dev/null
+++ b/doc/book-enea-edge-telemetry-open-source/doc/book.xml
@@ -0,0 +1,15 @@
+
+
+]>
+
+ Enea Edge Telemetry Open Source Report
+ Release Version
+
+
+
+
+
+
diff --git a/doc/book-enea-edge-telemetry-open-source/doc/licenses.xml b/doc/book-enea-edge-telemetry-open-source/doc/licenses.xml
new file mode 100644
index 0000000..3cffaae
--- /dev/null
+++ b/doc/book-enea-edge-telemetry-open-source/doc/licenses.xml
@@ -0,0 +1,290 @@
+
+
+
+ Packages and Licenses
+
+
+ Packages
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Package Name
+ Version
+ Description
+ License
+
+
+
+
+
+
+
+ InfluxDB
+ 1.3.7
+ InfluxDB database for Telemetry
+ MIT License
+
+
+
+ Grafana
+ 4.6.3
+ Analytics and interactive visualization web application
+ Apache License 2.0
+
+
+
+
+
+
+
+
+ Open Source Licenses
+
+
+ InfluxDB
+
+ MIT License
+
+ Copyright (c) 2018 InfluxData
+
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+
+ The above copyright notice and this permission notice shall be included in all
+ copies or substantial portions of the Software.
+
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ SOFTWARE.
+
+
+
+ Grafana
+
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright 2015 Grafana Labs
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+
+
diff --git a/doc/book-enea-edge-telemetry-open-source/swcomp.mk b/doc/book-enea-edge-telemetry-open-source/swcomp.mk
new file mode 100644
index 0000000..cf28954
--- /dev/null
+++ b/doc/book-enea-edge-telemetry-open-source/swcomp.mk
@@ -0,0 +1,10 @@
+# Component build specification
+
+# Version of THIS book
+BOOK_VER ?= $(REL_VER)-dev
+
+DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
+
+BOOKPACKAGES := book-enea-edge-telemetry-open-source
+BOOKDESC_$(BOOKPACKAGES) := "Enea Edge Telemetry Open Source Report"
+BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/README b/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/README
deleted file mode 100644
index e546e6f..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/README
+++ /dev/null
@@ -1,3 +0,0 @@
-The licenses.xml in the git repository of Enea NFV Access AFTH Open Source Report
-is the frozen version belonging to the last official release of Enea NFV Access.
-
diff --git a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/about.xml b/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/about.xml
deleted file mode 100644
index 4dc19aa..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/about.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
- About this Report
-
- This document contains the open source and license information
- pertaining to the Automation Framework and Test Harness provided with
- Enea Edge .
-
-
diff --git a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/book.xml b/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/book.xml
deleted file mode 100644
index f849ad4..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/book.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-]>
-
- Enea Edge Automation Framework and Test Harness Open Source Report
-
- Release Version
-
-
-
-
-
-
-
-
diff --git a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/licenses.xml b/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/licenses.xml
deleted file mode 100644
index 76a34e2..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-open-source/doc/licenses.xml
+++ /dev/null
@@ -1,112 +0,0 @@
-
-
-
- Packages and Licenses
-
-
- Packages
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Package Name
-
- Version
-
- Description
-
- License
-
-
-
-
-
- Automation Framework and Test Harness
-
-
-
- Configuration and Automation Framework for the Edge Manager
- GUI.
-
- ENEA-SRC-R2
-
-
-
- Automation Framework and Test Harness
-
-
-
- Configuration and Automation Framework for the Edge Manager
- GUI.
-
- ENEA-EXAMPLE-R2
-
-
-
-
-
-
-
- Open Source Licenses
-
-
-
- Proprietary Licenses
-
-
- ENEA-SRC-R2
-
- Copyright (C) 2019 by Enea.
- All rights reserved.
-
- This Software is furnished under a software license agreement and
- may be used only in accordance with the terms of such agreement.
- Any other use or reproduction is prohibited. No title to and
- ownership of the Software is hereby transferred.
-
- PROPRIETARY NOTICE
- This Software consists of confidential information.
- Trade secret law and copyright law protect this Software.
- The above notice of copyright on this Software does not indicate
- any actual or intended publication of such Software.
-
-
-
- ENEA-EXAMPLE-R2
-
- Copyright (C) 2019 by Enea Software AB.
- All rights reserved.
-
- This Example is furnished under a Software License Agreement and
- may be used only in accordance with the terms of such agreement.
- No title to and ownership of the Example is hereby transferred.
-
- The information in this Example is subject to change
- without notice and should not be construed as a commitment
- by Enea Software AB.
-
- DISCLAIMER
- This Example is delivered "AS IS", consequently
- Enea Software AB makes no representations or warranties,
- expressed or implied, for the Example.
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-auto-fw-th-open-source/swcomp.mk b/doc/book-enea-nfv-access-auto-fw-th-open-source/swcomp.mk
deleted file mode 100644
index 702e86f..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-open-source/swcomp.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-# Component build specification
-
-# Version of THIS book
-BOOK_VER ?= $(REL_VER)-dev
-
-DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
-
-BOOKPACKAGES := book-enea-nfv-access-auto-fw-th-open-source
-BOOKDESC_$(BOOKPACKAGES) := "Enea Edge $(PROD_VER) AF&TH Open Source Report"
-BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
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
deleted file mode 100644
index a569d59..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/automation_framework_test_harness.xml
+++ /dev/null
@@ -1,2800 +0,0 @@
-
-
- Automation Framework and Test Harness
-
-
- Automation Framework
-
- All Automation Framework sources are under the
- <AF-TH-install-dir>/automation_framework
- directory.
-
- The /device folder contains Python scripts for
- adding uCPE device(s), receiving uCPE events' reports, removing a uCPE
- device, waiting for a uCPE device to connect to the Enea Edge Management, as well
- as scripts for adding and removing an offline configuration store. This
- folder also contains scripts for uploading and removing an NFVA image into
- the Enea Edge Management, and for installing and activating a NFVA image on a uCPE
- Device.
-
- The /customScripts folder contains Python scripts
- for uploading custom scripts onto the Enea Edge Management and uCPE device(s), for
- removing custom scripts from the Enea Edge Management and uCPE device(s).
-
- The /network folder contains Python scripts for
- 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. 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. Commands that include the -n option refer to a uCPE device, with the
- operation being performed on uCPE device. 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 JSON files for
- complex scenarios (multiple operations), as well as Python unit-test class
- and loader scripts for generating specific test cases for the available
- Python scripts. The generated test cases are injected into the Python
- unit-test suite class to be run using the Python unit-test
- framework.
-
- The /unittestSuite/config folder contains
- configuration files in JSON format that describe the list of test cases
- for a particular Python script. Each defined test case is a dictionary
- that must contain the test case name and arguments to be passed to the
- Python script for running the test case.
-
- The /unittestSuite/vnf_config directory contains
- symlinks for the Fortigate license file and for the
- /vnf_config/fortigateImage folder.
-
- The /vnf folder contains Python scripts for
- onboarding and offboarding a VNF image, instantiating a VNF, controlling a
- VNF instance or destroying an existing one.
-
- The eneaUcpeMgr.py file acts as a library for
- the (Python) Automation Framework scripts. It contains common functions
- and unit-test configuration options.
-
-
- Python Unit-Test Suite
-
- The Python unit-test class defined in the
- unittestSuite.py script provides a way to automate
- the execution of specific test cases for each supported Python
- script.
-
- This class requires a test suite configuration JSON file that
- contains a dictionary list of the Python scripts to be processed. Each
- dictionary must contain the path of the Python script to be loaded and
- the path to the file describing the test cases to be performed against
- the designated script.
-
- Steps for running the Python unit-test suite on the Enea Edge Management
- are provided below.
-
-
- Script Options
-
- $ python unittestSuite.py -h
-Usage: unittestSuite.py [options]
-
-Run selected unit-test suite against Enea Edge Management.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management 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
-
-
-
- Configuring Unit-Test JSON File
-
- The Unit-Test suite JSON configuration file contains a list of
- dictionaries. Each dictionary indicates the path of the Python module
- to load and the test case's configuration file to be executed against
- the loaded module.
-
- Below is a sample unit-test configuration file, describing the
- Fortigate deployment scenario
- fortigateDeploy.json, found in
- <AF-TH-install-dir>/automation_framework/unittestSuite:
-
- [
- {
- "config": "config/waitDeviceUp.json",
- "module": "../device/waitDeviceUp.py"
- },
- {
- "config": "config/bindNetworkInterface.json",
- "module": "../network/bindNetworkInterface.py"
- },
- {
- "config": "config/newNetworkBridge.json",
- "module": "../network/newNetworkBridge.py"
- },
- {
- "config": "config/onboardVNFRaw.json",
- "module": "../vnf/onboardVNFRaw.py"
- },
- {
- "config": "config/instantiateVNFI.json",
- "module": "../vnf/instantiateVNFI.py"
- },
- {
- "config": "config/controlVNFI.json",
- "module": "../vnf/controlVNFI.py"
- }
-]
-
- Below is a sample unit-test configuration file, describing the
- Fortigate cleanup scenario
- fortigateCleanup.json:
-
- [
- {
- "config": "config/destroyVNFI.json",
- "module": "../vnf/destroyVNFI.py"
- },
- {
- "config": "config/delNetworkBridge.json",
- "module": "../network/delNetworkBridge.py"
- },
- {
- "config": "config/unbindNetworkInterface.json",
- "module": "../network/unbindNetworkInterface.py"
- },
- {
- "config": "config/offboardVNF.json",
- "module": "../vnf/offboardVNF.py"
- }
-]
-
- The config key contains the path to the test
- case's configuration file.
-
- The module key contains the path to the
- Python script to be executed.
-
-
-
- Unit-Test Configuration Options
-
- Unit-test behavior can be tweaked through setting any of the
- following options. This is done through the
- eneaUcpeMgr.py file:
-
- # Defaults for the framework
-username = "admin"
-password = "admin"
-host = None
-deviceName = None
-directory = "."
-ftpUsername = "ftp"
-ftpPassword = "ftp"
-ftpPort = "2021"
-
-# Stop the test run on the first error or failure
-failfast = True
-
-# Logging levels ordered by the highest severity:
-# CRITICAL 50
-# ERROR 40
-# WARNING 30
-# INFO 20
-# DEBUG 10
-# NOTSET 0
-fileLoggingLevel = logging.DEBUG
-consoleLoggingLevel = logging.INFO
-
-
-
- eneaUcpeMgr.py Options
-
-
-
-
-
-
-
-
-
-
- Option
-
- Description
-
-
-
-
-
- username
-
- The user authentication used to log into the
- Enea Edge Management. This can be overwritten by setting the Python
- unit-test suite command line option
- -u.
-
-
-
- password
-
- The password used to log into the Enea Edge Management. This
- can be overwritten by setting the Python unit-test suite
- command line option -p.
-
-
-
- host
-
- The IP address of the Enea Edge Management host. This can be
- overwritten by setting the Python unit-test suite command line
- option -H.
-
-
-
- devicename
-
- The name of the vCPE agent against which tests will be
- performed. This can be overwritten by setting the Python
- unit-test suite command line option
- -n.
-
-
-
- ftpUsername
-
- The user authentication used for the FTP connection
- when onboarding a VNF image. This can be overwritten by
- setting the Python script command line option
- -f.
-
-
-
- ftpPassword
-
- The password used for the FTP connection when
- onboarding a VNF image. This can be overwritten by setting the
- Python script command line option
- -w.
-
-
-
- ftpPort
-
- The port used for the FTP connection when onboarding a
- VNF image. This can be overwritten by setting the Python
- script command line option -P.
-
-
-
- failfast
-
- Describes the unit-test execution behavior on the first
- error or failure encountered.
-
-
-
- fileLoggingLevel
-
- Sets the file logging level.
-
-
-
- consoleLoggingLevel
-
- Sets the console logging level.
-
-
-
-
-
-
-
- Python Unit-Test Suite Logging
-
- Logging messages are displayed in the console and also saved to
- the specified log file. They are shown depending on the chosen logging
- level.
-
- Logging messages are ranked by their severity
- level:CRITICAL 50
-ERROR 40
-WARNING 30
-INFO 20
-DEBUG 10
-NOTSET 0
-
-
- Logging messages less severe than the set logging level will
- be ignored.
-
-
- Setting the console logging level to INFO is done through the
- consoleLoggingLevel option:consoleLoggingLevel = logging.INFOSetting
- the file logging level to DEBUG is done through the
- fileLoggingLevel option:fileLoggingLevel = logging.DEBUG
-
-
-
- Running Python Unit-Test Suite
-
-
- Please update all JSON configuration files to use the name of
- your vCPE agent device. In the following chapters, intelc3850-2 is
- used as an example.
-
-
- Below you'll find sample unit-test command line options for
- running the Fortigate deployment
- scenario:
-
- $ python unittestSuite.py -u admin -p admin -H localhost -n intelc3850-2 -s
-fortigateDeploy.json -d "Fortigate deployment scenario"
-
- Setting the console logging level to DEBUG:
-
- consoleLoggingLevel = logging.DEBUG
- Expected Output:
-
- 2020-04-15 07:58:40,668 - DEBUG: Started logging
-
-Running Fortigate deployment scenario...
-
-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 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 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 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 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 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'
-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 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 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 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 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 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 11 tests in 55.946s
-
-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"
-
- Setting the console logging level to INFO:
-
- consoleLoggingLevel = logging.INFO
-
- Expected Output:
-
- Running Fortigate cleanup scenario...
-
-test 001: Destroying Fortigate VNF (__main__.UnittestSuite) ...
-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) ...
-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) ...
-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 (__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 (__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) ...
-2020-04-15 08:03:47,701 - INFO: Offboard VNF
-2020-04-15 08:03:47,919 - INFO: Done
-ok
-
-----------------------------------------------------------------------
-Ran 6 tests in 7.192s
-
-OK
-
-
-
-
- Adding a uCPE Device
-
- Steps for adding, configuring and running a uCPE device onto the
- Enea Edge Management are described below .
-
-
- Script Options
-
- $ python addDevice.py -h
-Usage: addDevice.py [options]
-
-Add a uCPE device in Enea Edge Management.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -f DEVICEFILE, --file=DEVICEFILE
- File containing uCPE Information in JSON format
-
- Mandatory options:
- -H/--host, -f/--file
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed for adding a uCPE device
- should contain a list of dictionaries. Each dictionary indicates the
- test case name and the arguments passed to the
- addDevice Python module.
-
- Sample configuration file in JSON
- format:
-
- [
- {
- "name": "Add VCPE Agent device ",
- "args": "-f ../../lab_config/intelc3850-2/intelc3850-2.json"
- }
-]
-
- Sample
- intelc3850-2.json configuration
- file:
-
- {
- "name": "intelc3850-2",
- "deviceGroupingTags": " ",
- "description": "",
- "address": "172.24.12.114",
- "version": "2.4.0",
- "port": "22",
- "username": "root",
- "password": "root",
- "certificate": null,
- "passphrase": null,
- "callHome": "false",
- "maintMode": "false",
- "deviceId": "intelc3850-2"
-}
-
-
-
- Running the Python Module
-
- The addDevice Python module can be executed
- independently by running the following command:
-
- $ python addDevice.py -u admin -p admin -H localhost -f config/device.json
-2019-03-07 17:33:10,755 - DEBUG: Started logging
-2019-03-07 17:33:10,756 - INFO: Add uCPE device
-2019-03-07 17:33:10,975 - DEBUG: Login successful on host 'localhost'
-2019-03-07 17:33:10,979 - DEBUG: Session token is: 508b6ea2-40ee-11e9-a81f525400d08e1d
-2019-03-07 17:33:11,049 - DEBUG: Add new device 'intelc3850-2' to Enea Edge Management host
-2019-03-07 17:33:11,483 - INFO: Done
-2019-03-07 17:33:11,501 - DEBUG: Logging out and exiting....
-
-
-
-
- Removing a uCPE Device
-
- Steps for removing a uCPE device from the Enea Edge Management are
- described below.
-
-
- Script Options
-
- $ python removeDevice.py -h
-Usage: removeDevice.py [options]
-
-Remove a uCPE from Enea Edge Management.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -f DEVICEFILE, --file=DEVICEFILE
- File containing uCPE Information in JSON format
-
- Mandatory options:
- -H/--host, -f/--file
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to remove a uCPE device
- should contain a list of dictionaries. Each dictionary indicates the
- test case name and the arguments passed to the
- removeDevice Python module.
-
- Sample unit-test JSON file
- format:
-
- [
- {
- "name": "Remove VCPE Agent device ",
- "args": "-f ../../lab_config/intelc3850-2/intelc3850-2.json"
- }
-]
-
- Sample
- intelc3850-2.json configuration
- file:
-
- {
- "name": "intelc3850-2"
-}
-
-
-
- Running the Python Module
-
- The removeDevice Python module can be
- executed individually by running the following command:
-
- $ python removeDevice.py -u admin -p admin -H localhost -f
-../../lab_config/intelc3850-2/intelc3850-2.json
-2019-03-07 17:33:56,834 - DEBUG: Started logging
-2019-03-07 17:33:56,835 - INFO: Remove uCPE device
-2019-03-07 17:33:56,856 - DEBUG: Login successful on host 'localhost'
-2019-03-07 17:33:56,856 - DEBUG: Session token is: 6bebcb43-40ee-11e9-a81f525400d08e1d
-2019-03-07 17:33:56,856 - DEBUG: Delete device 'intelc3850-2' from Enea Edge Management
-host
-2019-03-07 17:33:56,875 - DEBUG: Found device with name 'intelc3850-2'
-2019-03-07 17:33:57,159 - INFO: Done
-2019-03-07 17:33:57,171 - DEBUG: Logging out and exiting...
-
-
-
-
- Waiting a uCPE Device
-
- Steps and details for how to Wait a uCPE device to connect to the
- Enea Edge Management after installation, are described below.
-
-
- Script Options
-
- $ python waitDeviceUp.py -h
-Usage: waitDeviceUp.py [options]
-
-Wait for uCPE to connect to the Enea Edge Management after installation.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -f DEVICEFILE, --file=DEVICEFILE
- File containing uCPE Information in JSON format
- -t TIMEOUT, --timeout=TIMEOUT
- Time in seconds for maximum wait period, default =
- instant
-
- Mandatory options:
- -H/--host, -f/--file
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to wait a uCPE device should
- contain a list of dictionaries. Each dictionary indicates the test
- case name and the test case arguments passed to the
- waitDeviceUp Python module.
-
- Sample unit-test JSON file
- format:
-
- [
- {
- "name": "Wait VCPE Agent device be up",
- "args": "-f ../../lab_config/intelc3850-2/intelc3850-2.json -t 60"
- }
-]
-
- Sample
- intelc3850-2.json configuration
- file:
-
- {
- "name": "intelc3850-2"
-}
-
-
-
- Running the Python Module
-
- The waitDeviceUp Python module can be
- executed individually by running the following command
- line:$ python waitDeviceUp.py -u admin -p admin -H localhost -t 60 -f
-../../lab_config/intelc3850-2/intelc3850-2.json
-2019-03-07 18:03:21,132 - DEBUG: Started logging
-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...
-
-
-
-
- Printing the uCPE Device Log
-
- Steps and details on how to Print the events log for a specific
- uCPE device installed in the Enea Edge Management, are explained below.
-
-
- Script Options
-
- $ python getEventsForUcpe.py -h
-Usage: getEventsForUcpe.py [options]
-
-Print the events log for a specific uCPE installed in Enea Edge Management.
-
-Options:
---version show program's version number and exit
--h, --help show this help message and exit
--u USERNAME, --username=USERNAME Enea Edge Management login username
--p PASSWORD, --password=PASSWORD Enea Edge Management login password
--H HOST, --host=HOST Enea Edge Management host name or IP address
--f DEVICEFILE, --file=DEVICEFILE File containing uCPE Information in JSON format
--s SEVERITY, --severity=SEVERITY Event severity level (Critical|Major|Minor)
-
-Mandatory options:
--H/--host, -f/--file
-
-
-
- Configuring the JSON File
-
- Sample
- intelc3850-2.json configuration
- file:
-
- {
- "name": "intelc3850-2",
- "deviceId": "intelc3850-2",
- "deviceGroupingTags": " ",
- "description": "",
-"address": "172.24.12.114",
- "port": "22",
- "username": "root",
- "password": "root",
- "certificate": null,
- "passphrase": null,
- "callHome": "false",
- "maintMode": "false"
-}
-
-
-
-
- Running the Python Module
-
- The getEventsForUcpe Python module can be
- executed individually by running the following command:
-
- $ python getEventsForUcpe.py -H localhost -f \
-../../lab_config/intelc3850-2/intelc3850-2.json
-
-2019-07-04 13:48:31,289 - DEBUG: Started logging
-2019-07-04 13:48:31,290 - INFO: Dump uCPE events
-2019-07-04 13:48:31,336 - DEBUG: Login successful on host '172.24.3.108'
-2019-07-04 13:48:31,336 - DEBUG: Session token is: a53c68d3-9e51-11e9-a715-5254007632e2
-2019-07-04 13:48:31,356 - DEBUG: Found device with name 'intelc3850-2'
-2019-07-04 13:48:31,357 - DEBUG:
-Events on device: intelc3850-2 and severity: 1000
-2019-07-04 13:48:31,450 - DEBUG: Dumping 1 events
-2019-07-04 13:48:31,450 - DEBUG: Device Disconnected | Alarm | Device | None | \
- 2019-07-04 09:57:40.042
-2019-07-04 13:48:31,469 - DEBUG: Dumping 0 events
-2019-07-04 13:48:31,469 - INFO: Done
-2019-07-04 13:48:31,488 - DEBUG: Logging out and exiting...
-
-
-
-
- Enabling or Disabling the DPDK
-
- Steps and details on how to enable or disable the DPDK are
- explained below.
-
-
- Script Options
-
- $ python configDPDK.py -h
-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 Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management 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, -n/--device-name or -o/--store-name
-
-
-
- Running the Python Module
-
- The configDPDK Python module can be executed
- individually by running the following command lines:
-
- To Enable DPDK:
-
- $ python configDPDK.py -s enable -n intelc3850-2
-
-2020-01-06 08:35:16,820 - DEBUG: Started logging
-2020-01-06 08:35:16,821 - INFO: Configure DPDK
-2020-01-06 08:35:16,870 - DEBUG: Login successful on host '172.24.3.90'
-2020-01-06 08:35:16,871 - DEBUG: Session token is: 601149e0-3089-11ea-b0c7-525400b7889f
-2020-01-06 08:35:16,894 - DEBUG: Found device with name 'inteld1521-1'
-2020-01-06 08:35:16,895 - DEBUG: Set DPDK state to enable
-2020-01-06 08:35:16,936 - INFO: Done
-2020-01-06 08:35:16,961 - DEBUG: Logging out and exiting...
-
- To Disable DPDK:
-
- $ python configDPDK.py -s disable -n intelc3850-2
-
-2020-01-06 08:33:57,157 - DEBUG: Started logging
-2020-01-06 08:33:57,158 - INFO: Configure DPDK
-2020-01-06 08:33:57,215 - DEBUG: Login successful on host '172.24.3.90'
-2020-01-06 08:33:57,216 - DEBUG: Session token is: 3096e670-3089-11ea-b0c7-525400b7889f
-2020-01-06 08:33:57,239 - DEBUG: Found device with name 'inteld1521-1'
-2020-01-06 08:33:57,241 - DEBUG: Set DPDK state to disable
-2020-01-06 08:33:57,284 - INFO: Done
-2020-01-06 08:33:57,310 - DEBUG: Logging out and exiting...
-
-
-
-
- Binding a Network Interface
-
- How to Bind a physical network interface to a DPDK, Standard or
- SR-IOV is detailed below.
-
-
- Script Options
-
- $ python bindNetworkInterface.py -h
-Usage: bindNetworkInterface.py [options]
-
-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 Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management 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 or -o/--store-name
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to bind a physical network
- interface should contain a list of dictionaries. Each dictionary
- indicates the test case name and the test case arguments passed to the
- bindNetworkInterface Python module.
-
- Sample unit-test JSON file
- format:[
- {
- "name": "Bind lan NIC to DPDK",
- "args": "-f ../../lab_config/intelc3850-2/lan_nic.json"
- },
- {
- "name": "Bind wan NIC to DPDK",
- "args": "-f ../../lab_config/intelc3850-2/wan_nic.json"
- },
- {
- "name": "Bind wan/lan NIC to SR-IOV",
- "args": "-f ../../lab_config/intelc3850-2/sriov_nic.json"
- },
- {
- "name": "Bind wan/lan NIC to Standard",
- "args": "-f ../../lab_config/intelc3850-2/std_nic.json"
- }
-]Sample
- lan_nic.json configuration
- file:{
- "name": "enp4s0f0",
- "type": "dpdk",
- "subType": "vfio-pci"
-}Sample
- wan_nic.json configuration
- file:{
- "name": "enp4s0f1",
- "type": "dpdk",
- "subType": "vfio-pci"
-}Sample
- sriov_nic.json configuration
- file:{
- "name": "enp4s0f1",
- "type": "sr-iov",
- "subType": "adapter-pool",
- "sriovNumVfs": "2"
-}Sample
- std_nic.json configuration
- file:{
- "name": "eno2",
- "type": "standard"
-}
-
-
-
- Running the Python Module
-
- The bindNetworkInterface Python module can be
- executed individually by running the following command line:
-
- $ python bindNetworkInterface.py -u admin -p admin -H localhost -f
-../../lab_config/intelc3850-2/lan_nic.json -n intelc3850-2
-2019-03-07 18:03:29,365 - DEBUG: Started logging
-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...
-
-
-
-
- Unbinding a Network Interface
-
- How to Unbind a physical network interface from a DPDK or SR-IOV
- is described below.
-
-
- Script Options
-
- $ python unbindNetworkInterface.py -h
-Usage: unbindNetworkInterface.py [options]
-
-Unbinds a physical interface to the 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 Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management 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
-
- Mandatory options:
- -H/--host, -f/--file, -n/--device-name
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to unbind a network interface
- should contain a list of dictionaries. Each dictionary indicates the
- test case name and the test case arguments passed to the
- unbindNetworkInterface Python module.
-
- Sample unit-test JSON file
- format:[
- {
- "name": "Unbind lan NIC from DPDK",
- "args": "-f ../../lab_config/intelc3850-2/lan_nic.json"
- },
- {
- name": "Unbind wan NIC from DPDK",
- "args": "-f ../../lab_config/intelc3850-2/wan_nic.json"
- }
-]
-
- Sample lan_nic.json
- configuration file:
-
- {
- "name": "enp4s0f0",
- "type": "dpdk"
-}
-
- Sample wan_nic.json
- configuration file:
-
- {
- "name": "enp4s0f1",
- "type": "dpdk",
-}
-
-
-
-
- Running the Python Module
-
- The unbindNetworkInterface Python module
- can be executed individually by running the following command
- line:
-
- $ python unbindNetworkInterface.py -u admin -p admin -H localhost -f
-../../lab_config/intelc3850-2/lan_nic.json -n intelc3850-2
-2019-03-07 17:33:54,377 - DEBUG: Started logging
-2019-03-07 17:33:54,378 - INFO: Unbind NIC
-2019-03-07 17:33:54,431 - DEBUG: Login successful on host 'localhost'
-2019-03-07 17:33:54,432 - DEBUG: Session token is: 6a77a1d1-40ee-11e9-a81f525400d08e1d
-2019-03-07 17:33:54,467 - DEBUG: Found device with name 'intelc3850-2'
-2019-03-07 17:33:54,468 - DEBUG: Unbind NIC '0000:01:00.1'
-2019-03-07 17:33:55,616 - INFO: Done
-2019-03-07 17:33:55,659 - DEBUG: Logging out and exiting...
-
-
-
-
- Getting a Network Interface
-
- Details and steps on how to List the network interfaces for a
- device, are described below.
-
-
- Script Options
-
- $ python getNetworkInterfaces.py -h
-2019-07-04 16:35:50,496 - DEBUG: Started logging
-2019-07-04 16:35:50,496 - INFO: Dump NICs
-Usage: getNetworkInterfaces.py [options]
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -n DEVICENAME, --device-name=DEVICENAME Name of the uCPE to get network /
- interfaces from
-
- Mandatory options:
- -H/--host, -n/--device-name
-
-
-
- Running the Python Module
-
- The getNetworkInterfaces Python module can be
- executed individually by running the following command:
-
- $ python getNetworkInterfaces.py -H localhost -n intelc3850-2
-2020-01-07 05:58:03,630 - DEBUG: Started logging
-2020-01-07 05:58:03,630 - INFO: Dump NICs
-2020-01-07 05:58:03,687 - DEBUG: Login successful on host '172.24.3.90'
-2020-01-07 05:58:03,688 - DEBUG: Session token is: 93dd3cd0-313c-11ea-b0c7-525400b7889f
-2020-01-07 05:58:03,715 - DEBUG: Found device with name 'intelc3850-2'
-2020-01-07 05:58:03,717 - DEBUG:
-----------------External Network Interfaces for intelc3850-2----------------
-2020-01-07 05:58:07,622 - DEBUG: eno4 DpdkTypes: [u'igb_uio', u'vfio-pci'] \
-MacAddress: 0c:c4:7a:fb:85:dfsriov(7)
-2020-01-07 05:58:07,624 - DEBUG:
-2020-01-07 05:58:07,656 - DEBUG:
-----------------Configured External Network Interfaces for intelc3850-2----------------
-2020-01-07 05:58:07,657 - DEBUG: eno3 DpdkType: vfio-pci ID: \
-47556b22-b5c2-4acb-b3cb-09b1f024b3a7
-2020-01-07 05:58:07,658 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \
-2c06b4f7-6814-4432-8765-a9d0cd5303c1
-2020-01-07 05:58:07,659 - DEBUG: enp1s0f0 DpdkTypes: [u'igb_uio', u'vfio-pci'] \
-MacAddress: ac:1f:6b:2d:ee:58sriov(63)
-2020-01-07 05:58:07,660 - DEBUG:
-2020-01-07 05:58:07,690 - DEBUG:
-----------------Configured External Network Interfaces for intelc3850-2----------------
-2020-01-07 05:58:07,691 - DEBUG: eno3 DpdkType: vfio-pci ID: \
-47556b22-b5c2-4acb-b3cb-09b1f024b3a7
-2020-01-07 05:58:07,692 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \
-2c06b4f7-6814-4432-8765-a9d0cd5303c1
-2020-01-07 05:58:07,693 - DEBUG: eno2 DpdkTypes: [u'igb_uio', u'vfio-pci'] \
-MacAddress: 0c:c4:7a:fb:85:ddsriov(7)
-2020-01-07 05:58:07,695 - DEBUG:
-2020-01-07 05:58:07,724 - DEBUG:
-----------------Configured External Network Interfaces for intelc3850-2----------------
-2020-01-07 05:58:07,725 - DEBUG: eno3 DpdkType: vfio-pci ID: \
-47556b22-b5c2-4acb-b3cb-09b1f024b3a7
-2020-01-07 05:58:07,726 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \
-2c06b4f7-6814-4432-8765-a9d0cd5303c1
-2020-01-07 05:58:07,727 - DEBUG: eno1 DpdkTypes: [u'igb_uio', u'vfio-pci'] \
-MacAddress: 0c:c4:7a:fb:85:dcsriov(7)
-2020-01-07 05:58:07,728 - DEBUG:
-2020-01-07 05:58:07,760 - DEBUG:
-----------------Configured External Network Interfaces for intelc3850-2----------------
-2020-01-07 05:58:07,761 - DEBUG: eno3 DpdkType: vfio-pci ID: \
-47556b22-b5c2-4acb-b3cb-09b1f024b3a7
-2020-01-07 05:58:07,761 - DEBUG: enp1s0f1 DpdkType: vfio-pci ID: \
-2c06b4f7-6814-4432-8765-a9d0cd5303c1
-2020-01-07 05:58:07,762 - DEBUG:
-2020-01-07 05:58:07,763 - INFO: Done
-2020-01-07 05:58:07,787 - DEBUG: Logging out and exiting...
-
-
-
-
- Creating an OVS Network Bridge
-
- Instructions on how to Create an OVS Bridge on a device are
- detailed below.
-
-
- Script Options
-
- $ python newNetworkBridge.py -h
-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 Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management 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 or -o/--store-name
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to create a new network
- bridge should contain a list of dictionaries. Each dictionary
- indicates the test case name and the test case arguments passed to the
- newNetworkBridge Python module.
-
- Sample unit-test JSON file
- format:
-
- [
- {
- "name": "Creating network bridge LAN ",
- "args": "-f ../../lab_config/intelc3850-2/lan_br.json"
- },
- {
- "name": "Creating network bridge WAN ",
- "args": "-f ../../lab_config/intelc3850-2/wan_br.json"
- }
-]
-
- Sample lan_br.json
- configuration file:
-
- {
- "name": "lan_br",
- "interfaces": ["enp4s0f0"]
-}
-
- Sample wan_br.json
- configuration file:
-
- {
- "name": "wan_br",
- "interfaces": ["enp4s0f1"]
-}
-
-
-
- Running the Python Module
-
- The newNetworkBridge Python module can be
- executed individually by running the following command line:
-
- $ python newNetworkBridge.py -u admin -p admin -H localhost -f
-../../lab_config/intelc3850-2/lan_br.json -n intelc3850-2
-2019-03-07 18:03:30,767 - DEBUG: Started logging
-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...
-
-
-
-
- Deleting an OVS Network Bridge
-
- How to Delete an OVS Bridge from a device is detailed in the
- following.
-
-
- Script Options
-
- $ python delNetworkBridge.py -h
-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 Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management 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 or -o/--store-name
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to delete a network bridge
- should contain a list of dictionaries. Each dictionary indicates the
- test case name and the test case arguments passed to the
- delNetworkBridge Python module.
-
- Sample unit-test JSON file
- format:
-
- [
- {
- "name": "Deleting network bridge LAN ",
- "args": "-f ../../lab_config/intelc3850-2/lan_br.json"
- },
- {
- "name": "Deleting network bridge WAN ",
- "args": "-f ../../lab_config/intelc3850-2/wan_br.json"
- }
-]
-
- Sample lan_br.json
- configuration file:
-
- {
- "name" : "lan_br"
-}
-
- Sample wan_br.json
- configuration file:
-
- {
- "name" : "wan_br"
-}
-
-
-
- Running the Python Module
-
- The delNetworkBridge Python module can be
- executed individually by running the following command line:
-
- $ python delNetworkBridge.py -u admin -p admin -H localhost -f
-../../lab_config/intelc3850-2/lan_br.json -n intelc3850-2
-2019-03-07 17:33:51,712 - DEBUG: Started logging
-2019-03-07 17:33:51,713 - INFO: Delete OVS network bridge
-2019-03-07 17:33:51,751 - DEBUG: Login successful on host 'localhost'
-2019-03-07 17:33:51,752 - DEBUG: Session token is: 68e08711-40ee-11e9-a81f525400d08e1d
-2019-03-07 17:33:51,768 - DEBUG: Found device with name 'intelc3850-2'
-2019-03-07 17:33:51,768 - DEBUG: Delete OVS network bridge 'lan_br'
-2019-03-07 17:33:52,839 - INFO: Done
-2019-03-07 17:33:52,872 - DEBUG: Logging out and exiting...
-
-
-
-
- Onboarding a VNF Image Raw
-
- How to Onboard a VNF image in the Enea Edge Management based upon its raw
- constituents, is detailed in depth below.
-
-
- Script Options
-
- $ python onboardVNFRaw.py -h
-Usage: onboardVNFRaw.py [options]
-
-Onboard a VNF in Enea Edge Management 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 Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management 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/--imageInfo, -i/--imagePath
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to onboard a VNF image Raw
- should contain a list of dictionaries. Each dictionary indicates the
- test case name and the test case arguments passed to the
- onboardVNFRaw Python module.
-
- Sample unit-test JSON file
- format:
-
- [
- {
- "name": "Onboarding Fortigate VNF (wizard API)",
- "args": "-b ../../vnf_config/fortigateImage/fortigateImage.json -i
-../../vnf_images/fortios.qcow2"
- }
-]
-
- Sample
- fortigateImage.json configuration
- file:{
- "name" : "fortigateImage",
- "version" : "1.0",
- "description" : "Fortigate VNF Image",
- "provider" : "Fortinet, Inc",
- "numVcpus" : 1,
- "imageFormat" : "QCOW2",
- "memoryInMb" : 1024,
- "storageInGb" : 20,
- "image" : "fortios.qcow2",
- "interfaces" : [
- {
- "name" : "external",
- "type" : "PhysicalPort",
- "description" : "External interface"
- },
- {
- "name" : "in",
- "type" : "PhysicalPort",
- "description" : "Incoming interface"
- },
- {
- "name" : "out",
- "type" : "PhysicalPort",
- "description" : "Outgoing interface"
- }
- ],
- "cloudInitDataSource" : "ConfigDrive",
- "cloudInitDriveType" : "cdrom",
- "cloudInitContentParams" : [
- {
- "path" : "License",
- "description" : "Operational license"
- }
- ]
-}
-
-
-
- Running the Python Module
-
- The onboardVNFRaw Python module can be
- executed individually by running the following command line:
-
- $ python onboardVNFRaw.py -u admin -p admin -f ftp -w ftp -H localhost -b b
-../../vnf_config/fortigateImage/fortigateImage.json -i
-../../vnf_images/fortios.qcow2
-2019-03-07 18:03:37,791 - DEBUG: Started logging
-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_images/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...
-
-
-
-
- Offboarding a VNF
-
- Steps on how to Offboard a VNF from the Enea Edge Management are detailed
- below.
-
-
- Script Options
-
- $ python offboardVNF.py -h
-Usage: offboardVNF.py [options]
-
-Offboard a VNF from Enea Edge Management.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -n VNFDNAME, --vnfdName=VNFDNAME
- Name of VNF descriptor to offboard
-
- Mandatory options:
- -H/--host, -n/--vnfdName
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to offboard a VNF should
- contain a list of dictionaries. Each dictionary indicates the test
- case name and the test case arguments passed to the
- offboardVNF Python module.
-
- Sample unit-test JSON file
- format:
-
- [
- {
- "name": "Offboarding Fortigate VNF ",
- "args": "-n fortigateImage"
- }
-]
-
-
-
- Running the Python Module
-
- The offboardVNF Python module can be
- executed individually by running the following command line:
-
- $ python offboardVNF.py -u admin -p admin -H localhost -n fortigateImage
-2019-03-07 17:33:56,523 - DEBUG: Started logging
-2019-03-07 17:33:56,524 - INFO: Offboard VNF
-2019-03-07 17:33:56,557 - DEBUG: Login successful on host 'localhost'
-2019-03-07 17:33:56,557 - DEBUG: Session token is: 6bbe2b90-40ee-11e9-a81f525400d08e1d
-2019-03-07 17:33:56,682 - DEBUG: Found VNF descriptor with name 'fortigateImage'
-2019-03-07 17:33:56,683 - DEBUG: Offboard VNF: fortigateImage
-2019-03-07 17:33:56,811 - INFO: Done
-2019-03-07 17:33:56,834 - DEBUG: Logging out and exiting...
-
-
-
-
- Instantiating a VNF
-
- Instantiating a VNF via the Enea Edge Management is detailed below.
-
-
- Script Options
-
- $ python instantiateVNFI.py -h
-Usage: instantiateVNFI.py [options]
-
-Instantiate a VNF via Enea Edge Management.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management 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
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to instantiate a VNF should
- contain a list of dictionaries. Each dictionary indicates the test
- case name and the test case arguments passed to the
- instantiateVNFI Python module.
-
- Sample unit-test JSON file
- format:
-
- [
- {
- "name": "Instantiate Fortigate VNF ",
- "args": "-t fortigateImage -f
-../../vnf_config/fortigateImage/fortigateFWInstance.json"
- }
-]
-
- The VNF instance JSON configuration file is specific to each
- VNF.
-
-
-
- Running the Python Module
-
- The instantiateVNFI Python module can be
- executed individually by running the following command line:
-
- $ python instantiateVNFI.py -u admin -p admin -H localhost -n intelc3850-2 -t
-fortigateImage -f ../../vnf_config/fortigateImage/fortigateFWInstance.json
-2019-03-07 18:03:41,777 - DEBUG: Started logging
-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...
-
-
-
-
- Controlling a VNF Instance
-
- How to Control a VNF instance from the Enea Edge Management is
- detailed below.
-
-
- If a sequence of commands aiming to change the state of the VNF
- (start/stop/suspend/shutdown) is issued rapidly, certain VNFs might
- become unresponsive. Depending on the actual VNF, the time required
- between life-cycle operations may vary from several seconds to half a
- minute or even more. If a VNF becomes unresponsive, the only possible
- action is to "Force Delete" the instance from the Enea Edge Management.
-
-
-
- Script Options
-
- $ python controlVNFI.py -h
-Usage: controlVNFI.py [options]
-
-Controls a VNF instance from Enea Edge Management.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management 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
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to control a VNF instance
- should contain a list of dictionaries. Each dictionary indicates the
- test case name and the test case arguments passed to the
- controlVNFI Python module.
-
- Sample unit-test JSON file
- format:
-
- [
- {
- "name": "Pause Fortigate VNF instance",
- "args": "-i fortigateFWInstance -c pause"
- },
- {
- "name": "Resume Fortigate VNF instance",
- "args": "-i fortigateFWInstance -c resume"
- },
- {
- "name": "Stop Fortigate VNF instance ",
- "args": "-i fortigateFWInstance -c stop"
- },
- {
- "name": "Start Fortigate VNF instance",
- "args": "-i fortigateFWInstance -c start"
- }
-]
-
-
-
- Running the Python Module
-
- The controlVNFI Python module can be
- executed individually by running the following command line:
-
- $ python controlVNFI.py -u admin -p admin -H localhost -n intelc3850-2 -i
-fortigateFWInstance -c stop
-2019-03-07 18:03:51,991 - DEBUG: Started logging
-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...
-
-
-
-
- Destroying a VNF Instance
-
- Steps and options on how to Destroy a VNF instance from the Enea
- Edge Management are described below.
-
-
- Script Options
-
- $ python destroyVNFI.py -h
-Usage: destroyVNFI.py [options]
-
-Destroys a VNF instance from Enea Edge Management.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management 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
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to destroy a VNF instance
- should contain a list of dictionaries. Each dictionary indicates the
- test case name and the test case arguments passed to the
- destroyVNFI Python module.
-
- Sample unit-test JSON file
- format:[
- {
- "name": "Destroying Fortigate VNF ",
- "args": "-i fortigateFWInstance"
- }
-]
-
-
-
- Running the Python Module
-
- The destroyVNFI Python module can be
- executed individually by running the following command line:
-
- $ python destroyVNFI.py -u admin -p admin -H localhost -n intelc3850-2 -i
-fortigateFWInstance
-2019-03-07 17:33:51,025 - DEBUG: Started logging
-2019-03-07 17:33:51,026 - INFO: Destroy VNF
-2019-03-07 17:33:51,119 - DEBUG: Login successful on host 'localhost'
-2019-03-07 17:33:51,119 - DEBUG: Session token is: 68803ea5-40ee-11e9-a81f525400d08e1d
-2019-03-07 17:33:51,128 - DEBUG: Found device with name 'intelc3850-2'
-2019-03-07 17:33:51,148 - DEBUG: Found VNF instance with name 'fortigateFWInstance'
-2019-03-07 17:33:51,149 - DEBUG: Destroy VNF: fortigateFWInstance
-2019-03-07 17:33:51,655 - INFO: Done
-2019-03-07 17:33:51,712 - DEBUG: Logging out and exiting...
-
-
-
-
- Uploading a Enea Edge image onto the Enea Edge Management
-
- Steps and options on how to Upload a Enea Edge image onto the
- Enea Edge Management are described below.
-
-
- Script Options
-
- $ python uploadImage.py -h
-Upload NFVA image on Enea Edge Management
-Usage: uploadImage.py [options]
-
-Upload NFVA image on Enea Edge Management.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -f FILENAME, --fileName=FILENAME
- Path to NFVA image file name
- -m MODULE, --module=MODULE
- Module name (default is: VcpeAgent)
- -t UPGRADETYPE, --upgradeType=UPGRADETYPE
- Upgrade Type depends on architecture: xeon_d or
- atom_c3000
-
- Mandatory options:
- -H/--host, -f/--fileName, -m/--module, -t/--upgradeType
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to upload a Enea Edge image
- should contain a list of dictionaries. Each dictionary indicates the
- test case name and the test case arguments passed to the
- uploadImage Python module.
-
- Sample unit-test JSON file
- format:[
- {
- "name": "Upload NFVA image on Enea Edge Management",
- "args": "-f /tmp/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d"
- }
-]
-
-
-
- Running the Python Module
-
- The uploadImage Python module can be
- executed individually by running the following command line:
-
- $ python uploadImage.py -u admin -p admin -H localhost \
--f /tmp/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d
-2020-02-28 11:38:42,754 - DEBUG: Started logging
-2020-02-28 11:38:42,755 - INFO: Upload NFVA image on Enea Edge Management
-2020-02-28 11:38:43,307 - DEBUG: Login successful on host 'localhost'
-2020-02-28 11:38:43,308 - DEBUG: Session token is: 7da3f960-5a16-11ea-a3de-5652b3ac1c30
-2020-02-28 11:41:29,148 - INFO: Verify image validation flag
-2020-02-28 11:41:29,149 - INFO: Valid flag: True
-2020-02-28 11:41:29,344 - INFO: The image \
-'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' was successfully uploaded
-2020-02-28 11:41:29,344 - INFO: Done
-2020-02-28 11:41:29,388 - DEBUG: Logging out and exiting...
-
-
-
-
- Deleting a Enea Edge image file from the
- Enea Edge Management
-
- Steps and options on how to Delete a Enea Edge image from the
- Enea Edge Management are described below.
-
-
- Script Options
-
- $ python deleteUpgradeFile.py -h
-Delete NFVA image from Enea Edge Management
-Usage: deleteUpgradeFile.py [options]
-
-Delete NFVA image from Enea Edge Management.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -i IMAGENAME, --imageName=IMAGENAME
- NFVA Image name
- -m MODULE, --module=MODULE
- Module name - default is VcpeAgent
-
- Mandatory options:
- -H/--host, -i/--imageName, -m/--module.
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to delete a Enea Edge image
- should contain a list of dictionaries. Each dictionary indicates the
- test case name and the test case arguments passed to the
- deleteUpgradeFile Python module.
-
- Sample unit-test JSON file
- format:[
- {
- "name": "Delete NFVA image on Enea Edge Management",
- "args": "-i enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2"
- }
-]
-
-
-
- Running the Python Module
-
- The deleteUpgradeFile Python module can be
- executed individually by running the following command line:
-
- $ python deleteUpgradeFile.py -u admin -p admin -H localhost -i \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2
-2020-02-28 12:06:20,111 - DEBUG: Started logging
-2020-02-28 12:06:20,112 - INFO: Delete NFVA image from Enea Edge Management
-2020-02-28 12:06:20,210 - DEBUG: Login successful on host 'localhost'
-2020-02-28 12:06:20,211 - DEBUG: Session token is: 594b2d50-5a1a-11ea-a3de-5652b3ac1c30
-2020-02-28 12:06:20,255 - INFO: The image \
-'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' was successfully found
-2020-02-28 12:06:20,256 - INFO: The oid for \
-'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' image name is as follows: \
-VcpeAgent/xeon_d/enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2
-2020-02-28 12:06:20,449 - INFO: The 'enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2' \
-image was successfully removed
-2020-02-28 12:06:20,479 - INFO: Done
-2020-02-28 12:06:20,517 - DEBUG: Logging out and exiting...
-
-
-
-
- Installing and activating a Enea Edge image on an uCPE device
- from the Enea Edge Management
-
- Steps and options on how to Install and Activate a Enea Edge
- image on an uCPE device from the Enea Edge Management are described
- below.
-
-
- Script Options
-
- $ python installAndActivate.py -h
-Install and activate NFVA image from Enea Edge Management
-Usage: installAndActivate.py [options]
-
-Install and activate NFVA image from Enea Edge Management.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -i IMAGENAME, --imageName=IMAGENAME
- Image name
- -m MODULE, --module=MODULE
- Module name -- VcpeAgent
- -t UPGRADETYPE, --upgradeType=UPGRADETYPE
- Upgrade Type -- xeon_d or atom_c3000
- -d DEVICENAME, --deviceName=DEVICENAME
- Device Name
-
- Mandatory options:
- -H/--host, -i/--imageName, -t/--upgradeType, -d/--deviceName,
- -m/--module
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to install and activate a Enea Edge
- image on a uCPE device from the Enea Edge Management should
- contain a list of dictionaries. Each dictionary indicates the test
- case name and the test case arguments passed to the
- installAndActivate Python module.
-
- Sample unit-test JSON file
- format:
-
- [
- {
- "name": "Install and activate NFVA image on uCPE device from Enea Edge Management",
- "args": "-i enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d -d inteld1521-16"
- }
-]
-
-
-
- Running the Python Module
-
- The installAndActivate Python module can be
- executed individually by running the following command line:
-
- $ python installAndActivate.py -u admin -p admin -H localhost -i \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 -t xeon_d -d inteld1521-16
-2020-02-28 12:36:46,137 - DEBUG: Started logging
-2020-02-28 12:36:46,138 - INFO: Install and activate NFVA image from Enea Edge Management
-2020-02-28 12:36:46,288 - DEBUG: Login successful on host 'localhost'
-2020-02-28 12:36:46,288 - DEBUG: Session token is: 99b7cde0-5a1e-11ea-a3de-5652b3ac1c30
-2020-02-28 12:36:46,325 - DEBUG: Found device with name 'inteld1521-16'
-2020-02-28 12:36:46,459 - INFO: Display info about NFVA installation \
-[inteld1521-16:1001:172.24.12.152] Install Started
-2020-02-28 12:36:46,492 - INFO: Transferring Image: \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2
-2020-02-28 12:36:56,552 - INFO: Verifying Release [1]
-2020-02-28 12:37:06,599 - INFO: Verifying Release [2]
-2020-02-28 12:37:16,652 - INFO: Validating Upgrade to \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2
-2020-02-28 12:37:26,713 - INFO: Validating upgrade to \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [3]
-2020-02-28 12:37:36,770 - INFO: Validating upgrade to \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [5]
-2020-02-28 12:37:46,819 - INFO: Validating upgrade to \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [7]
-2020-02-28 12:37:56,879 - INFO: Validating upgrade to \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [9]
-2020-02-28 12:38:06,920 - INFO: Validating upgrade to \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [11]
-2020-02-28 12:38:16,975 - INFO: Validating upgrade to \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [13]
-2020-02-28 12:38:27,019 - INFO: Validating upgrade to \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [15]
-2020-02-28 12:38:37,091 - INFO: Validating upgrade to \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [18]
-2020-02-28 12:38:47,133 - INFO: Validating upgrade to \
-enea-nfv-access-xeon-d.rootfs.ostree.tar.bz2 [20]
-2020-02-28 12:38:57,186 - INFO: Waiting for release to become active
-2020-02-28 12:39:07,231 - INFO: Upgrade Request Complete
-2020-02-28 12:39:17,242 - INFO: Installation completed!
-2020-02-28 12:39:17,243 - INFO: Done
-2020-02-28 12:39:17,294 - DEBUG: Logging out and exiting...
-
-
-
-
- Clearing information about completed upgrades of uCPE devices
- from the Enea Edge Management
-
- Steps and options on how to clear information about completed
- upgrades of uCPE devices from the Enea Edge Management are described
- below.
-
-
- Script Options
-
- $ python clearCompletedUpgradesInfo.py -h
-Clear info about completed upgrades
-Usage: clearCompletedUpgradesInfo.py [options]
-
-Clear info about completed upgrades
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
-
- Mandatory options:
- -H/--host
-
-
-
- Configuring the JSON File
-
- No JSON configuration file is needed to clear information about
- completed upgrades of uCPE devices from the Enea Edge Management. The
- clearCompletedUpgradesInfo Python module can be
- run without a JSON file as a parameter.
-
-
-
- Running the Python Module
-
- The clearCompletedUpgradesInfo Python
- module can be executed individually by running the following command
- line:
-
- $ python clearCompletedUpgradesInfo.py -u admin -p admin -H localhost
-2020-02-28 12:51:55,861 - DEBUG: Started logging
-2020-02-28 12:51:55,862 - INFO: Clear info about completed upgrades
-2020-02-28 12:51:55,950 - DEBUG: Login successful on host 'localhost'
-2020-02-28 12:51:55,951 - DEBUG: Session token is: b7eb83e0-5a20-11ea-a3de-5652b3ac1c30
-2020-02-28 12:51:55,993 - INFO: Done
-2020-02-28 12:51:56,025 - DEBUG: Logging out and exiting...
-
-
-
-
- Uploading a Custom Script to the Enea Edge Management
-
- Steps and options on how to upload a custom script to the
- Enea Edge Management are described below.
-
-
- Script Options
-
- $ python customScripts/upload.py -h
-2020-04-14 10:26:23,582 - INFO: Upload Custom Script
-Usage: upload.py [options]
-
-Add a Custom Script to Enea Edge Management
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -f CUSTOMSCRIPT, --file=CUSTOMSCRIPT
- Custom Script File
- -e PHASE, --phase=PHASE
- Execution phase. Must be one of the following: once-
- before-startup | always-before-startup | once-after-
- startup | always-after-startup
-
- Mandatory options:
- -H/--host, -f/--file, -e/--phase
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to upload a Custom Script to
- the Enea Edge Management must contain a list of dictionaries. Each dictionary
- indicates the test case name and the test case arguments passed to the
- customScripts/upload Python module.
-
- Sample unit-test JSON file
- format:
-
- [
- {
- "name": "Uploading a Custom Script to the Enea Edge Management",
- "args": "-f ../../lab_config/customScripts/test_success_after_always \
- -e always-after-startup"
- }
-]
-
-
-
- Running the Python Module
-
- The customScripts/upload Python module can
- be executed individually by running the following command line:
-
- $ python automation_framework/customScripts/upload.py \
--f lab_config/customScripts/test_success_after_always -e always-after-startup
-2020-04-14 14:08:02,824 - DEBUG: Started logging
-2020-04-14 14:08:02,915 - INFO: Upload Custom Script
-2020-04-14 14:08:02,994 - DEBUG: Login successful on host '172.24.3.109'
-2020-04-14 14:08:02,995 - DEBUG: Session token is: 97544990-7e48-11ea-835c-02423a1c239f
-2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to Enea Edge Management. \
-Content: #!/bin/bash
-echo test_success_after_always
-2020-04-14 14:08:03,138 - INFO: Done
-2020-04-14 14:08:03,169 - DEBUG: Logging out and exiting...
-
-
-
-
- Uploading a Custom Script from the Enea Edge Management to a
- Device
-
- Steps and options on how to upload a custom script from the
- Enea Edge Management to a Device are described below.
-
-
- Script Options
-
- $ python customScripts/uploadOnDevice.py -h
-2020-04-14 10:27:05,614 - INFO: Upload Custom Script on Device
-Usage: uploadOnDevice.py [options]
-
-Add a Custom Script to a Device
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME
- Custom Script Name that resides on Enea Edge Management
- -e PHASE, --phase=PHASE
- Execution phase. Must be one of the following: once-
- before-startup | always-before-startup | once-after-
- startup | always-after-startup
- -n DEVICENAME, --device-name=DEVICENAME
- Name of the device
- -r, --reboot Reboot the device after uploading
-
- Mandatory options:
- -H/--host, -c/--customScriptName, -e/--phase, -n/--device-name
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to upload a Custom Script
- from the Enea Edge Management to a Device must contain a list of dictionaries.
- Each dictionary indicates the test case name and the test case
- arguments passed to the
- customScripts/uploadOnDevice Python
- module.
-
- Sample unit-test JSON file
- format:
-
- [
-{
-"name": "Uploading a Custom Script from Enea Edge Management to device",
-"args": "-c test_success_after_always -e always-after-startup -n inteld1521-6"
-}
-]
-
-
-
- Running the Python Module
-
- The customScripts/uploadOnDevice Python
- module can be executed individually by running the following command
- line:
-
- $ python automation_framework/customScripts/uploadOnDevice.py -c \
-test_success_after_always -e always-after-startup -n inteld1521-6
-2020-04-14 14:26:26,205 - DEBUG: Started logging
-2020-04-14 14:26:26,206 - INFO: Upload Custom Script on Device
-2020-04-14 14:26:26,251 - DEBUG: Login successful on host '172.24.3.109'
-2020-04-14 14:26:26,252 - DEBUG: Session token is: 28ebcb10-7e4b-11ea-835c-02423a1c239f
-2020-04-14 14:26:26,286 - DEBUG: Found device with name 'inteld1521-6'
-2020-04-14 14:26:26,287 - DEBUG: Upload test_success_after_always to inteld1521-6
-2020-04-14 14:26:26,314 - INFO: Done
-2020-04-14 14:26:26,341 - DEBUG: Logging out and exiting...
-
-
-
-
- Removing a Custom Script from the Enea Edge Management
-
- Steps and options on how to remove a custom script from the
- Enea Edge Management are described below.
-
-
- Script Options
-
- $ python customScripts/delete.py -h
-2020-04-14 14:36:52,010 - INFO: Delete Custom Script on Enea Edge Management
-Usage: delete.py [options]
-
-Delete a Custom Script 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 Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME
- Custom Script Name that resides on a Device
- -e PHASE, --phase=PHASE
- Execution phase. Must be one of the following: once-
- before-startup | always-before-startup | once-after-
- startup | always-after-startup
-
- Mandatory options:
- -H/--host, -e/--phase
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to remove a Custom Script
- from the Enea Edge Managementdid you mean device or
- Enea Edge Management? must contain a list of dictionaries. Each dictionary
- indicates the test case name and the test case arguments passed to the
- customScripts/delete Python module.
-
- Sample unit-test JSON file
- format:
-
- [
-{
-"name": "Removing a Custom Script from Enea Edge Management",
-"args": "-c test_success_after_always -e always-after-startup"
-}
-]
-
-
-
- Running the Python Module
-
- The customScripts/delete Python module can
- be executed individually by running the following command line:
-
- $ python automation_framework/customScripts/delete.py -c \
-test_success_after_always -e always-after-startup
-2020-04-14 14:39:22,042 - DEBUG: Started logging
-2020-04-14 14:39:22,042 - INFO: Delete Custom Script on Enea Edge Management
-2020-04-14 14:39:22,081 - DEBUG: Login successful on host '172.24.3.109'
-2020-04-14 14:39:22,082 - DEBUG: Session token is: f75a83a0-7e4c-11ea-835c-02423a1c239f
-2020-04-14 14:39:22,099 - DEBUG: Found custom script: 'test_success_after_always'
-2020-04-14 14:39:22,099 - DEBUG: Delete script test_success_after_always, \
-phase always-after-startup from Enea Edge Management
-2020-04-14 14:39:22,118 - INFO: Done
-2020-04-14 14:39:22,135 - DEBUG: Logging out and exiting...
-
-
-
-
- Removing a Custom Script from a Device
-
- Steps and options on how to remove a custom script from a device
- are described below.
-
-
- Script Options
-
- $ python customScripts/deleteOnDevice.py -h
-2020-04-14 10:27:23,536 - INFO: Delete Custom Script on Device
-Usage: deleteOnDevice.py [options]
-
-Delete a Custom Script 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 Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -c CUSTOMSCRIPTNAME, --customScriptName=CUSTOMSCRIPTNAME
- Custom Script Name that resides on a Device
- -e PHASE, --phase=PHASE
- Execution phase. Must be one of the following: once-
- before-startup | always-before-startup | once-after-
- startup | always-after-startup
- -n DEVICENAME, --device-name=DEVICENAME
- Name of the device
-
- Mandatory options:
- -H/--host, -n/--device-name
-
-
-
- Configuring the JSON File
-
- The JSON configuration file needed to remove a Custom Script
- from a device must contain a list of dictionaries. Each dictionary
- indicates the test case name and the test case arguments passed to the
- customScripts/deleteOnDevice Python
- module.
-
- Sample unit-test JSON file
- format:
-
- [
-{
-"name": "Removing a Custom Script from device",
-"args": "-c test_success_after_always -e always-after-startup -n inteld1521-6"
-}
-]
-
-
-
- Running the Python Module
-
- The customScripts/deleteOnDevice Python
- module can be executed individually by running the following command
- line:
-
- $ python automation_framework/customScripts/deleteOnDevice.py -c \
-test_success_after_always -e always-after-startup -n inteld1521-6
-2020-04-14 14:33:52,288 - DEBUG: Started logging
-2020-04-14 14:33:52,288 - INFO: Delete Custom Script on Device
-2020-04-14 14:33:52,327 - DEBUG: Login successful on host '172.24.3.109'
-2020-04-14 14:33:52,327 - DEBUG: Session token is: 32cde4f0-7e4c-11ea-835c-02423a1c239f
-2020-04-14 14:33:52,349 - DEBUG: Found device with name 'inteld1521-6'
-2020-04-14 14:33:52,349 - DEBUG: Delete test_success_after_always, \
-phase always-after-startup from inteld1521-6
-2020-04-14 14:33:52,373 - INFO: Done
-2020-04-14 14:33:52,391 - DEBUG: Logging out and exiting...
-
-
-
-
- Custom Script - Full Example
-
- All Python API used in this example are described in detail in the following sections.
-
- The list of custom scripts can be found in
- <AF-TH-install-dir>/lab_config/customScripts:
-
-
-
- test_fail_after_always. Phase:
- always-after-startup.
-
-
-
- test_fail_after_once. Phase:
- once-after-startup.
-
-
-
- test_fail_before_always. Phase:
- always-before-startup.
-
-
-
- test_fail_before_once. Phase:
- once-before-startup.
-
-
-
- test_success_after_always. Phase:
- always-after-startup.
-
-
-
- test_success_after_once. Phase:
- once-after-startup.
-
-
-
- test_success_before_always. Phase:
- always-before-startup.
-
-
-
- test_success_before_once. Phase:
- once-before-startup.
-
-
-
-
- The following example uses the
- test_success_after_always custom script.
-
-
-
- Uploading a Custom Script to the Enea Edge Management
-
- $ python automation_framework/customScripts/upload.py \
--f lab_config/customScripts/test_success_after_always -e always-after-startup
-2020-04-14 14:08:02,824 - DEBUG: Started logging
-2020-04-14 14:08:02,915 - INFO: Upload Custom Script
-2020-04-14 14:08:02,994 - DEBUG: Login successful on host '172.24.3.109'
-2020-04-14 14:08:02,995 - DEBUG: Session token is: 97544990-7e48-11ea-835c-02423a1c239f
-2020-04-14 14:08:02,996 - DEBUG: Upload test_success_after_always to Enea Edge Management. \
-Content: #!/bin/bash
-echo test_success_after_always
-2020-04-14 14:08:03,138 - INFO: Done
-2020-04-14 14:08:03,169 - DEBUG: Logging out and exiting...
-
-
-
- Uploading a Custom Script from the Enea Edge Management to a
- Device
-
- $ python automation_framework/customScripts/uploadOnDevice.py -c \
-test_success_after_always -e always-after-startup -n inteld1521-6
-2020-04-14 14:26:26,205 - DEBUG: Started logging
-2020-04-14 14:26:26,206 - INFO: Upload Custom Script on Device
-2020-04-14 14:26:26,251 - DEBUG: Login successful on host '172.24.3.109'
-2020-04-14 14:26:26,252 - DEBUG: Session token is: 28ebcb10-7e4b-11ea-835c-02423a1c239f
-2020-04-14 14:26:26,286 - DEBUG: Found device with name 'inteld1521-6'
-2020-04-14 14:26:26,287 - DEBUG: Upload test_success_after_always to inteld1521-6
-2020-04-14 14:26:26,314 - INFO: Done
-2020-04-14 14:26:26,341 - DEBUG: Logging out and exiting...
-
-
-
- Removing a Custom Script from a Device
-
- $ python automation_framework/customScripts/deleteOnDevice.py -c \
-test_success_after_always -e always-after-startup -n inteld1521-6
-2020-04-14 14:33:52,288 - DEBUG: Started logging
-2020-04-14 14:33:52,288 - INFO: Delete Custom Script on Device
-2020-04-14 14:33:52,327 - DEBUG: Login successful on host '172.24.3.109'
-2020-04-14 14:33:52,327 - DEBUG: Session token is: 32cde4f0-7e4c-11ea-835c-02423a1c239f
-2020-04-14 14:33:52,349 - DEBUG: Found device with name 'inteld1521-6'
-2020-04-14 14:33:52,349 - DEBUG: Delete test_success_after_always, \
-phase always-after-startup from inteld1521-6
-2020-04-14 14:33:52,373 - INFO: Done
-2020-04-14 14:33:52,391 - DEBUG: Logging out and exiting...
-
-
-
- Removing a Custom Script from the Enea Edge Management
-
- $ python automation_framework/customScripts/delete.py -c \
-test_success_after_always -e always-after-startup
-2020-04-14 14:39:22,042 - DEBUG: Started logging
-2020-04-14 14:39:22,042 - INFO: Delete Custom Script on Enea Edge Management
-2020-04-14 14:39:22,081 - DEBUG: Login successful on host '172.24.3.109'
-2020-04-14 14:39:22,082 - DEBUG: Session token is: f75a83a0-7e4c-11ea-835c-02423a1c239f
-2020-04-14 14:39:22,099 - DEBUG: Found custom script: 'test_success_after_always'
-2020-04-14 14:39:22,099 - DEBUG: Delete script test_success_after_always, \
-phase always-after-startup from Enea Edge Management
-2020-04-14 14:39:22,118 - INFO: Done
-2020-04-14 14:39:22,135 - DEBUG: Logging out and exiting...
-
-
-
-
- Adding an Offline Configuration Store
-
- Steps and options on how to add a Config Store in the
- Enea Edge Management are described below.
-
-
- Script Options
-
- To add a config store in the Enea Edge Management 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.
-
-
-
- Configuring the JSON file
-
- Example of a CONFIGSTORE json file:
-
- {
- "descr": "intelc3850-2",
- "version": "2.4.0",
- "deviceGroupingTags": "",
- "deviceId": "intelc3850-2",
- "name": "intelc3850-2"
-}
-
-
-
- Running the Python Module
-
- Adding an offline config store in the Enea Edge Management using
- the command line:
-
- python automation_framework/device/addConfigStore.py -f \
-lab_config/inteld1521-16/store.json
-2020-10-16 09:35:51,084 - INFO: Add offline config store
-2020-10-16 09:35:51,160 - INFO: Done
-
-
-
-
- Uploading an Offline Configuration Store to an uCPE
- Device
-
- Steps and options on how to upload a config store to a device are
- described below.
-
-
- Script options
-
- To upload a config store to a uCPE Device use the
- uploadConfigStore.py script detailed
- below.
-
- python uploadConfigStore.py -h
-Usage: uploadConfigStore.py [options]
-
-Upload offline configuration to uCPE Device.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -s STORE, --store=STORE
- Offline config store name
- -d DEVICE, --device=DEVICE
- Device Name
-
- Mandatory options:
- -H/--host, -s/--store, -d/--device
-
-
-
- Running the Python Modules
-
- python automation_framework/device/uploadConfigStore.py -s inteld1521-16 \
--d inteld1521-16
-2020-10-16 09:37:29,074 - INFO: Upload offline configuration to uCPE Device
-2020-10-16 09:37:49,321 - INFO: The 'inteld1521-16' config store was successfully \
-uploaded on device!
-2020-10-16 09:37:49,322 - INFO: Done
-
-
-
-
- Checking the Upload of an Offline Configuration Store
-
- Steps and options on how to check an upload of a Config Store to a
- Device are described below.
-
-
- Script options
-
- To check an upload a config store to a uCPE Device use the
- getUploadStatus.py script detailed below.
-
- python getUploadStatus.py -h
-Usage: getUploadStatus.py [options]
-
-Get upload offline configure status on uCPE Device.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -d DEVICE, --device=DEVICE
- Device Name
-
- Mandatory options:
- -H/--host, -d/--device
-
-
-
- Running the Python Modules
-
- python automation_framework/device/getUploadStatus.py -d inteld1521-16
-2020-10-16 09:38:33,388 - INFO: Get upload offline configure status on uCPE Device
-2020-10-16 09:38:33,486 - INFO: Successful: True
-2020-10-16 09:38:33,487 - INFO: Store name: inteld1521-16
-2020-10-16 09:38:33,488 - INFO: In progress: False
-2020-10-16 09:38:33,489 - INFO: A config store was successfully uploaded on device!
-2020-10-16 09:38:33,490 - INFO: Done
-
-
-
-
- Removing an Offline Configuration Store in the
- Enea Edge Management
-
- Steps and options on how to remove an upload of a Config Store
- from the Enea Edge Management are described below.
-
-
- Modifications of an Offline Configurations Store are not
- possible post deployment in the Enea Edge Management, 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.
-
-
-
- Script options
-
- To remove a config store from the Enea Edge Management use the
- removeConfigStore.py script detailed
- below.
-
- python removeConfigStore.py -h
-Usage: removeConfigStore.py [options]
-
-Remove a config store from Enea Edge Management.
-
-Options:
- --version show program's version number and exit
- -h, --help show this help message and exit
- -u USERNAME, --username=USERNAME
- Enea Edge Management login username
- -p PASSWORD, --password=PASSWORD
- Enea Edge Management login password
- -H HOST, --host=HOST Enea Edge Management host name or IP address
- -o STORENAME, --store-name=STORENAME
- Name of the Offline Config Store
-
- Mandatory options:
- -H/--host, -o/--store-name
-
-
-
- Running the Python Modules
-
- python automation_framework/device/removeConfigStore.py -o inteld1521-16
-2020-10-16 09:39:39,127 - INFO: Remove offline config store
-2020-10-16 09:39:39,289 - INFO: Done
-
-
-
-
-
- Test Harness
-
- All Test Harness sources are under the
- <AF-TH-install-dir> directory and the host file
- is the Ansible inventory file. See the complete tree listing at the
- beginning of this chapter for details.
-
- The Ansible based Test Harness represents an example of how to
- structure all the files needed for creating automated test cases using the
- AF and provides a way to implement them. The
- ansible.cfg file contains an example of the Ansible
- default configuration. It offers the possibility to display the Ansible
- console output in different ways, by setting the
- stdout_callback option to selective
- or debug. The default value for this option is set to
- selective to print only certain tasks. It is
- recommended to switch to debug when a test fails. By
- setting the parameter any_errors_fatal to
- True, task failures will be considered fatal errors
- (the play execution will stop). and why would this stop of play
- execution help in this debugging scenario
-
- All Playbooks that execute AF python modules run on
- localhost. New entries have to be created for direct
- communication over SSH with the boards, as done in the
- [fortigateFW] example.
-
- The setup_env.sh script sets up the
- testHarness test environment by creating
- testHarness-venv python virtualenv, executing requests
- needed by Automation Framework python modules and installing
- Ansible.
-
- The Ansible package version installed in the test environment is
- 2.9.6. The playbooks are based on this version of Ansible.
-
- The /playbooks directory contains all the
- implemented Ansible Playbooks. For more details please refer to the Sample Test Cases Chapter in the
- Manual.
-
- The /uCPEM_config directory stores JSON
- configuration files needed for the setup of the Enea Edge Management used by TH.
- One configuration file is needed per Enea Edge Management installation, to be used
- in the TH.
-
- The /vnf_image directory stores the VNF Images
- needed by the Ansible Playbooks (i.e. the sample test cases).
-
- The /lab_config directory stores the JSON
- configuration files related to a device (devices, NICs and bridges) as
- well as sample custom scripts. Each subfolder should be named exactly like
- the device name and should contain all the related configuration files
- needed for the test cases to be run on it.
-
- The /vnf_config directory stores the
- configuration files related to a VNF Descriptor and VNF instances.
- Typically these include a VNF Image JSON, VNF Instance JSON, VNF license
- and any other files required by the type of the VNF. Each subfolder should
- be named exactly like the name of the VNF Descriptor and should contain
- all the related configuration files needed for test cases to be run using
- this VNF.
-
- The /log directory is created when the
- setup_env.sh is run. When test cases are run, the
- Ansible and the Python logs are stored in the
- ansible.log and debug.log files,
- respectively.
-
-
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/book.xml b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/book.xml
deleted file mode 100644
index 6398606..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/book.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-]>
-
- Enea Enea Edge Automation Framework and Test Harness User Guide
-
- Release Version
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/components.xml b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/components.xml
deleted file mode 100644
index 24a7a29..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/components.xml
+++ /dev/null
@@ -1,137 +0,0 @@
-
-
- Components
-
- An overview of the Enea Edge Runtime and the Edge Management
- in cooperation with the Automation Framework and Test Harness, will
- be presented in detail.
-
-
- Component Overview
-
-
-
-
-
-
-
-
-
- Enea Edge
-
- Enea Edge is comprised of the Enea Edge Management and the Enea
- Edge Runtime.
-
-
- Enea Edge Management
-
- The Enea Edge Management application needs to be installed on a
- supported platform. Upon installation, the system will be set up to
- manage Enea Edge "devices", these are the virtualized CPE devices
- used in testing.
-
- For more on Enea Edge Management installation instructions, please
- refer to the section on how to Installing the Enea Edge Management in the
-
- Manual.
-
-
-
- Enea Edge Runtime
-
- One or more uCPE devices running the Enea Edge Runtime
- are required as hosts to run the VNF(s). The uCPE device is
- known to the Enea Edge Management as the "VcpeAgent" device module.
-
-
- Before running any use case with the Automation Framework or the
- Test Harness, make sure the uCPE device(s) have been added to the Edge Management.
-
-
- Adding a VcpeAgent device can be done via two methods:
-
-
-
- Through the Enea Edge Management GUI. Add the device using the
- appropriate parameters by launching the UI under
- Devices -> Manage in the
- main screen.
-
-
-
- REST API. Invoke the Enea Edge Management REST API to add a
- device.
-
-
-
- For more on Enea Edge installation instructions, please
- refer to chapter Preparing the USB stick for installation of the
- Enea Edge Runtime in the
- Manual.
-
-
-
-
- Automation Framework
-
- Testing can be performed by running the available Python scripts
- against the Enea Edge Management REST API (Python samples supplied). This can be
- done by using the Python scripts individually or by using the Python
- unit-test suite that is able to automatically run test-cases defined for
- each available Python script.
-
- In either case, it is desirable to use a different host (instead of
- running the tests on the same system as the Enea Edge Management) in order to
- ensure that the Enea Edge Management is setup and installed correctly in terms of
- allowing external users to access it and use it effectively.
-
-
-
- Test Harness
-
- The Test Harness (TH) provides a way for driving configuration with
- Ansible Playbooks, by running the python modules from the Automation
- Framework (AF) and by direct connection over SSH to the boards that run
- Enea Edge.
-
- The Test Harness includes an automated test suite that
- contains:
-
-
-
- VNF, Device and Network Smoke Test Cases. A sample test suite
- that acts as basic smoke tests for Enea Edge and also as a
- sanity-check test suite for the AF and TH.
-
-
-
- VNF Deployment and Lifecycle. A sample test suite that verifies
- the instantiation, lifecycle control and destruction of a VNF for Enea
- Edge.
-
-
-
- Service Creation and Lifecycle. A sample test suite that
- contains complex test cases showcasing service creation and lifecycle
- management.
-
-
-
- For details about the test suites or test cases please refer to
- chapter Sample Test Cases in the
- Manual.
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/getting_started.xml b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/getting_started.xml
deleted file mode 100644
index 97666cf..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/getting_started.xml
+++ /dev/null
@@ -1,239 +0,0 @@
-
-
- Getting Started with the Automation Framework and Test
- Harness
-
-
- Prerequisites
-
- For installation of the Automation Framework and Test Harness a
- CentOS 7 host machine is needed with support for:
-
-
-
- Python 2.7.
-
-
-
- EPEL Repository:sudo yum install epel-release
-
-
-
- PIP package manager: sudo yum -y install python-pip
-
-
-
- Virtualenv tool: sudo pip install virtualenv
-
-
-
-
- The Automation Framework and Test Harness installation may be done
- on the same machine used for Enea Edge Management installation, although this is
- not encouraged. For more details see section Automation Framework in the .
-
-
-
-
- Environment
-
-
- Lab setup overview for Basic Setup
-
-
-
-
-
-
- The following enviroment setup is needed for running all tests
- defined in the
- manual:
-
- Lab Network
- Requirements
-
- DHCP enabled.
-
-
-
- Internet Connectivity.
-
-
-
- Enea Edge Management Host
- Requirements
-
-
-
- Running CentOS 7.
-
-
-
- Connected to the Lab Network.
-
-
-
- Enea Edge Management installed.
-
-
- For details on how to install the Enea Edge Management, see Installing the Enea Edge Management in the
-
- Manual.
-
-
-
-
- uCPE device
- Requirements
-
- Minimum of 4 Physical Network Devices.
-
-
-
- 4GB RAM and 4 cores (Intel C3000 or Xeon D).
-
-
-
- 2 Physical connections to the Lab Network.
-
-
-
- Enea Edge Runtime installed.
-
-
- For information on how to install Enea Edge refer to
- Preparing the USB stick for installation
- of the Enea Edge Runtime in the
- Manual.
-
-
-
- Lab Setup Overview for ChainedVNFsService
-
-
-
-
-
-
-
-
- uCPE device 1 and 2
- Requirements
-
- Minimum of 4 Physical Network Devices.
-
-
-
- 16GB RAM and 8 cores (Intel C3000 or Xeon D).
-
-
-
- 2 Physical connections to the Lab Network.
-
-
-
- 1 Physical connection back to back between both uCPE
- devices.
-
-
-
- Enea Edge Runtime installed.
-
-
-
-
-
- Installation and Initial Setup
-
-
-
- Unzip the
- Enea_NFV_Access_AF-TH_<version>-build<build_number>.zip
- archive file, provided by Enea, on a supported host machine.
-
- The directory in which the archive has been unpacked will be
- denoted as <AF-TH-installdir>.
-
-
-
- Enter the <AF-TH-install-dir> directory
- and run the setup_env.sh script to do the initial
- setup of the Test Harness environment: source setup_env.sh
-
-
-
- Set up the Enea Edge Management which will be used by the TH:
-
-
-
- Create the Enea Edge Management JSON config file in the
- <AF-TH-install-dir>/uCPEM_config/
- directory:{
-"ucpe_usr":"Enea Edge Management Username",
-"ucpe_pass":"Enea Edge Management Password",
-"ucpe_host":"Enea Edge Management IP/Hostname",
-"ftp_usr":"FTP Username",
-"ftp_pass":"FTP Password",
-"ftp_port":"FTP Port"
-}See the
- <AF-TH-install-dir>/uCPEM_config/ucpem01.json
- file as an example.
-
-
-
- Run the setupuCPEManager.yml Ansible
- Playbook with the JSON config path as a parameter:
- ansible-playbook playbooks/setupuCPEManager.yml -e\
-"@uCPEM_config/<config_name>.json"
-
- Exampleansible-playbook playbooks/setupuCPEManager.yml -e\
-"@uCPEM_config/ucpem01.json"
-
-
-
-
-
-
- The steps presented in this section are to be executed only once,
- for the initial setup of the TH environment.
-
-
- After the initial setup, each session ends by closing the Python
- virtual environment through running deactivate from the
- <AF-THinstall-dir> directory.
-
- Subsequent use of the installation requires activating the Python
- virtual enviroment before using the Automation Framework and Test Harness:
- source
- <AF-TH-install-dir>/testHarness-venv/bin/activate.
-
- Furthermore, if a user wants to use a new Enea Edge Management instance for
- a new session, the user also has to re-run the
- setupuCPEManager.yml playbook with the corresponding
- JSON config for the new Enea Edge Management instance.
-
-
- Automation Framework and Test Harness History Information can be
- found in the AF&TH CHANGELOG file available in:
- <AF-TH-install-dir>/CHANGELOG
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png
deleted file mode 100755
index 0329450..0000000
Binary files a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/ChainedVNFsService_setup.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png
deleted file mode 100755
index a384877..0000000
Binary files a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/autofw_testh_overview.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/environment_basicsetup.png b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/environment_basicsetup.png
deleted file mode 100755
index c30dcfd..0000000
Binary files a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/images/environment_basicsetup.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/overview.xml b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/overview.xml
deleted file mode 100644
index b2486a0..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/overview.xml
+++ /dev/null
@@ -1,188 +0,0 @@
-
-
- Overview
-
- This document describes the Automation Framework and Test Harness for
- Enea Edge, along with instructions regarding the necessary steps to
- run these software tools.
-
-
- Description
-
- The Automation Framework provides a way for driving configuration
- with Python scripting. It complements the Enea Edge Management GUI and uses
- the northbound REST APIs, given to provide full usability of the Enea Management
- features.
-
- The Test Harness is based on running Ansible Playbooks to complete
- different test cases, which make use of the Automation Framework Python
- modules and/or direct commands on the uCPE devices running the Enea Edge Runtime.
-
-
-
- Definitions and Acronyms
-
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/troubleshooting_guide.xml b/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/troubleshooting_guide.xml
deleted file mode 100644
index a5cd664..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/doc/troubleshooting_guide.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
- Troubleshooting Guide
-
- The following are best practices and possible solutions to problems
- that may occur during operation:
-
-
-
- All the Playbooks have to be run from the root directory of the
- Test Harness (TH) to avoid failures such as "File not found!", since the
- paths to the required configuration files are hardcoded into the
- Playbooks.
-
-
-
- If the setup_env.sh fails, for debugging remove
- &> /dev/null from the failed command. The
- output of the command will be printed, and will not be redirected to
- /dev/null anymore.
-
-
-
- When setting up the Enea Edge Management to be used by the TH through the
- setupuCPEManager.yml Playbook, if the uCPE
- username/password/host are incorrect or are missing, all the Sample test
- cases will fail. If the FTP username/password/port are wrong or are
- missing, the tests that require file transfer to the Enea Edge Management will
- fail.
-
-
-
- Ansible logs are not written into the
- log/ansible.log file when the
- stdout_callback is set to
- selective in the ansible.cfg file.
- For debugging, check the python logs from the
- log/debug.log file or change the
- stdout_callback to debug and rerun
- the test.
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-auto-fw-th-user-guide/swcomp.mk b/doc/book-enea-nfv-access-auto-fw-th-user-guide/swcomp.mk
deleted file mode 100755
index 6b65cff..0000000
--- a/doc/book-enea-nfv-access-auto-fw-th-user-guide/swcomp.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-# Component build specification
-
-# Version of THIS book
-BOOK_VER ?= $(REL_VER)-dev
-
-DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
-
-BOOKPACKAGES := book-enea-nfv-access-auto-fw-th-user-guide
-BOOKDESC_$(BOOKPACKAGES) := "Enea Enea Edge $(PROD_VER) Automation Framework and Test Harness User Guide"
-BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/128t_vnf_router.xml b/doc/book-enea-nfv-access-example-usecases/doc/128t_vnf_router.xml
deleted file mode 100644
index 89692b0..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/128t_vnf_router.xml
+++ /dev/null
@@ -1,715 +0,0 @@
-
-
- 128T VNF Router Example Use-case
-
- The 128T Networking Platform (128T) natively provides network-based
- security, control, and insight across data centers, wide-area networks
- (WAN), and edge locations for enterprises, service providers, and cloud
- companies alike.
-
-
- Prerequisites
-
- The following are needed for this example use case:
-
-
-
- 1 in band management port for device management.
-
-
-
- 1 in band management port for 128T VNF.
-
-
-
- 1 WAN interface for 128T.
-
-
-
- 1 LAN interface for 128T.
-
-
-
- The following files are needed for this example use-case:
-
-
-
- 128T router VNF image. Please contact 128 Technology to get a
- VNF image and its license file.
-
-
-
- cloud-init iso image.
-
-
-
-
- For data path validation, it may be required to generate a new
- cloud-init image to match your network configuration.
-
-
-
-
- 128T VNF Router
-
-
- 128T VNF Router Setup Overview
-
-
-
-
-
-
-
-
-
- Use-case Setup
-
- Configuring Network Interfaces on uCPE
- devices:
-
- Add the trgt uCPE device into Enea Edge Management:
- Devices -> Manage -> Add.
-
- Fill in the required fields with the following data:
-
-
- Device Details
-
-
-
-
-
-
-
-
-
-
- Field
-
- Value
-
-
-
-
-
- Type
-
- Enea universal CPE
-
-
-
- Release
-
- 2.2.2
-
-
-
- Name
-
- trgt
-
-
-
- IP/DNS Address
-
- <unspecified>
-
-
-
- Description
-
- Target 1
-
-
-
- SSH Port
-
- 830
-
-
-
- SSH User Name
-
- root
-
-
-
- Password
-
- null
-
-
-
- Device ID
-
- Also configured during installation of the device
- (E.g.: Target-15).
-
-
-
- OK
-
- Green status indicates connection with uCPE device
- was established.
-
-
-
-
-
-
-
- In order to add the device on the map: Right-Click on
- Map -> Place Device -> trgt.
-
-
-
- Configure the virtualization infrastructure for 128T VNF by
- creating three OVS bridges and a host interface:
-
- Add the Host Interface by selecting the trgt device, then
- Configuration -> External Interfaces ->
- Configuration -> Add, and fill in the required fields
- with the following data:
-
-
- Host Interface Details
-
-
-
-
-
-
-
-
-
-
- Field
-
- Value
-
-
-
-
-
- Source
-
- enp4s0f1. The only interface
- available for LAN connection.
-
-
-
- networking-type
-
- dpdk
-
-
-
- dpdk-type
-
- vfio-pci
-
-
-
- Create
-
- <interface enp4s0f1 ready to be used in a LAN
- bridge.>
-
-
-
-
-
- Select the trgt device then: Configuration ->
- OpenVSwitch -> Bridges -> Add, and fill in the
- required fields for each bridge with the following data from each
- table:
-
-
- ibm_br Bridge Details
-
-
-
-
-
-
-
-
-
-
- Field
-
- Value
-
-
-
-
-
- id
-
- <autogenerated - do not change>
-
-
-
- Name
-
- ibm_br
-
-
-
- ovs-bridge-type
-
- inbandMgmt
-
-
-
- Create
-
- The system will automatically select the
- physical interface that has access to Enea Edge
- Management.
-
-
-
-
- lan_br Bridge Details
-
-
-
-
-
-
-
-
-
-
- Field
-
- Value
-
-
-
-
-
- id
-
- <autogenerated - do not change>
-
-
-
- Name
-
- lan_br
-
-
-
- ovs-bridge-type
-
- dataPlane
-
-
-
- sub-type
-
- communication
-
-
-
- +
-
- Name: enp4s0f1 OK
-
-
-
- Create
-
-
-
-
-
-
-
-
-
- Onboarding the VNFs:
-
- Onboard the VM Image through VNF -> Descriptors ->
- On-board, and fill in the required fields with the following
- values:
-
-
- VM Image Details
-
-
-
-
-
-
-
-
-
-
- Field
-
- Value
-
-
-
-
-
- VM image file
-
- centos_128t_with_ci.qcow2
-
-
-
- Image format
-
- QCOW2
-
-
-
- VNF Type Name
-
- 128T
-
-
-
- Description
-
- 128T Router
-
-
-
- Version
-
- 1.0
-
-
-
- Memory in MB
-
- 8192. More memory can be allocated if required
- (<28672).
-
-
-
- Num. of CPUs
-
- 2. More CPUs can be reserved if required
- (<15).
-
-
-
- Interfaces -> +
-
- Name: mgmt
-
-
-
- Interfaces -> +
-
- Name: wan
-
-
-
- Interfaces -> +
-
- Name: lan
-
-
-
- Cloud Init -> Cloud-Init Datasource
-
- ISO
-
-
-
- Cloud Init -> Cloud-Init Disk Type
-
- cdrom
-
-
-
- Properties -> +
-
- Name: vnfMgmtIpAddress. Value: 10.0.0.2
-
-
-
- Properties -> +
-
- Name: internalMgmtPort. Value: 443
-
-
-
- Properties -> +
-
- Name: externalMgmtPort. Value: 60001
-
-
-
- Onboard
-
- <Wait for message: VNF package onboarded
- successfully>
-
-
-
- Close
-
-
-
-
-
-
-
-
-
-
- HTTPS access (443) can be changed with another type of
- access. Please consult official 128T documentation and make sure
- the 128T VNF is configured to accept another type of connection
- before changing the port number.
-
-
-
- externalMgmtPort (60001) represents the
- external port on which the user can access the VNF management
- interface via HTTPS. Another port can be selected if needed. There
- are no other changes required or components affected by this
- change.
-
-
-
- vnfMgmtIpAddress (10.0.0.2) represents
- the IP address of the management interface of the 128T VNF.
- Changing this value requires an update to the 128T configuration
- to match the new IP address.
-
-
-
-
- Instantiating the VNFs:
-
- Instantiate the 128T VNF by selecting the trgt device, then
- VNF -> Instances -> Add.
-
- Fill in the required fields with the following values:
-
-
-
-
- To procure the VNF image files and their licenses, please
- contact each respective VNF provider.
-
-
-
-
- Testing the Use-case
-
- In order to access the web interface of the 128T VNF, open a
- browser from a machine connected on the same network with the WAN port
- of the trgt uCPE device and browse to:
- https://<public_trgt_WAN_IP>:60001. Log in
- using the following credentials:
-
-
-
- Username: admin
-
-
-
- Password: 128Tadmin
-
-
-
- In order to validate the data path, connect a test machine to the
- LAN physical port, assign the static IP and a route:> ifconfig eth3 192.168.64.3 netmask 255.255.255.0
-> ip route add default via 192.168.64.1 dev eth3
-> ping 8.8.8.8
-
-
-
- Use-case Clean-up
-
- In order to remove the setup created previously all components
- need to be deleted in reverse order:
-
-
-
- Select the trgt uCPE device -> VNF -> Instances ->
- 128T -> Delete.
-
-
-
- Select the trgt uCPE device -> Configuration ->
- OpenVSwitch -> Bridges. Select all bridges -> Delete.
-
-
-
- Select the trgt uCPE device -> Configuration -> External
- Interfaces -> Configuration. Select all interfaces ->
- Delete.
-
-
-
- VNF -> Descriptors, select all bundles ->
- Offboard.
-
-
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/appendix_1.xml b/doc/book-enea-nfv-access-example-usecases/doc/appendix_1.xml
deleted file mode 100644
index df262af..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/appendix_1.xml
+++ /dev/null
@@ -1,63 +0,0 @@
-
-
- How to create a 128T cloud-init iso image (day-0
- configuration)
-
- Prerequisites:
-
- Development host with Linux shell.
-
-
-
- genisoimage tool installed.
-
-
-
- Unpack the 128T/128t-cloud-init-example.tar.gz
- archive and check the README file for more details:
-
- >tar -zxf 128t-cloud-init-example.tar.gz
->cd 128T/cloud-init-example/
->ls ./
-README
-user-data
-meta-data
-t128-running.xml
-
- To generate the cloud-init iso image:
-
- >genisoimage -output centos_128t_ci.iso -volid cidata -joliet \
--rock user-data meta-data t128-running.xml
-
- Notes:
-
- user-data and meta-data
- files must be kept unchanged.
-
-
-
- To update the 128T configuration change the
- t128-runing.xml file.
-
-
-
- XML is the same file downloaded from 128T web access:
- configuration -> Import and Export Configuration ->
- Export Configuration -> Download Configuration. The
- configuration can be updated from a web interface, downloaded onto the
- development host and used in generating a new cloud-init iso
- image.
-
-
-
- By default, t128-running.xml is configured to pass
- all traffic from the LAN to the WAN interface. There is only one change
- required for the 128T VNF to work on the user's network:
-
- <rt:next-hop>172.24.15.254</rt:next-hop>
-
- Please change <172.24.15.254> with the IP address of your
- Gateway in the t128-running.xml file and generate a new
- iso image as described above. For more details about configuring the 128T
- VNF please contact 128 Technologies.
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/appendix_2.xml b/doc/book-enea-nfv-access-example-usecases/doc/appendix_2.xml
deleted file mode 100644
index 2458d99..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/appendix_2.xml
+++ /dev/null
@@ -1,326 +0,0 @@
-
-
- How to create the 128T image for NFV Access
-
- The following steps were used by Enea to generate the 128T qcow2 image
- used as the VNF image on NFV Access.
-
-
- Keep in mind a Virtual Machine was used instead of a physical
- host.
-
-
- Prerequisites:
-
- 128T-3.2.7-1.el7.centos.x86_64.iso provided
- by 128 Technologies.
-
-
-
- A Linux development host with internet access.
-
-
-
- A least one of the TAP interfaces connected to a bridge with
- Internet access.
-
- How to create the 128T image for NFV
- Access:
-
- >qemu-img create -f qcow2 128t.qcow2 128G
->qemu-system-x86_64 -enable-kvm -m 8G -cpu host -smp cores=3,sockets=1 \
--M q35 -nographic bios /usr/share/qemu/bios.bin -boot order=d,menu=on \
-cdrom 128T-3.2.7-1.el7.centos.x86_64.iso \
-hdb 128t.qcow2 \
-device e1000,netdev=net1,mac=52:52:01:02:03:01 \
-netdev tap,id=net1,ifname=tap1,script=no,downscript=no
-
-
-
- Press the <ENTER> key to begin the installation
- process.
-
-
-
- Wait for the distribution and the 128T to install:
-
- ------------------------------
-128T Packages Installed
-
-Please Remove Install Media,
-
-then enter <Yes> to reboot and
-continue install process
-
- <Yes> <No>
-------------------------------
-
- Press Yes.
-
-
-
- Wait to reboot and press CTR+ a+c to enter
- the qemu monitor:
-
- (qemu) quit
-
-
-
- Start qemu only with the qcow2 image attached, no installer
- image required:
-
- >qemu-system-x86_64 -enable-kvm -m 8G -cpu host -smp cores=3,sockets=1 \
--M q35 -nographic bios /usr/share/qemu/bios.bin \
--boot order=c,menu=on \
--hda 128t.qcow2 \
--device e1000,netdev=net1,mac=52:52:01:02:03:01 \
--netdev tap,id=net1,ifname=tap1,script=no,downscript=no
-
-------------------------------------------------------------------------------
-Booting from Hard Disk...
-.
-
- * CentOS Linux (3.10.0-514.2.2.el7.x86_64) 7 (Core)
- CentOS Linux (0-rescue-4e73a369e89e466a888c9c77655a1d65) 7 (Core)
-
-
- Use the ^ and v keys to change the selection.
- Press 'e' to edit the selected item, or 'c' for a command prompt.
-------------------------------------------------------------------------------
-
- Select the first option.
-
-
-
- |-------------------128T Installer-------------------|
-| |
-| Configure Linux Networking |
-| |
-| Before 128T SetUp? |
-| |
-| |
-| < Yes > < No > |
-|----------------------------------------------------|
-
- Select NO.
-
-
-
- |----------------------------------------------------|
-| Please select a role for this node: |
-| |----------------------------------------------| |
-| | (*) Router | |
-| | ( ) Conductor | |
-| |----------------------------------------------| |
-| |
-|----------------------------------------------------|
-| < OK > < Back > |
-|----------------------------------------------------|Select
- Router and OK.
-
-
-
- |-------------------Conductor Info-------------------|
-| |
-| |----------------------------------------------| |
-| |1st Conductor Address | |
-| |Conductor Address | |
-| |----------------------------------------------| |
-| |
-|----------------------------------------------------|
-| < OK > < Skip > < Back > < Help > |
-|----------------------------------------------------|
-
- Select SKIP.
-
-
-
- |----------------------HA Setup----------------------|
-| What kind of Router node is this? |
-| |----------------------------------------------| |
-| |(*) Standalone No HA peer | |
-| |( ) 1st HA Node HA peer is not set up | |
-| |( ) 2nd HA Node HA peer is already set up | |
-| |----------------------------------------------| |
-| |
-| |
-|----------------------------------------------------|
-| < OK > < Back > |
-|----------------------------------------------------|Select
- Standalone and OK.
-
-
-
- |---------------------Node Info----------------------|
-| |----------------------------------------------| |
-| | Node Role Router | |
-| | Node Name 128tNode | |
-| | Router Name 128tRouter | |
-| |----------------------------------------------| |
-| |
-|----------------------------------------------------|
-| < OK > < Advanced > < Back > < Help > |
-|----------------------------------------------------|
-
- Enter a name for the router and node, press OK.
-
-
-
- |-------------------Password Setup-------------------|
-| Enter the new password for the 128T 'admin' |
-| user: |
-| |----------------------------------------------| |
-| | 128Tadmin | |
-| |----------------------------------------------| |
-| | |
-|----------------------------------------------------|
-| < OK > < Back > |
-|----------------------------------------------------|
-
- Enter the password for web access: 128Tadmin
- and confirm the password.
-
-
-
- |--------------------------Anonymous Data Collection--------------------------|
-| The 128T Networking Platform comes packaged with a software process |
-|("Roadrunner") that is used to proactively monitor the health and liveliness |
-|of the 128T Router and associated components. This watchdog process collects |
-|anonymous information from the router and sends it to 128 Technology for |
-|storage and analysis. This information helps inform 128 Technology about |
-|software usage, to aid in the support and improvement of the 128 Technology |
-|Networking Platform. |
-| |
-|Disabling this feature will prevent the sending of anonymous usage data to |
-|128 Technology. |
-| |
-| |
-| < Accept > < Back > < Disable > |
-|-----------------------------------------------------------------------------|
-
- Select Accept.
-
-
-
- |-----128T Statistics Table Creator-----|
-| Created table for metric 760/827 |
-| Created table for metric 770/827 |
-| Created table for metric 780/827 |
-| Created table for metric 790/827 |
-| Created table for metric 800/827 |
-| Created table for metric 810/827 |
-| Created table for metric 820/827 |
-| Finished pre-creating stats tables |
-| Creating tables for audit events |
-| Finished creating audit event tables |
-| Completed in 27.001386642456055 s |
-| Shutting down local Cassandra node |
-|---------------------------------------|
-| < OK > |
-|---------------------------------------|
-
- Select OK.
-
-
-
- |--------128T Installer Status----------|
-| |
-| Install SUCCESS |
-| |
-| Start 128T Router |
-| before proceeding to |
-| login prompt? |
-|---------------------------------------|
-| < Yes > < No > |
-|---------------------------------------|
-
- Select: Yes
-
-
-
- localhost login: root
-Password:
-
- The following user accounts and passwords are created during the
- ISO installation process:
-
-
-
-
-
- GUI login via HTTPS is enabled by default on port 443
-
- [root@localhost ~]# dhclient enp0s2
-[root@localhost ~]# echo "nameserver 8.8.8.8" >>/etc/resolv.conf
-[root@localhost ~]# yum -y install cloud-init
-[root@localhost ~]# reboot
-
-
-
- Wait to reboot and press CTR+ a+c to enter in qemu
- monitor.
-
- (qemu) quit
-> qemu-img info 128t.qcow2
-image: 128t.qcow2
-file format: qcow2
-virtual size: 128G (137438953472 bytes)
-disk size: 5.4G
-cluster_size: 65536
-Format specific information:
- compat: 1.1
- lazy refcounts: false
- refcount bits: 16
- corrupt: false
-
-
-
- Compress the generated 128t.qcow2 image to
- decrease the size of VNF image:
-
- qemu-img convert -O qcow2 -c 128t.qcow2 centos_128t_compressed.qcow2
-
-> qemu-img info centos_128t_compressed.qcow2
-image: centos_128t_compressed.qcow2
-file format: qcow2
-virtual size: 128G (137438953472 bytes)
-disk size: 1.2G
-cluster_size: 65536
-Format specific information:
- compat: 1.1
- lazy refcounts: false
- refcount bits: 16
- corrupt: false
-
-centos_128t_compressed.qcow2 - Resulted image can be used in NFV Access.
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/appendix_3.xml b/doc/book-enea-nfv-access-example-usecases/doc/appendix_3.xml
deleted file mode 100644
index e8bd5ce..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/appendix_3.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
- How to configure Fortigate VNF (day-0 configuration)
-
- Please check the README file from Fortigate folder for more
- details.
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/appendix_4.xml b/doc/book-enea-nfv-access-example-usecases/doc/appendix_4.xml
deleted file mode 100644
index 0e207ae..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/appendix_4.xml
+++ /dev/null
@@ -1,103 +0,0 @@
-
-
- Running Enea Automation Framework and Test Harness
-
- For more detailed information regarding the Automation Framework and
- Test Harness please see the .
-
- The most relevant information from the Automation Framework and Test
- Harness structure is presented below:
-
- |---automation_framework
-| |---unittestSuite
-| | |---128tCleanup.json - Use case 1 - clean up - test.
-| | |---128tDeploy.json - Use case 1 - test.
-| | |---128t_FG_SFCCleanup.json - Use case 2 - clean up - test.
-| | |---128t_FG_SFCDeploy.json - Use case 2 - test.
-| | |---config
-| | | |---cust
- - Folder containing the configuration files used by tests.
-| | |---unittestLoader.py
-| | |---unittestSuite.py
-|---lab_config
-| |---trgt-1
-| | |---ibm_br.json - In-band management definition.
-| | |---lan_br.json - Lan bridge definition.
-| | |---target.json
- - Target definition - the "address", "deviceId", "name" and \
- "version" must be updated.
-| | |---sfc_br.json - Service chain bridge definition.
-| | |---vnf_mgmt_br.json - VNF management bridge definition.
-| | |---lan_nic.json - NIC definition.
-|---vnf_config
-| |---128t
-| | |---128tInstance.json - 128T instantiation - used in use case 1.
-| | |---128t.json - 128T onboarding.
-| | |---128tSFCInstance.json - 128T instantiation - used in use case 2.
-| | |---centos_128t_internet_ci.iso - 128T cloud init (day-0) iso image.
-| |---fortigate
-| | |---fg_basic_fw.conf - Fortigate day-0 configuration.
-| | |---fortigateInstance.json - Fortigate instantiantion.
-| | |---fortigate.json - Fortigate onboarding.
-| | |---fortigateLicense.lic
- - Fortigate license - contact Fortinet to get a VNF image and license file.
-|---vnf_image
-| |---centos_128t_with_ci.qcow2 - Contact 128 Technology to get a \
- VNF image and its license file.
-| |---fortios.qcow2 - Contact Fortinet to get a VNF image \
- and its license file.
-
- Make sure to update the relevant configuration file for your setup.
- The essential files to consider are the uCPE Device configuration
- (target.json), the license for the Fortigate VNF, and
- the 128T cloud-init iso image matching your network.
-
- For uCPE Device configuration (target.json)
- please change the following information, if needed, in the JSON file:
-
-
-
- address - The IP address of uCPE Device.
-
-
-
- version - The NFVA version.
-
-
-
- deviceId - The device ID of uCPE Device.
-
-
-
- name - The name of uCPE Device.
-
-
-
-
- Before starting the two usecases detailed in the following appendix,
- the uCPE Device needs to be added into Enea Edge Management.
-
-
- To properly set up the Automation Framework and Test Harness please
- see Installation and Initial Setup in the
- for more details.
-
- To run a test:
-
- > cd automation_framework/unittestSuite/
-> python unittestSuite.py -u admin -p admin -H <uCPEManager IP address> -n \
-<uCPE Device name> -s <Test suite> -d <description>
-
- The Test suite must be one from any of the
- following: 128tDeploy.json,
- 128tCleanup.json,
- 128t_FG_SFCDeploy.json, or
- 128t_FG_SFCCleanup.json.
-
\ No newline at end of file
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
deleted file mode 100644
index 67f38e5..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/appendix_5.xml
+++ /dev/null
@@ -1,243 +0,0 @@
-
-
- Example Tests Results using the Automation Framework and Test Harness
-
- In order to run the following example usecases, certain configuration
- file entries need to be modified according to the network setup that it will
- be used, for more details see the previous appendix:
-
-
-
- uCPE Device name: inteld1521-17
-
-
-
- address: 172.24.8.62
-
-
-
- version: 2.2.3
-
-
-
- deviceId: inteld1521-17
-
-
-
- > cat lab_config/trgt-1/target.json
-{
- "name": "inteld1521-17",
- "deviceGroupingTags": " ",
- "description": "trgt",
- "address": "172.24.8.62",
- "port": "830",
- "username": "root",
- "password": "",
- "certificate": null,
- "passphrase": null,
- "callHome": "false",
- "maintMode": "false",
- "version": "2.2.3",
- "deviceId": "inteld1521-17"
-}The IP address of Enea Edge Management that will be used in
- these examples is 172.24.3.92.
-
- The FortiGate and 128T VNF images need to be copied into the
- vnf_image directory. The names should be the same as
- those described in the previous appendix.
-
- The FortiGate valid license file needs to be copied into the
- vnf_config/fortigate/ directory. The name should be the
- same as that described in the previous appendix.
-
- The cloud init files that match the network, need to be copied into
- the vnf_config/fortigate/ and the
- vnf_config/128t/ directories respectively. The names
- should be the same as those described in the previous appendix.
-
-
- Use-case 1: 128T VNF Router Example Use-case
-
- > cd automation_framework/unittestSuite/
-> python unittestSuite.py -u admin -p admin -H 172.24.3.92 -n inteld1521-17 \
--s 128tDeploy.json -d "128T Deployment"
-
-Running 128T Deployment...
-
-test 001: Wait VCPE Agent device be up (__main__.UnittestSuite) ...
-2020-08-26 10:10:05,517 - INFO: Wait uCPE device
-2020-08-26 10:10:36,650 - INFO: Status: Connected
-2020-08-26 10:10:36,651 - INFO: Done
-ok
-test 002: Bind NIC to DPDK for LAN connection (__main__.UnittestSuite) ...
-2020-08-26 10:10:36,686 - INFO: Bind NIC
-2020-08-26 10:10:37,788 - INFO: Done
-ok
-test 003: Creating ibm bridge (__main__.UnittestSuite) ...
-2020-08-26 10:10:37,818 - INFO: New OVS network bridge
-2020-08-26 10:10:58,762 - INFO: Done
-ok
-test 004: Creating VNF Management bridge (__main__.UnittestSuite) ...
-2020-08-26 10:10:58,794 - INFO: New OVS network bridge
-2020-08-26 10:10:58,977 - INFO: Done
-ok
-test 005: Creating LAN bridge and attaching lan interface to the bridge \
-(__main__.UnittestSuite) ...
-2020-08-26 10:10:59,003 - INFO: New OVS network bridge
-2020-08-26 10:10:59,334 - INFO: Done
-ok
-test 006: Onboarding 128T VNF (wizard API) (__main__.UnittestSuite) ...
-2020-08-26 10:10:59,370 - INFO: Onboard wizard
-2020-08-26 10:13:55,775 - INFO: Done
-ok
-test 007: Instantiate 128T VNF (__main__.UnittestSuite) ...
-2020-08-26 10:13:55,813 - INFO: Instantiate VNF
-2020-08-26 10:14:56,583 - INFO: Done
-ok
-
-----------------------------------------------------------------------
-Ran 7 tests in 291.103s
-
-OK
-
-> python unittestSuite.py -u admin -p admin -H 172.24.3.92 -n inteld1521-17 \
--s 128tCleanup.json -d "128T Cleanup"
-
-Running 128T Cleanup...
-
-test 001: Destroying 128T VNF (__main__.UnittestSuite) ...
-2020-08-26 10:15:28,395 - INFO: Destroy VNF
-2020-08-26 10:15:29,452 - INFO: Done
-ok
-test 002: Deleting network bridge LAN (__main__.UnittestSuite) ...
-2020-08-26 10:15:29,493 - INFO: Delete OVS network bridge
-2020-08-26 10:15:29,734 - INFO: Done
-ok
-test 003: Deleting VNF management bridge (__main__.UnittestSuite) ...
-2020-08-26 10:15:29,765 - INFO: Delete OVS network bridge
-2020-08-26 10:15:30,080 - INFO: Done
-ok
-test 004: Deleting ibm(In Band Management) bridge (__main__.UnittestSuite) ...
-2020-08-26 10:15:30,110 - INFO: Delete OVS network bridge
-2020-08-26 10:15:46,907 - INFO: Done
-ok
-test 005: Unbind LAN NIC from DPDK target (__main__.UnittestSuite) ...
-2020-08-26 10:15:46,967 - INFO: Unbind NIC
-2020-08-26 10:15:48,489 - INFO: Done
-ok
-test 006: Offboarding 128t VNF (__main__.UnittestSuite) ...
-2020-08-26 10:15:48,531 - INFO: Offboard VNF
-2020-08-26 10:15:49,171 - INFO: Done
-ok
-
-----------------------------------------------------------------------
-Ran 6 tests in 20.808s
-
-OK
-
-
-
- Use-case 2: Service Chaining 128T - Fortigate Example
- Use-case
-
- > python unittestSuite.py -u admin -p admin -H 172.24.3.92 -n inteld1521-17 \
--s 128t_FG_SFCDeploy.json -d "128T - Fortigate SFC Deployment"
-
-Running 128T - Fortigate SFC Deployment...
-
-test 001: Wait VCPE Agent device be up (__main__.UnittestSuite) ...
-2020-08-26 10:17:29,361 - INFO: Wait uCPE device
-2020-08-26 10:18:00,473 - INFO: Status: Connected
-2020-08-26 10:18:00,474 - INFO: Done
-ok
-test 002: Bind NIC to DPDK for LAN connection (__main__.UnittestSuite) ...
-2020-08-26 10:18:00,634 - INFO: Bind NIC
-2020-08-26 10:18:01,805 - INFO: Done
-ok
-test 003: Creating ibm bridge (__main__.UnittestSuite) ...
-2020-08-26 10:18:01,863 - INFO: New OVS network bridge
-2020-08-26 10:18:30,640 - INFO: Done
-ok
-test 004: Creating VNF Management bridge (__main__.UnittestSuite) ...
-2020-08-26 10:18:30,670 - INFO: New OVS network bridge
-2020-08-26 10:18:30,876 - INFO: Done
-ok
-test 005: Creating LAN bridge and attaching lan interface to the bridge \
-(__main__.UnittestSuite) ...
-2020-08-26 10:18:30,908 - INFO: New OVS network bridge
-2020-08-26 10:18:31,243 - INFO: Done
-ok
-test 006: Creating SFC(service function chaining) bridge (__main__.UnittestSuite) ...
-2020-08-26 10:18:31,273 - INFO: New OVS network bridge
-2020-08-26 10:18:31,416 - INFO: Done
-ok
-test 007: Onboarding 128T VNF (wizard API) (__main__.UnittestSuite) ...
-2020-08-26 10:18:31,448 - INFO: Onboard wizard
-2020-08-26 10:21:21,569 - INFO: Done
-ok
-test 008: Onboarding Fortigate VNF (wizard API) (__main__.UnittestSuite) ...
-2020-08-26 10:21:21,608 - INFO: Onboard wizard
-2020-08-26 10:21:27,199 - INFO: Done
-ok
-test 009: Instantiate 128T VNF (__main__.UnittestSuite) ...
-2020-08-26 10:21:27,226 - INFO: Instantiate VNF
-2020-08-26 10:22:27,067 - INFO: Done
-ok
-test 010: Instantiate Fortigate VNF (__main__.UnittestSuite) ...
-2020-08-26 10:22:27,121 - INFO: Instantiate VNF
-2020-08-26 10:22:31,310 - INFO: Done
-ok
-
-----------------------------------------------------------------------
-Ran 10 tests in 301.989s
-
-OK
-
-> python unittestSuite.py -u admin -p admin -H 172.24.3.92 -n inteld1521-17 \
--s 128t_FG_SFCCleanup.json -d "128T - Fortigate SFC Cleanup"
-
-Running 128T - Fortigate SFC Cleanup...
-
-test 001: Destroying Fortigate VNF (__main__.UnittestSuite) ...
-2020-08-26 10:23:29,308 - INFO: Destroy VNF
-2020-08-26 10:23:30,026 - INFO: Done
-ok
-test 002: Destroying 128T VNF (__main__.UnittestSuite) ...
-2020-08-26 10:23:30,065 - INFO: Destroy VNF
-2020-08-26 10:23:30,917 - INFO: Done
-ok
-test 003: Deleting network bridge SFC (__main__.UnittestSuite) ...
-2020-08-26 10:23:30,960 - INFO: Delete OVS network bridge
-2020-08-26 10:23:31,123 - INFO: Done
-ok
-test 004: Deleting network bridge LAN (__main__.UnittestSuite) ...
-2020-08-26 10:23:31,156 - INFO: Delete OVS network bridge
-2020-08-26 10:23:31,381 - INFO: Done
-ok
-test 005: Deleting VNF management bridge (__main__.UnittestSuite) ...
-2020-08-26 10:23:31,412 - INFO: Delete OVS network bridge
-2020-08-26 10:23:31,596 - INFO: Done
-ok
-test 006: Deleting ibm(In Band Management) bridge (__main__.UnittestSuite) ...
-2020-08-26 10:23:31,621 - INFO: Delete OVS network bridge
-2020-08-26 10:23:47,980 - INFO: Done
-ok
-test 007: Unbind LAN NIC from DPDK target (__main__.UnittestSuite) ...
-2020-08-26 10:23:48,019 - INFO: Unbind NIC
-2020-08-26 10:23:49,547 - INFO: Done
-ok
-test 008: Offboarding 128t VNF (__main__.UnittestSuite) ...
-2020-08-26 10:23:49,575 - INFO: Offboard VNF
-2020-08-26 10:23:50,252 - INFO: Done
-ok
-test 009: Offboarding Fortigate VNF (__main__.UnittestSuite) ...
-2020-08-26 10:23:50,295 - INFO: Offboard VNF
-2020-08-26 10:23:50,589 - INFO: Done
-ok
-
-----------------------------------------------------------------------
-Ran 9 tests in 21.326s
-
-OK
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/book.xml b/doc/book-enea-nfv-access-example-usecases/doc/book.xml
deleted file mode 100644
index 9879c28..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/book.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-
-
-]>
-
- Enea Edge Example Use-cases
-
- Release Version
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/clav_vnf_examples.xml b/doc/book-enea-nfv-access-example-usecases/doc/clav_vnf_examples.xml
deleted file mode 100644
index 8895c23..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/clav_vnf_examples.xml
+++ /dev/null
@@ -1,396 +0,0 @@
-
-
- Clavister VNF Example Use-cases
-
- The Clavister VNF is a telco-ready, carrier-grade virtual next
- generation firewall.
-
-
- Clavister VNF using an Open vSwitch Bridge
-
- In this use-case, uCPE device 1 runs the Clavister VNF, while uCPE
- device 2 runs two Enea Test VNFs with iPerf client and server
- applications. The uCPE devices are connected using OVS-DPDK
- bridges.
-
-
- Prerequisites
-
- Two uCPE devices will be required for this setup. The system
- requirements for each uCPE device are:
-
-
-
- 1 Network Interface
-
-
-
- 2 GB of RAM memory
-
-
-
- The following files are needed for this example use-case:
-
-
-
- Enea Test VNF image. Please contact Enea to get this image.
-
-
-
- Clavister VNF image. Please contact Clavister to get this
- image.
-
-
- VNF Configuration files. These files are provided with your Enea
- Edge release:
-
-
- clavister-cloudinit.conf.
- enea-vnf-iperf-client.conf.
- enea-vnf-iperf-server.conf.
-
-
-
-
-
-
- Use-case Setup
-
- In this use-case, uCPE device 1 runs the Clavister VNF, while uCPE
- device 2 runs two Enea Test VNFs with iPerf client and server
- applications. The uCPE devices are connected using OVS-DPDK
- bridges.
-
-
- Clavister VNF using an Open vSwitch bridge
-
-
-
-
-
-
-
-
-
- When connecting, the uCPE devices can use a back-to-back or a VPN connection.
- An appropriate interface with the required capabilities needs to be chosen for
- this purpose.
-
-
- Network Configuration:
-
-
-
- Select uCPE device 1, access Configuration,
- add the network interface that will be used and configure it for
- DPDK.
-
-
-
- Create an OVS bridge and attach the DPDK network
- interface.
-
-
-
- Repeat the steps above for uCPE device 2.
-
-
-
- Onboarding the VNFs:
-
-
-
- Onboard the Clavister VNF by filling the required fields with
- the following values:
-
-
-
- VM Image File: Provide
- the path to the Clavister VNF qcow2 image
-
-
-
- Memory in MB: 1024
-
-
-
- Num of CPUs: 4
-
-
-
- Storage in GB: 20
-
-
-
- Interfaces: Add 2
- interfaces
-
-
-
- Cloud-init Datasource:
- ConfigDrive
-
-
-
- Cloud-init Disk Type:
- disk
-
-
-
-
-
- Onboard the Enea Test VNF by filling the required fields with
- the following values:
-
- VM Image File: Provide
- the path to the Enea Test VNF qcow2 image
-
-
-
- Memory in MB:
- 2048
-
-
-
- Num of CPUs: 2
-
-
-
- Storage in GB:
- 10
-
-
-
- Interfaces: Add 1
- interface
-
-
-
- Cloud-init Datasource:
- NoCloud
-
-
-
- Cloud-init Disk Type:
- disk
-
-
-
-
-
- Instantiating the VNFs:
-
-
-
- Instantiate the Clavister VNF on uCPE device 1 using the
- required fields below:
-
-
-
- Name: clavister
-
-
-
- VNF Type: Select
- Clavister VNF
-
-
-
- uCPE Device: Select
- uCPE device 1
-
-
-
- Cloud Init File:
- Provide the path to the Clavister cloud-init file.
-
-
-
- Interfaces: Set the
- interface type to DPDK and select the OVS
- bridge created above, for both interfaces.
-
-
-
-
-
- Instantiate the Enea iPerf server VNF on uCPE device 2 by
- filling the required fields with the values below:
-
-
-
- Name:
- iperf_server
-
-
-
- VNF Type: Select Enea
- Test VNF
-
-
-
- uCPE Device: Select
- uCPE device 2
-
-
-
- Cloud Init File:
- Provide the path to the Enea VNF IPerf server cloud-init
- file.
-
-
-
- Interfaces: Set the
- interface type to DPDK and select the OVS
- bridge created above.
-
-
-
-
-
- Instantiate the Enea iPerf client VNF on uCPE device 2 by
- filling the required fields with the values below:
-
-
-
- Name:
- iperf_client
-
-
-
- VNF Type: Select Enea
- Test VNF
-
-
-
- uCPE Device: Select
- uCPE device 2
-
-
-
- Cloud Init File:
- Provide the path to the Enea VNF iPerf client cloud-init
- file.
-
-
-
- Interfaces: Set the
- interface type to DPDK and select the OVS
- bridge created above.
-
-
-
-
-
-
-
- Testing the Use-case
-
- SSH to uCPE device 2 (Username: root) and connect to the IPerf
- client VNF console:
-
- virsh list
-virsh console <id of iperf client>
-
- In order to check that traffic is forwarded between the VNFs, run
- the following:
-
- # qemux86-64 login: root
-root@qemux86-64:~# iperf3 -c 192.168.10.10
-
-
-
-
- Clavister VNF using SR-IOV
-
-
- Prerequisites
-
- Two uCPE devices will be required for this setup. The system
- requirements for each uCPE device are:
-
-
-
- 1 Network Interface
-
-
-
- 2 GB of RAM memory
-
-
-
- The following files are needed for this example use-case:
-
-
-
- Enea Test VNF image. Please contact Enea to get this image.
-
-
-
- Clavister VNF image. Please contact Clavister to get this
- image.
-
-
- VNF Configuration files. These files are provided with your Enea
- Edge release:
-
- clavister-cloudinit.conf.
- enea-vnf-iperf-client.conf.
- enea-vnf-iperf-server.conf.
-
-
-
-
-
-
- Use-case Setup
-
- The following use-case is essentially the same as the one detailed
- above, in this scenario however, the uCPE devices are connected using
- SR-IOV, with two virtual functions.
-
-
- Clavister VNF using SR-IOV
-
-
-
-
-
-
-
-
- Network Configuration:
-
-
-
- Select uCPE device 1, access Configuration,
- add the network interface that will be used and configure it for
- SR-IOV. For sriov-mode select adapter-pool and for
- sriov-num-vfs select "2".
-
-
-
- Repeat the step above for uCPE device 2.
-
-
-
- Onboarding the VNFs:
-
- See the onboarding parameters in the use-case above.
-
- Instantiating the VNFs:
-
- Use the same instantiation parameters as above, but select
- interface type SrIovAdapterPool instead.
-
-
-
- Testing the Use-case
-
- Use the same test instructions as detailed in the use-case
- above.
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/enea_test_vnf_examples.xml b/doc/book-enea-nfv-access-example-usecases/doc/enea_test_vnf_examples.xml
deleted file mode 100644
index bee5a63..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/enea_test_vnf_examples.xml
+++ /dev/null
@@ -1,308 +0,0 @@
-
-
- Enea Test VNF Example Use-cases
-
- The Enea Test VNF is a simple Enea Linux based VM, which can be used
- for various testing purposes, by using basic DPDK applications (e.g.
- testpmd) as well as non-DPDK tools (e.g. iPerf3). For more information about
- the Testpmd application please see the Testpmd Application User
- Guide.
-
-
- Prerequisites
-
- Two uCPE devices will be required for this setup. The system
- requirements for each uCPE device are:
-
-
-
- 2 Network Interfaces. One for Enea Edge Management and one for data
- traffic.
-
-
-
- 2 GB of RAM memory
-
-
-
- The following files are needed for this example use case:
-
-
-
- VNF image: Enea Test VNF. Please contact Enea to get this
- image.
-
-
- VNF Configuration files. These files are provided with your Enea
- Edge release:
-
-
- enea-vnf-testpmd-fwd.conf.
-
-
-
- enea-vnf-testpmd-term.conf.
-
-
-
-
-
- TestPMD VNF
-
- In this use-case, uCPE device 1 runs the pktgen DPDK application to
- generate traffic and uCPE device 2 runs two Enea Test VNFs. One VNF runs
- the TestPMD DPDK application forwarding traffic, and the other runs the
- TestPMD in order to terminate traffic.
-
-
- TestPMD VNF Overview
-
-
-
-
-
-
-
-
-
- Use-case Setup
-
- Network Configuration:
-
-
-
- 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 uCPE device 2, access Configuration,
- add the network interface that will be used and configure it for
- DPDK.
-
-
-
- Create an OVS bridge on uCPE device 2 and attach the DPDK
- interface.
-
-
-
- Onboarding the VNF:
-
- Onboard the Enea Test VNF by filling the required fields with the
- following values:
-
-
-
- VM Image File: Provide the
- path to the Enea Test VNF qcow2 image.
-
-
-
- Memory in MB: 2048
-
-
-
- Num of CPUs: 2
-
-
-
- Storage in GB: 10
-
-
-
- Interfaces: Add 1
- interface.
-
-
-
- Cloud-init Datasource:
- NoCloud
-
-
-
- Cloud-init Disk Type:
- disk
-
-
-
- Instantiating the VNFs:
-
-
-
- Instantiate the Enea Edge TestPMD forwarding VNF on uCPE
- Device 2 by filling the required fields with the following
- values:
-
-
-
- Name: testpmd_fwd
-
-
-
- VNF Type: Select Enea
- Test VNF.
-
-
-
- uCPE Device: Select uCPE
- device 2.
-
-
-
- Cloud Init File: Provide
- the path to the Enea VNF TestPMD forwarding cloud-init
- file.
-
-
-
- Interfaces: Set the
- interface type to DPDK and select the OVS
- bridge created above.
-
-
-
-
-
- Instantiate the Enea Edge TestPMD termination VNF on
- uCPE Device 2 by filling the required fields with the following
- values:
-
-
-
- Name: testpmd_term
-
-
-
- VNF Type: Select Enea
- Test VNF.
-
-
-
- uCPE Device: Select uCPE
- device 2.
-
-
-
- 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.
-
-
-
-
-
- Creating OVS flow rules:
-
- Select uCPE device 2, access Configuration,
- open the OVS bridge and add two flow rules:
-
-
-
- Source: DPDK interface, Target:
- testpmd_fwd.
-
-
-
- Source: testpmd_fwd, Target:
- testpmd_term.
-
-
- The flow rules can be described using either the Enea Edge
- Management interface or the configuration files.
-
-
-
-
-
-
- Testing the Use-case
-
-
-
- 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.
-
-
-
-
- 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
-
-
-
-
-
- TestPMD VNF using PCI passthrough
-
- In this use case, uCPE device 1 will run the Pktgen and uCPE
- device 2 will run the TestPMD VNF. Both will be using PCI
- passthrough:
-
-
-
- Make sure that neither uCPE device 1 nor uCPE device 2 have
- any configured host interfaces by selcting uCPE device :
- Configuration ->
- OpenVSwitch -> Host
- Interfaces.
-
-
-
- On uCPE device 1 start the Pktgen VNF. Select
- PciPassthrough as the Interface type.
-
- From the drop-down list, select the PCI interface
- corresponding to the NIC which is connected to uCPE device 2:
-
-
-
- On uCPE device 2, start the TestPmdForwarder VNF. Select
- "PciPassthrough" as the Interface type. From the drop-down list,
- select the PCI interface corresponding to the NIC which is connected
- to uCPE device 1:
-
-
-
- To check that traffic is being forwarded from uCPE device 2,
- SSH to the uCPE device and connect to the VNFs console:
-
- Right click on uCPE device 2 and select SSH.
-Run: virsh list
-Run: virsh console [VM NAME]
-Run: tail -f /opt/testpmd-out
-
-
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/forti_vnf_examples.xml b/doc/book-enea-nfv-access-example-usecases/doc/forti_vnf_examples.xml
deleted file mode 100644
index bb38140..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/forti_vnf_examples.xml
+++ /dev/null
@@ -1,627 +0,0 @@
-
-
- FortiGate VNF Example Use-cases
-
- FortiGate virtual appliances feature all of the security and
- networking services common to traditional hardware-based FortiGate
- appliances. The virtual appliances can be integrated in Firewall or SD-WAN
- solution development.
-
-
- FortiGate VNF as a Firewall
-
- Enea provides an example of a simple basic firewall configuration
- for the FortiGate VNF. FortiGate In-Band Management is a feature used for
- running FortiGate Management traffic over WAN.
-
- Instructions on how to alter the default configuration are provided
- in section FortiGate VNF Web Management in the
-
- Manual.
-
-
- Prerequisites
-
- System requirements for the uCPE device:
-
-
-
- 4 x Network Interfaces
-
-
-
- 4 cores
-
-
-
- 4 GB of RAM memory
-
-
-
- The following file(s) are needed for this example use-case:
-
-
-
- FortiGate VNF image. Please contact Fortinet to get a VNF
- image and its license file.
-
-
-
- VNF Configuration file(s), provided with your Enea Edge
- release: fortigate-basic-fw.conf.
-
-
-
-
-
- Use-case Setup
-
-
- Fortigate VNF as a Firewall
-
-
-
-
-
-
-
-
- Network Configuration:
-
- Since the firewall uses three External Network Interfaces, three
- bridges need to be configured. Each bridge provides the ability to
- connect a physical network interface to the virtual network interface of
- a VM.
-
- Setup of the uCPE device:
-
-
-
- Connect WAN to the Lab Network.
-
-
-
- Connect LAN1 to the Test Machine.
-
-
-
- Leave LAN2 unconnected.
-
-
-
- Connect ETH0 to the Lab Network (for Enea Edge Management
- communications).
-
-
-
- Select the uCPE device, access
- Configuration and bind the three physical network
- interfaces to DPDK.
-
-
-
- Create three OVS bridges, one for each DPDK network interface
- (WAN, LAN1 and LAN2).
-
- Alternatively, the firewall can be setup to use bridges as
- connection points for the FortiGate VNF, by replacing the OVS-DPDK
- bridges with SR-IOV connection points.
-
- Please note that while previously three physical interfaces
- were presumed necessary for VNF connection, in the case of a
- firewall setup only two physical interfaces are required for the
- data path (one for WAN and one for LAN). Only two interfaces will be
- configured as DPDK, with two bridges created, one for each type of
- connection.
-
-
- At VNF instantiation instead of assigning distinct bridges
- for each LAN interface, only one will be used for both LAN1 and
- LAN2, with no changes in WAN interface configuration.
-
-
-
-
- Onboarding the VNF:
-
- Onboard the FortiGate VNF by filling the required fields with the
- following values:
-
-
-
- VM Image File: Provide the
- path to the FortiGate VNF qcow2 image.
-
-
-
- Memory in MB: 1024
-
-
-
- Num of CPUs: 1
-
-
-
- Storage in GB: 20
-
-
-
- Interfaces: Add 3 interfaces
- (wan, lan1 and lan2).
-
-
-
- Cloud-init Datasource:
- ConfigDrive
-
-
-
- Cloud-init Disk Type:
- cdrom
-
-
-
- Cloud-init content file: Add
- a file entry where Path: license.
-
-
-
- Instantiating the VNF:
-
- Instantiate the FortiGate VNF by filling the required fields with
- the following values:
-
-
-
- Name: Name of the VM which
- will be created on the uCPE device.
-
-
-
- VNF Type: Name of the
- onboarded VNF.
-
-
-
- uCPE Device: Select the uCPE
- device where the VNF will be instantiated.
-
-
-
- License file: The FortiGate
- license file provided by Fortinet.
-
-
-
- Configuration file: The
- Firewall example configuration file provided by Enea
- (fortigate-basic-fw.conf).
-
-
-
- Port1 - WAN: Set the
- External Interface type to
- DPDK and connect it to the
- wan_br ovs bridge.
-
-
-
- Port2 - LAN1: Set the
- Incoming Interface type to
- DPDK and connect it to the
- lan1_br ovs bridge.
-
-
-
- Port3 - LAN2: Set the
- Outgoing Interface type to
- DPDK and connect it to the
- lan2_br ovs bridge.
-
-
- The names of the ports used during instantiation need to be
- the same as the ones described above, as the same names will be
- used in the configuration files provided for this example
- use-case.
-
-
-
-
-
-
- Testing the Use-case
-
- Connect the Test Machine on the LAN interface and access the
- internet from the Test Machine to use the firewall on the uCPE
- device.
-
-
- The connected Test Machine can be a laptop or a uCPE device. It
- must have one interface configured to get a dynamic IP from a DHCP
- server. The dhclient <interface> command can
- be used to request an IP address. The received IP must be in the
- 172.16.1.2 - 172.16.1.255 range.
-
-
- The FortiGate VNF management interface is accessible through the
- WAN interface. The WAN IP address can be used from a web browser on the
- Lab Machine to access the FortiGate VNF Management Web UI. See section
- FortiGate VNF web management in the
-
- Manual for more information.
-
-
-
-
- FortiGate VNF as an SD-WAN or a VPN
-
- SD-WAN decouples the network from the management plane, detaching
- traffic management and monitoring functions from hardware. Most forms of
- SD-WAN technology create a virtual overlay that is transport-agnostic,
- i.e. it abstracts underlying private or public WAN connections.
-
- For deployment, the user plugs in WAN links into the device, which
- automatically configures itself with the network.
-
- Example SD-WAN configurations for the FortiGate VNF are provided by
- Enea.
-
-
- Prerequisites
-
- Two uCPE devices will be needed for this setup. The system
- requirements for each uCPE device are:
-
-
-
- 4 x Network Interfaces
-
-
-
- 4 cores
-
-
-
- 4 GB of RAM memory
-
-
-
- The following files are needed for this example use-case:
-
-
-
- FortiGate VNF image. Please contact Fortinet to get a VNF
- image and its license file.
-
-
-
- VNF Configuration file(s), provided with your Enea Edge
- release: fortigate-sdwan<x>.conf.
-
-
-
-
-
- Use-case Setup
-
-
- Fortigate VNF as an SD-WAN or a VPN
-
-
-
-
-
-
-
-
-
- When connecting, the uCPE devices can use a back-to-back or a
- VPN connection. An appropriate interface with the required
- capabilities needs to be chosen for this purpose.
-
-
- Network Configuration:
-
- Since the SD-WAN VNF uses three External Network Interfaces, three
- bridges need to be configured. Each bridge provides the ability to
- connect a physical network interface to the VM's virtual network
- interface.
-
- Each VNF instance will have a virtual interface for VNF
- management, for the WAN network and for LAN communication.
-
- Setup of an Intel Whitebox uCPE
- device:
-
-
-
- Connect the VNF Management interfaces to
- the Lab Network for VNF management access.
-
-
-
- Connect the WAN interfaces back to back or
- via VPN.
-
-
-
- Connect the LAN interfaces to the Test
- Machine.
-
-
-
- Connect the ETH0 interfaces to the Lab
- Network (for Enea Edge Management communications).
-
-
-
- Select uCPE Device 1, access Configuration
- and bind the three physical network interfaces to the DPDK.
-
-
-
- Create three OVS bridges, one for each DPDK network interface
- (VNF management, WAN and LAN).
-
-
-
- Repeat the steps above for uCPE device 2.
-
-
-
- Onboarding the VNF:
-
- Onboard the FortiGate VNF by filling the required fields with the
- following values:
-
-
-
- VM Image File: Provide the
- path to the FortiGate VNF qcow2 image.
-
-
-
- Memory in MB: 1024
-
-
-
- Num of CPUs: 1
-
-
-
- Storage in GB: 20
-
-
-
- Interfaces: Add 3 interfaces
- in the same order as listed below:
-
-
-
- vnfmgr: to connect it to
- the vnfmgmt_br bridge.
-
-
-
- wan: to connect it to the
- wan_br bridge.
-
-
-
- lan: to connect it to the
- lan_br bridge.
-
-
-
-
-
- Cloud-init Datasource:
- ConfigDrive
-
-
-
- Cloud-init Disk Type:
- cdrom
-
-
-
- Cloud-init content file: Add
- a file entry where Path: license.
-
-
-
-
- The order of the interfaces that need to be added must be
- exactly as listed above or else onboarding and in turn instantiation
- will fail.
-
-
- Instantiating the FortiGate
- VNF:
-
- Instantiate the FortiGate VNF by filling the required fields with
- the following values:
-
-
-
- Name: Name of the VM which
- will be created on the uCPE device.
-
-
-
- VNF Type: Name of the
- onboarded VNF.
-
-
-
- uCPE Device: Select the uCPE
- device where the VNF will be instantiated.
-
-
-
- License file: The FortiGate
- license file provided by Fortinet.
-
-
-
- Configuration file: The
- SD-WAN example configuration files provided by Enea:
- fortigate-sdwan1.conf for the FortiGate VNF on
- uCPE device 1 and fortigate-sdwan2.conf for the
- FortiGate VNF on uCPE device 2.
-
-
-
- Port1 - VNF Mgr: Set the type
- to DPDK and connect it to the
- vnfmgmt_br bridge.
-
-
-
- Port2 - WAN: Set the type to
- DPDK and connect it to the
- wan_br bridge.
-
-
-
- Port3 - LAN: Set the type to
- DPDK and connect it to the
- lan_br bridge.
-
-
-
- Instantiate the FortiGate VNF on uCPE device 1 using the
- sdwan1 example configuration file.
-
- To complete the branch-to-branch setup, configure uCPE
- device 2 in the same way as uCPE device
- 1.
-
-
- The names of the ports used during instantiation need to be the
- same as the ones described above, as the same names will be used in
- the configuration files provided for this example use-case.
-
-
-
-
- Testing the Use-case
-
- Once the full SD-WAN setup is in place a VPN connection needs to
- be established between the two uCPE devices. The Test Machines can be
- connected to the LAN interface on each uCPE device.
-
-
- The connected Test Machine can be a laptop or a uCPE device that
- has one interface configured to get a dynamic IP from a DHCP server.
- The dhclient <interface> command can be used
- to request an IP address.The received IP must be in the 172.16.1.2 -
- 172.16.1.255 range for Test Machine-1 and in the 172.16.2.2 -
- 172.16.2.255 range for Test Machine-2.
-
-
- The Test Machine connected to uCPE device 1
- should be able to ping the Test Machine connected to uCPE
- device 2 in this setup, over the WAN connection. The FortiGate
- VNF management interface can be accessed from a web browser on the Lab
- Machine. For more details please see FortiGate VNF Web Management, .
-
-
- In this SD-WAN VPN setup example, bridges were used as
- connection points for the FortiGate VNF. It is possible to replace
- OVS-DPDK bridges with SR-IOV connection points.
-
-
-
-
-
- FortiGate VNF Web Management
-
- In order to check the IP address assigned to the FortiGate VNF you
- need to connect to the FortiGate CLI.
-
-
-
- SSH to the uCPE Device (Username: root) and connect to the
- FortiGate VNF console:
-
- virsh list
-virsh console <id of FortiGate VNF>
-
-
-
- To access the FortiGate CLI, use admin as the
- user, leaving the password blank/empty, and press enter.
-
- Use the CLI command get system interface to
- get the dynamic interfaces configuration.
-
-
-
- Use the IP address assigned for the management interface in the
- web browser (https://<IP>), to access the
- FortiGate VNF Web Management Interface. Use the same credentials as
- before to login.
-
-
-
- Browse through the configuration and perform changes according
- to your setup:
-
-
- The FortiGate VNF Web Management Interface
-
-
-
-
-
-
-
-
-
-
- Optionally, alter the default FortiGate example configuration
- provided by Enea, through the following steps:
-
-
-
- Deploy the FortiGate Firewall in its default
- settings.
-
- Maybe more info about how to do it should be added
- here.
-
-
-
- Connect to the FortiGate VNF Web Management interface with a
- web browser.
-
-
-
- Modify the FortiGate configuration in the FortiGate VNF Web
- Management as needed.
-
-
-
- Store the updated configuration in a file, so it may be used
- at the next FortiGate VNF instantiation.
-
-
-
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/fortinet_interface.png b/doc/book-enea-nfv-access-example-usecases/doc/images/fortinet_interface.png
deleted file mode 100755
index 9452264..0000000
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/fortinet_interface.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.png b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.png
deleted file mode 100644
index 2977524..0000000
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.svg
deleted file mode 100755
index 86f4d12..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt.svg
+++ /dev/null
@@ -1,1231 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- image/svg+xml
-
-
-
-
-
-
-
-
-
-
-
- Guest
-
-
- OVS Bridge
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Legend: - Connection via cloud/internet:- Back to Back: BTB- Flow rules:
-
-
-
-
-
-
- uCPE Device
-
-
-
-
- Internet
-
-
-
- Enea Edge Management
-
-
-
- Web Interface (128T) https://<IP>:60001
-
-
-
- ibm_br
-
-
-
-
- lan_br
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Test Machine
-
-
-
-
-
-
- vnf_mgmt_br
-
-
-
-
-
-
- 128T
-
-
-
- LAN
- WAN
- MGMT
-
-
-
-
-
- .1
- .2
- .1
- .2
- 192.168.64.0/24
- 10.0.0.0/24
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.png b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.png
deleted file mode 100644
index 7cb5af0..0000000
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.svg
deleted file mode 100755
index 4bd6d85..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/trgt_servicechain.svg
+++ /dev/null
@@ -1,1402 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- image/svg+xml
-
-
-
-
-
-
-
-
-
-
-
- Guest
-
-
- OVS Bridge
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Legend: - Connection via cloud/internet:- Back to Back: BTB- Flow rules:
-
-
-
-
-
-
-
-
-
-
- uCPE Device
-
-
-
- Internet
-
-
- Enea Edge Management
-
-
-
-
-
- ibm_br
-
-
-
- lsfc_br
-
-
-
- 128T
-
- LAN
- WAN
- MGMT
-
-
-
-
- .2
- .1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Test Machine
-
- .2
-
- 192.168.64.0/24
-
-
-
- vnf_mgmt_br
-
- .1
- 10.0.0.0/24
-
-
-
- lan_br
-
-
-
- Fortigate
-
-
- LAN
- WAN
- MGMT
-
- .3
- .1
- 172.16.1.0/24
- .2
-
-
-
-
-
-
-
- Web Interface(128T) https://<IP>:60001(Fortigate) https://<IP>:60002
-
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.png b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.png
deleted file mode 100644
index 97492ca..0000000
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.svg
deleted file mode 100755
index 2890881..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_bridge.svg
+++ /dev/null
@@ -1,966 +0,0 @@
-
-
-
-
-
- image/svg+xml
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Legend: - Connection via cloud/internet:- VPN/Back to Back (BTB):- Flow rules:
-
-
-
-
-
-
-
-
-
-
-
-
- Enea Edge Management
-
-
-
-
-
-
-
-
-
- Internet
-
-
-
-
-
-
-
-
-
-
-
-
-
- uCPE Device 2
-
-
- Iperf client
-
-
- Iperf server
-
-
-
-
- 192.168.20.20
- 192.168.10.10
-
-
-
- bridge
-
- dpdk
-
-
-
-
-
-
-
-
-
-
-
- uCPE Device 1
-
-
-
-
-
-
-
- Clavister
- 192.168.10.1
- 192.168.20.1
-
-
-
- bridge
-
- dpdk
-
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_sriov.png b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_sriov.png
deleted file mode 100644
index 2c9ae6b..0000000
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_sriov.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_sriov.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_sriov.svg
deleted file mode 100755
index a33c619..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_clavister_sriov.svg
+++ /dev/null
@@ -1,1152 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- image/svg+xml
-
-
-
-
-
-
-
-
-
-
-
-
-
- Legend: - Connection via cloud/internet:- VPN/Back to Back (BTB):- Flow rules:
-
-
-
-
-
-
-
-
-
-
-
-
- Internet
-
-
-
-
-
-
-
-
- Enea Edge Management
-
-
-
-
-
-
-
-
-
-
-
-
- uCPE Device2
-
-
-
-
-
-
-
-
-
-
- Iperf server
- 192.168.10.10
-
-
-
-
-
- SR-IOV
-
- Iperf client
- 192.168.20.20
-
-
-
- uCPE Device1
-
-
- SR-IOV
-
-
-
-
-
-
-
-
-
-
- Clavister
- 192.168.10.1
- 192.168.20.1
-
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_enea_test_vnf.png b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_enea_test_vnf.png
deleted file mode 100644
index be97bc0..0000000
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_enea_test_vnf.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_enea_test_vnf.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_enea_test_vnf.svg
deleted file mode 100755
index fc71729..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_enea_test_vnf.svg
+++ /dev/null
@@ -1,1002 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- image/svg+xml
-
-
-
-
-
-
-
-
-
- Guest
-
-
-
-
-
- Enea Edge Management
-
-
-
-
-
-
-
-
-
-
-
-
- Internet
-
-
- BTB
-
-
-
- uCPE Device 1
-
-
-
-
-
-
- pktgen_dpdk
-
-
-
-
-
-
-
-
-
-
-
-
- uCPE Device 2
-
-
- testpmd_fwd
-
-
- testpmd_term
-
-
-
-
-
-
-
-
-
- bridge
- dpdk
-
-
-
-
-
-
-
-
- Legend: - Connection via cloud/internet:- Back to Back: BTB- Flow rules:
-
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_fw.png b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_fw.png
deleted file mode 100644
index f8ae39a..0000000
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_fw.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_fw.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_fw.svg
deleted file mode 100755
index 160c8b0..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_fw.svg
+++ /dev/null
@@ -1,940 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- image/svg+xml
-
-
-
-
-
-
-
-
-
-
-
- Test Machine
-
-
-
-
-
-
-
-
- dpdk
-
-
- wan_br
-
-
-
-
- dpdk
-
-
- lan1_br
-
-
-
-
- dpdk
-
-
- lan2_br
-
-
-
- Fortigate
-
-
- uCPE Device
-
-
-
-
-
-
-
- Legend: - Connection via cloud/internet:
-
-
-
-
-
-
-
-
-
- Test
-
-
-
-
-
-
-
- Internet
-
-
-
- Enea Edge Management
-
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.png b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.png
deleted file mode 100644
index b71b02e..0000000
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.svg
deleted file mode 100755
index 3de54dd..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_fortigate_sdwan.svg
+++ /dev/null
@@ -1,1449 +0,0 @@
-
-
-
-
-
- image/svg+xml
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cloud
-
-
-
- uCPEDevice
-
-
- uCPEManager
-
-
-
- Internet
-
-
-
- VNF
-
-
-
- Guest
-
-
-
- OVS Bridge
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Internet
-
-
-
- Enea Edge Management
-
-
-
-
- uCPE Device 2
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- vnfmgmt_br
-
- dpdk
-
-
-
- Fortigate
-
-
-
-
- wan_br
- dpdk
-
-
- dpdk
-
-
- lan_br
-
-
-
-
-
-
-
-
-
-
-
-
- Test Machine
-
-
-
-
-
-
- Test Machine
-
-
-
-
-
-
-
-
-
-
-
- uCPE Device 1
-
-
-
-
-
-
-
-
-
- wan_br
-
- dpdk
-
-
-
-
- lan_br
-
- dpdk
-
-
-
-
-
- vnfmgmt_br
-
- dpdk
-
- Fortigate
-
-
-
-
-
-
-
- Legend: - Connection via cloud/internet:- VPN/BTB:
-
-
-
-
-
-
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.png b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.png
deleted file mode 100644
index 6aaf4c0..0000000
Binary files a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.svg b/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.svg
deleted file mode 100755
index 2bb15af..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/images/uc_vnf_chaining.svg
+++ /dev/null
@@ -1,1186 +0,0 @@
-
-
-
-
-
- image/svg+xml
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cloud
-
-
-
- uCPEDevice
-
-
- uCPEManager
-
-
-
- Internet
-
-
-
- VNF
-
-
-
- Guest
-
-
-
- OVS Bridge
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- sfc_br
-
-
-
-
-
-
- Fortigate
-
- lan
- wan
-
-
-
- LAN2
-
- dpdk
-
- lan_br
-
- Juniper
- lan
- wan
-
- dpdk
-
-
- wan_br
-
-
- uCPE Device 2
-
-
-
-
-
-
-
-
-
-
- sfc_br
-
-
-
- Juniper
- wan
- lan
-
- dpdk
-
- wan_br
-
-
- Fortigate
- wan
- lan
-
- dpdk
-
-
- lan_br
-
-
- uCPE Device 1
-
-
- LAN1
-
-
-
-
-
-
- Legend: - Connection via cloud/internet:- VPN/BTB:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Internet
-
-
-
- Enea Edge Management
-
-
-
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/introduction.xml b/doc/book-enea-nfv-access-example-usecases/doc/introduction.xml
deleted file mode 100644
index b502e8b..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/introduction.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
- Introduction
-
- This document describes several example use-cases concerning uCPE
- configuration, onboarding and instantiation of certain VNFs, VNF chaining,
- etc.
-
- Before running any example use case make sure the uCPE device(s) have
- been added to Enea Edge Management and placed on the map. For detailed
- information on how to add a device to Enea Edge Management, how to configure the
- network interfaces to use DPDK, PCI-passthrough or SR-IOV drivers, or VNF
- configuration, please refer to the Manual.
-
-
- Examples presented in this document use 3rd-party VNFs, which are
- not provided by Enea. To procure and use these VNF image files and license
- files, please contact the VNF provider.
-
- Request the VNF prerequisites from the VNF vendors, or alternatively
- obtain the prerequisites based on instructions from each VNF vendor
- respectively.
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/service_chaining_128t_fortigate.xml b/doc/book-enea-nfv-access-example-usecases/doc/service_chaining_128t_fortigate.xml
deleted file mode 100644
index bb05905..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/service_chaining_128t_fortigate.xml
+++ /dev/null
@@ -1,1064 +0,0 @@
-
-
- Service Chaining 128T - Fortigate Example Use-case
-
- The following is an example of how to setup and configure a service
- chain on top of the Enea Edge Runtime, using the
- following commercial VNFs: 128T router and FortiGate.
-
-
- Prerequisites
-
- The 128T router and the Fortinet firewall in a service chain require
- the following prequisites for this example use case:
-
-
-
- 1 in band management port for device management.
-
-
-
- 1 in band management port for the 128T router.
-
-
-
- 1 in band management port for Fortinet.
-
-
-
- 1 WAN interface for Fortinet.
-
-
-
- 1 LAN facing interface for Fortinet.
-
-
-
- 1 WAN facing interface for the 128T router.
-
-
-
- 1 service chain (SFC Bridged interface) to sit between the
- Firewall and vRouter.
-
-
-
- The following files are needed for this example use-case:
-
-
-
- FortiGate VNF image. Please contact Fortinet to get a VNF image
- and its license file.
-
-
-
- 128T router VNF image. Please contact 128 Technology to get a
- VNF image and its license file.
-
-
-
- Cloud-init iso image.
-
-
-
-
- To procure the VNF image files and their licenses, please contact
- each respective VNF provider.
-
-
-
-
- Service Chaining 128T - Fortigate
-
-
- Service Chaining 128T - Fortigate Setup Overview
-
-
-
-
-
-
-
-
-
- Use-case Setup
-
- Configuring Network Interfaces on uCPE
- devices:
-
- Add the trgt uCPE device into Enea Edge Management:
- Devices -> Manage -> Add, and fill in the
- required fields with the following data:
-
-
- Device Details
-
-
-
-
-
-
-
-
-
-
- Field
-
- Value
-
-
-
-
-
- Type
-
- Enea universal CPE
-
-
-
- Release
-
- 2.2.2
-
-
-
- Name
-
- trgt
-
-
-
- IP/DNS Address
-
- <unspecified>
-
-
-
- Description
-
- Target 1
-
-
-
- SSH Port
-
- 830
-
-
-
- SSH User Name
-
- root
-
-
-
- Password
-
- null
-
-
-
- Device ID
-
- Also configured during installation of the device
- (E.g.: Target-15).
-
-
-
- OK
-
- Green status indicates connection with uCPE device
- was established.
-
-
-
-
-
-
-
- In order to add the device on the map: Right-Click on
- Map -> Place Device -> trgt.
-
-
-
- Configure the infrastructure for the 128T and Fortigate VNFs
- in the service chain by creating four OVS bridges and a host
- interface.
-
- Add the Host Interface by selecting the trgt device, then
- Configuration -> External Interfaces ->
- Configuration -> Add, and fill in the required fields
- with the following data:
-
-
- Host Interface Details
-
-
-
-
-
-
-
-
-
-
- Field
-
- Value
-
-
-
-
-
- Source
-
- enp4s0f1. The only interface
- available for LAN connection.
-
-
-
- networking-type
-
- dpdk
-
-
-
- dpdk-type
-
- vfio-pci
-
-
-
- Create
-
- <interface enp4s0f1 ready to be used in a LAN
- bridge.>
-
-
-
-
-
- Add the OVS bridges by selecting the trgt device then:
- Configuration -> OpenVSwitch -> Bridges ->
- Add. Fill in the required fields for each bridge with
- the following data from each table:
-
-
- ibm_br Bridge Details
-
-
-
-
-
-
-
-
-
-
- Field
-
- Value
-
-
-
-
-
- id
-
- <autogenerated - do not change>
-
-
-
- Name
-
- ibm_br
-
-
-
- ovs-bridge-type
-
- inbandMgmt
-
-
-
- Create
-
-
-
-
-
-
-
-
-
- Onboarding the VNFs:
-
- Onboard the 128T VNF VM Image through VNF ->
- Descriptors -> On-board, and fill in the required fields
- with the following values:
-
-
- 128T VM Image Details
-
-
-
-
-
-
-
-
-
-
- Field
-
- Value
-
-
-
-
-
- VM image file
-
- centos_128t_with_ci.qcow2
-
-
-
- Image format
-
- QCOW2
-
-
-
- VNF Type Name
-
- 128T
-
-
-
- Description
-
- 128T Router
-
-
-
- Version
-
- 1.0
-
-
-
- Memory in MB
-
- 8192. More memory can be allocated if required
- (<28672).
-
-
-
- Num. of CPUs
-
- 2. More CPUs can be reserved if required
- (<15).
-
-
-
- Interfaces -> +
-
- Name: mgmt
-
-
-
- Interfaces -> +
-
- Name: wan
-
-
-
- Interfaces -> +
-
- Name: lan
-
-
-
- Cloud Init -> Cloud-Init Datasource
-
- ISO
-
-
-
- Cloud Init -> Cloud-Init Disk Type
-
- cdrom
-
-
-
- Properties -> +
-
- Name: vnfMgmtIpAddress. Value: 10.0.0.2
-
-
-
- Properties -> +
-
- Name: internalMgmtPort. Value: 443
-
-
-
- Properties -> +
-
- Name: externalMgmtPort. Value: 60001
-
-
-
- Onboard
-
- <Wait for message: VNF package onboarded
- successfully>
-
-
-
- Close
-
-
-
-
-
-
-
-
-
-
- HTTPS access (443) can be changed to another type of access.
- Please consult official 128T documentation and make sure the 128T
- VNF is configured to accept another type of connection before
- changing the port number.
-
-
-
- externalMgmtPort(60001) represents the
- external port on which the user can access the VNF management
- interface from the web browser via HTTPS. The user can select
- another port if needed. There are no other changes required or
- components affected by this change.
-
-
-
- vnfMgmtIpAddress (10.0.0.2) represents
- the IP address of the management interface of the 128T VNF.
- Changing this value requires an update to the 128T configuration
- to match the new IP address.
-
-
-
-
- Onboard the Fortigate VNF VM Image through VNF ->
- Descriptors -> On-board, and fill in the required fields
- with the following values:
-
-
- Fortigate VM Image Details
-
-
-
-
-
-
-
-
-
-
- Field
-
- Value
-
-
-
-
-
- VM image file
-
- fortios.qcow2. Please make sure to
- contact Fortinet for an official FortiGate KVM image.
-
-
-
- Image format
-
- QCOW2
-
-
-
- VNF Type Name
-
- Fortigate
-
-
-
- Description
-
- Fortigate VNF
-
-
-
- Version
-
- 1.0
-
-
-
- Memory in MB
-
- 1024. More memory can be allocated if required
- (<28672).
-
-
-
- Num. of CPUs
-
- 1. More CPUs can be reserved if required
- (<15).
-
-
-
- Interfaces -> +
-
- Name: mgmt
-
-
-
- Interfaces -> +
-
- Name: wan
-
-
-
- Interfaces -> +
-
- Name: lan
-
-
-
- Cloud Init -> Cloud-Init Datasource
-
- ConfigDrive
-
-
-
- Cloud Init -> Cloud-Init Disk Type
-
- cdrom
-
-
-
- Cloud Init -> +
-
- Path: license
-
-
-
- Properties -> +
-
- Name: vnfMgmtIpAddress. Value: 10.0.0.3
-
-
-
- Properties -> +
-
- Name: internalMgmtPort. Value: 443
-
-
-
- Properties -> +
-
- Name: externalMgmtPort. Value: 60002
-
-
-
- Onboard
-
- <Wait for message: VNF package onboarded
- successfully>
-
-
-
- Close
-
-
-
-
-
-
-
-
-
-
- HTTPS access (443) can be changed to another type of access.
- Please consult official Fortigate documentation and make sure the
- Fortigate VNF is configured to accept another type of connection
- before changing the port number.
-
-
-
- externalMgmtPort (60002) represents the
- external port on which the user can access the VNF management
- interface from the web browser via HTTPS. The user can select
- another port if needed. There are no other changes required or
- components affected by this change.
-
-
-
- vnfMgmtIpAddress (10.0.0.3) represents
- the IP address of the management interface of the Fortigate VNF.
- Changing this value requires an update to the Fortigate
- configuration to match with new IP address.
-
-
-
-
- Instantiating the VNFs:
-
- Instantiate the 128T VNF by selecting the trgt device, then
- VNF -> Instances -> Add.
-
- Fill in the required fields with the following values:
-
-
-
-
- To procure the VNF image files and their licenses, please
- contact each respective VNF provider.
-
-
- Instantiate the Fortigate VNF by selecting the trgt device, then
- VNF -> Instances -> Add.
-
- Fill in the required fields with the following values:
-
-
-
-
-
- Testing the Use-case
-
- In order to access the web interfaces of the 128T VNF, open a
- browser on a machine connected on the same network with the WAN port of
- the target and connect to:
- https://<publicIP>:60001 using the username:
- admin and the password: 128Tadmin.
-
- In order to access the web interfaces of the Fortigate VNF, open a
- browser on a machine connected on the same network with the WAN port of
- the target and connect to:
- https://<publicIP>:60002 using the username:
- admin, and leaving the password blank.
-
-
- Make sure the WAN interface of the trgt device has access to the
- internet. The Fortigate VNF requires internet access to validate the
- license.
-
-
- In order to validate the data path connect a test machine to the
- LAN physical port and check for a dynamic IP (the Fortigate LAN
- interface is configured with a DHCP server):> dhclient eth1
-> ping 8.8.8.8For data path validation, a new cloud-init
- image may need to be generated for the 128T VNF to match your network
- configuration.
-
-
-
- Use-case Clean-up
-
- In order to remove the setup created in previously, all components
- need to be deleted in reverse order:
-
-
-
- Select the trgt uCPE device -> VNF -> Instances. Select
- the 128T and Fortigate VNFs -> Delete.
-
-
-
- Select the trgt uCPE device -> Configuration ->
- OpenVSwitch -> Bridges. Select all bridges -> Delete.
-
-
-
- Select the trgt uCPE device -> Configuration -> External
- Interfaces -> Configuration. Select all interfaces ->
- Delete.
-
-
-
- VNF -> Descriptors. Select all bundles ->
- Offboard.
-
-
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-example-usecases/doc/vnf_chaining.xml b/doc/book-enea-nfv-access-example-usecases/doc/vnf_chaining.xml
deleted file mode 100644
index 24442af..0000000
--- a/doc/book-enea-nfv-access-example-usecases/doc/vnf_chaining.xml
+++ /dev/null
@@ -1,407 +0,0 @@
-
-
- VNF Chaining Example Use-case
-
- The term service chaining or service function chaining (SFC) is used
- to describe the definition and instantiation of an ordered list of instances
- of such service functions and the subsequent "steering" of traffic flows
- through those service functions. The set of enabled service function chains
- reflects operator service offerings and is designed in conjunction with
- application delivery and service and network policy.
-
- The following is an example of how to setup and configure a
- branch-to-branch service comprised on two commercial VNFs (SD-WAN +
- Firewall). This service will run in a service chain on top of the Enea
- Edge Runtime, deployed through the Enea Edge
- Management.
-
- In the example setup the following commercial VNFs are used: Juniper
- vSRX as the SD-WAN VNF and Fortigate as the Router/Firewall.
-
-
- VNF Chaining with FortiGate
-
-
- Prerequisites
-
- Two uCPE devices will be needed for this setup. The system
- requirements for each uCPE device are:
-
-
-
- 4 x Network Interfaces
-
-
-
- 4 GB of RAM memory
-
-
-
-
- On each uCPE device, 3 interfaces need to be DPDK compliant and
- one of these needs to be connected back-to-back to the other uCPE
- device. This link simulates a WAN/uplink connection. Optionally, one
- additional device (PC/laptop) can be connected on the LAN port of each
- branch to run LAN-to-LAN connectivity tests.
-
-
- The following files are needed for this example use-case:
-
-
-
- Fortigate VNF image file.
-
-
-
- Juniper vSRX VNF image file.
-
-
-
- vSRX-Site<x>.iso Cloud-init files.
-
-
-
- VNF Configuration files, provided with your Enea Edge
- Release:
-
-
-
- vSRX-domain-update-script.
-
-
-
- FortiFW-Site<x>.conf.
-
-
-
-
-
-
- To procure the VNF image files and their licenses, please
- contact each respective VNF provider. To create the
- vSRX-Site<x>.iso file, please follow the documentation provided
- by Juniper.
-
-
-
-
- Use-case Setup
-
-
- VNF Chaining with Fortigate
-
-
-
-
-
-
-
-
- No info about vnf_mgmt_br?
-
- Network Configuration:
-
- Both branches in the example have similar setups, therefore
- necessary step details are presented for only one branch. The second
- branch shall be configured in the same way, adapting as needed the
- corresponding VNFs configuration files.
-
-
-
- Assign three physical interfaces to the DPDK (one for
- management, one WAN and one for LAN). In the example, one of these
- interfaces gets an IP through DHCP and it will be used exclusively
- for the management plane.
-
-
-
- Create the following OVS-DPDK bridges:
-
-
-
- vnf_mgmt_br. Used by VNF management
- ports.
-
-
-
- wan_br. Used by the service uplink
- connection. In our case, Juniper vSRX will have its WAN virtual
- interface in this bridge.
-
-
-
- sfc_br. Used for creating the service
- chain. Each VNF will have a virtual interface in this
- bridge.
-
-
-
- lan_br. Used for the LAN interface of
- the Fortigate FW.
-
-
-
-
-
- Add corresponding DPDK ports (see Step 1) to the management,
- WAN and LAN bridges (sfc_br does not have a
- physical port attached to it).
-
-
- The networking setup (Steps 1-3) can be modeled using the
- Offline Configuration entry, so that it is automatically
- provisioned on the uCPE device, once it gets enrolled into the
- management system (Enea Edge Management).
-
-
-
-
- Onboarding the VNFs:
-
-
-
- Onboard Juniper vSRX using the VNF by filling the required
- fields with the following values:
-
-
-
- The Flavor selected must have at least 2 vCPUs and 4 GB
- RAM since vSRX is quite resource consuming.
-
- Tested in-house with 4 vCPUs/ 6 GB RAM.
-
-
-
- Add three virtual interfaces: management, WAN and
- LAN.
-
-
-
- Select ISO as the Cloud-Init Datasource
- in the Cloud-Init tab.
-
-
-
- Select cdrom as the Cloud-Init Disk
- Type in the Cloud-Init tab.
-
-
-
-
-
- Onboard Fortigate FW using the VNF Onboarding Wizard:
-
-
-
- The Flavor selected can be quite light in resource
- consumption, e.g. 1 CPU and 1 GB RAM.
-
-
-
- Add three virtual interfaces: management, WAN and
- LAN.
-
-
-
- Select ConfigDrive as the Cloud-Init
- Datasource in the Cloud-Init tab.
-
-
-
- Select cdrom as the Cloud-Init Disk
- Type in the Cloud-Init tab.
-
-
-
- In the Cloud-init content files field add an entry where
- Path: license.
-
-
-
-
-
- Instantiating the VNFs:
-
-
-
- Create the vSRX instance:
-
-
-
- Use vSRX-Site1.iso as the Cloud-Init
- file.
-
-
-
- The Domain Update Script field can be
- left empty for the Atom C3000 architecture, while for XeonD the
- vSRX-domain-update-script file will be
- used.
-
-
-
- Add virtual interfaces:
-
-
-
- Management interface added to
- vnf_mgmt_br.
-
-
-
- WAN interface added to
- wan_br.
-
-
-
- LAN interface added to
- sfc_br.
-
-
-
-
-
-
- The login/password values for the vSRX VNF are
- root/vsrx1234, respectively.
-
-
-
-
- Create the Fortigate FW instance:
-
-
-
- Use FortiFW-Site1.conf as the
- Cloud-Init file.
-
-
-
- Add .lic (not part of the folder) as
- the license file.
-
-
-
- Add virtual interfaces:
-
-
-
- Management interface added to
- vnf_mgmt_br.
-
-
-
- WAN interface added to
- sfc_br.
-
-
-
- LAN interface added to
- lan_br.
-
-
-
-
-
-
- The login/password values for the Fortigate VNF are
- admin/<empty password>,
- respectively.
-
-
-
-
- At this point the service will be up and running on Site1. Repeat
- the steps to instantiate a VNF for Site2, by changing the configuration
- files accordingly.
-
- After the service is deployed on both branches, the VPN tunnel is
- established and LAN to LAN visibility can be verified by connecting one
- device on each uCPE LAN port.
-
-
-
- Testing the Use-case
-
- Before testing LAN to LAN connectivity, preliminary tests of
- service can be run to ensure everything was set up properly. For
- instance, by connecting to vSRX CLI (any site), one can test IKE
- security associations:
-
- root@Atom-C3000:~ # cli
-root@Atom-C3000> show security ike security-associations
-Index State Initiator cookie Responder cookie Mode Remote Address
-1588673 UP 2f2047b144ebfce4 0000000000000000 Aggressive 10.1.1.2
-...
-root@Atom-C3000> show security ike security-associations index 1588673 detail
-...
-
- Also, from the vSRX CLI, a user can check that the VPN tunnel was
- established and get statistics of the packets passing the tunnel:
-
- root@Atom-C3000> show security ipsec security-associations
-...
-root@Atom-C3000> show security ipsec statistics index <xxxxx>
-...
-
- From the Fortigate Firewall CLI on Site 1, one can check
- connectivity to the remote Fortigate FW (from Site 2):
-
- FGVM080000136187 # execute ping 192.168.168.2
-PING 192.168.168.2 (192.168.168.2): 56 data bytes
-64 bytes from 192.168.168.2: icmp_seq=0 ttl=255 time=0.0 ms
-64 bytes from 192.168.168.2: icmp_seq=1 ttl=255 time=0.0 ms
-64 bytes from 192.168.168.2: icmp_seq=2 ttl=255 time=0.0 ms
-...
-
- Since VNF management ports were configured to get IPs through
- DHCP, the user can use a Web-based management UI to check and modify the
- configuration settings of both vSRX and Fortigate.
-
- For example, in the case of vSRX, from the VNF CLI you can list
- the virtual interfaces as below:
-
- root@Atom-C3000> show interfaces terse
-...
-fxp0.0 up up inet 172.24.15.92/22
-gre up up
-ipip up up
-...
-
- When using provided configurations, the VNF management port for
- Juniper vSRX is always fxp0.0.
-
- In the case of Fortigate, from the VNF CLI you can list the
- virtual interfaces as such:
-
- FGVM080000136187 # get system interface
-== [ port1 ]
-name: port1 mode: dhcp ip: 172.24.15.94 255.255.252.0 status: up netbios-forward:
-disable type: physical netflow-sampler: disable sflow-sampler: disable...
-...
-
- When using provided configurations, the VNF management port for
- Fortigate is always port1.
-
- If functionality is as intended, LAN-to-LAN connectivity can be
- checked (through the VPN tunnel) by using two devices (PC/laptop)
- connected to the LAN ports of each uCPE. Optionally, these devices can
- be simulated by using Enea's sample VNF running on both uCPEs and
- connected to the lan_br on each side. Please note
- that instructions for onboarding and instantiating this VNF is not in
- the scope of this document.
-
- Since Fortigate VNF, which is acting as router and firewall, is
- configured to be the DHCP server for the LAN network, the device
- interface connected to the uCPE LAN port has to be configured to get
- dinamically assigned IPs. These IPs are in the 172.0.0.0/24 network for
- Site1 and the 172.10.10.0/24 network for Site2. Therefore, site-to-site
- connectivity can be checked (from Site1) as such:
-
- root@atom-c3000:~# ping 172.10.10.2
-PING 172.10.10.1 (172.10.10.2): 56 data bytes
-...
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-example-usecases/swcomp.mk b/doc/book-enea-nfv-access-example-usecases/swcomp.mk
deleted file mode 100755
index 5f5ab16..0000000
--- a/doc/book-enea-nfv-access-example-usecases/swcomp.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-# Component build specification
-
-# Version of THIS book
-BOOK_VER ?= $(REL_VER)-dev
-
-DOCBOOK_SRC := $(COMP)/swcomp.mk $(COMP)/doc/book.xml $(shell find $(COMP)/doc -type f \( -name "*.xml" -o -name "*.svg" -o -name "*.png" \) ! -name "book.xml" -print)
-
-BOOKPACKAGES := book-enea-nfv-access-example-usecases
-BOOKDESC_$(BOOKPACKAGES) := "Enea Edge $(PROD_VER) Example Use-cases"
-BOOKDEFAULTCONDITION := $(DEFAULTCONDITIONS)
diff --git a/doc/book-enea-nfv-access-getting-started/doc/advanced_configurations.xml b/doc/book-enea-nfv-access-getting-started/doc/advanced_configurations.xml
deleted file mode 100644
index 70a9978..0000000
--- a/doc/book-enea-nfv-access-getting-started/doc/advanced_configurations.xml
+++ /dev/null
@@ -1,1042 +0,0 @@
-
-
-
- Advanced Configurations
-
- This chapter describes possible configurations for advanced features
- such as the Hugepage Reservation Service customization, UEFI Secure Boot and
- Bare Metal Provisioning.
-
-
- Bare Metal Provisioning
-
- Bare Metal Provisioning can be used for automated deployment of the
- Enea Edge Runtime on a large number of uCPE devices. The uCPE devices may
- have no previous operating system installed, or are reinstalled without
- preserving any existing data. Enea Edge Bare Metal Provisioning is based
- on standardized Pre-Boot Execution environment (PXE) booting.
-
- The Bare Metal Provisioning process begins by PXE booting an Enea
- Edge installer initramfs image. The installer downloads
- a configuration file, as well as the Enea Edge Runtime image and then
- proceeds to install the system by dividing the disk into 2 partitions: a
- GPT partition containing the GRUB boot loader and a second partition
- containing the Enea Edge Runtime root filesystem. When the installation is
- complete, the uCPE device is automatically rebooted into Enea Edge
- Runtime.
-
-
- The .hddimg, initramfs, and
- bzImage files are available in the
- Enea_Edge_Runtime_<processor>_<version>-<build_number>.tar.gz
- file you downloaded with your release.
-
-
-
- Prerequisites
-
-
-
- The uCPE devices to be installed are connected in a working
- PXE network boot environment. The PXE server can be set up using any
- Linux distribution that includes TFTP and DHCP software packages.
- Refer to the documentation for your distribution for setup
- instructions.
-
-
-
- An HTTP server must be available and accessible from the uCPE
- devices in the provisioning network. Note that the installer will
- use the same interface that the uCPE device is PXE-booted from, to
- obtain an IP address using DHCP and access the HTTP server.
-
-
-
- The uCPE devices are preconfigured in BIOS to boot from the
- hard drive where the Enea Edge Runtime will be installed.
-
-
-
- CSM support and Dual Boot must be enabled in BIOS (i.e. PXE
- booting in legacy mode), while the final Enea Edge Runtime image
- will boot in UEFI mode. Doing a mass deployment using legacy PXE
- booting usually means that Secure Boot is disabled, Secure Boot will
- need to be enabled afterwards.
-
-
-
- A remote management tool such as ipmitool
- (or a vendor-specific tool) is available for use to set the next
- boot option to PXE and reboot the uCPE devices in order to begin the
- installation.
-
-
-
-
-
- Server Configuration
-
- The following images provided with your Enea Edge release need to
- be made available on the PXE and HTTP servers:
-
-
-
- Copy the Enea Edge installer initramfs
- image and kernel bzImage for your uCPE device
- architecture to the TFTP directory on the PXE server (e.g
- /var/lib/tftpboot).
-
-
-
- Compress the Enea Edge Runtime .hddimg
- image for the uCPE device architecture using gzip
- and copy the resulting hddimg.gz file to the HTTP
- server.
-
-
-
-
- Installation Configuration File
-
- An installation configuration file needs to be prepared on the
- HTTP server. The format of the configuration file is a list of
- "name = value" pairs and the available parameters
- are described below.
-
- Mandatory parameter(s):
-
-
-
- image_url. The HTTP server URL used for
- downloading the Enea Edge Runtime image.
-
-
-
- Optional parameters:
-
-
-
- install_drive. The name of the drive
- where the Enea Edge Runtime will be installed (e.g
- /dev/sda). If not set, the installer will use
- the largest detected (non-USB) drive on the uCPE device.
-
-
-
- prompt_user. If the parameter is set to
- "yes", the installer will ask for confirmation before formatting
- and partitioning the drive. The default behaviour is to proceed
- automatically without any user interaction.
-
-
-
- Installation Configuration File Example:
-
- image_url = http://192.168.1.100/enea-nfv-access-xeon-d.hddimg.gz
-install_drive = /dev/sda
-
-
- The installation configuration file needs to use the Linux
- end-of-line format (\n), not the Windows format (\r\n).
-
-
-
-
- PXE Configuration
-
- A PXE entry for the Enea Edge installation needs to be added as
- the default boot selection in the pxelinux configuration file (e.g
- /var/lib/tftpboot/pxelinux.cfg/default). The PXE
- entry should have the following settings:
-
- default nfv_access
-label nfv_access
-menu label ^NFV_ACCESS_INSTALLER
-kernel <Path to kernel>
-append root=/dev/ram0 initrd=<Path to initramfs> LABEL=pxe-installer \
- INSTALL_CFG=http://<Server IP>/<Path to install config file> \
- console=ttyS0,115200 earlyprintk=ttyS0,115200
-ipappend 2
-
-
-
-
- Starting the Installation
-
- To initiate the installation, set the boot device (for next boot
- only) to PXE and reboot the uCPE devices. How to do this depends on the
- remote management capabilities of the uCPE devices and may require
- vendor-specific tools.
-
- Example initiation using ipmitool:
-
- ipmitool -U <user> -P <password> -H <uCPE device IPMI IP address> chassis bootdev pxe
-ipmitool -U <user> -P <password> -H <uCPE device IPMI IP address> power reset
-
- The uCPE devices should be configured in BIOS to boot from the
- installation drive first in order to automatically start the Enea Edge
- Runtime when the installation is finished.
-
-
-
-
- UEFI Secure Boot
-
- Secure Boot was designed to enhance security in the pre-boot
- environment. It prevents malicious software and applications from being
- loaded during the system start-up process.
-
- The basic principle of UEFI Secure Boot is that it requires all
- artifacts involved in the boot process (bootloaders, kernel, initramfs) to
- be signed using a set of private keys. On a Secure Boot enabled uCPE
- device these artifacts are checked against a set of public certificates
- which correspond to these keys. If there are any mismatches the boot
- process will fail at the stage(s) they are detected.
-
- For more information about Secure Boot please refer to Secure
- Boot in Modern Computer Security Solutions.
-
-
- Enabling UEFI Secure Boot
-
- All Enea Edge image artifacts delivered with the release are
- signed using the Enea UEFI Secure boot private keys. These artifacts can
- be used on a uCPE device that doesn't have Secure Boot enabled. To use
- the Secure Boot feature, however, the user must make the Enea UEFI
- Secure Boot public certificates available on the uCPE device before
- enabling the feature in BIOS. This process is called
- "Provisioning".
-
-
- Provisioning the Enea UEFI Secure Boot Certificates
-
- The UEFI firmware is normally shipped with factory preloaded
- certificates. If these do not already include Certificates from Enea,
- they will need to be appended or replaced with the Enea
- Certificates.
-
- UEFI Secure Boot certificates provided
- with your release:
-
-
-
- Platform Key (PK): this key protects the
- next key from uncontrolled modification. Once this key is
- enrolled, Secure Boot enters into User Mode.
- The drivers and loaders signed with the Platform
- Key can then be loaded by the firmware.
-
-
-
- Key Exchange key (KEK): this key allows
- other certificates which have a connection to the private portion
- of the Platform Key to be used.
-
-
-
- Authorized Signature (DB): contains the
- trusted keys used for authenticating any
- drivers or applications executed in the UEFI environment.
-
-
-
- The Enea UEFI Secure Boot certificates are installed together
- with the Enea Edge Runtime onto the hard drive. They can be found on
- the EFI partition (usually the first partition of the drive) under
- /uefi_sb_keys.
-
- These certificates need to be manually enrolled in BIOS. The
- exact details on how to proceed may vary depending the version of the
- UEFI firmware.
-
- The UEFI firmware is normally shipped with factory preloaded
- certificates. If these do not already include Certificates from Enea,
- they will need to be appended or replaced with the Enea
- Certificates.
-
-
-
- Enabling Secure Boot in BIOS
-
- Once the certificates are enrolled, Secure Boot needs to be
- enabled in BIOS and the device rebooted.
-
-
-
-
-
- Hugepage Reservation Service
-
- Huge page memory support is a mechanism that allows the Linux kernel
- to support larger page sizes than the default page unit (4KB). Huge pages
- are contiguous blocks of memory that come in 2MB or 1GB sizes. By using
- huge page allocations, less memory is used for page tables and the
- Translation Lookaside Buffer (TLB) miss rate is significantly reduced.
- Enea Edge Runtime uses huge page backed memory in KVM guests in order to
- improve performance.
-
- Enea Edge Runtime implements an automatic hugepage allocation
- service that is triggered at each startup. The service is skipped if
- hugepages have been allocated in the kernel boot command line.
-
- There are two strategies outlined for hugepage allocation:
-
-
-
- If a system has an amount of memory up to 8GB, the allocation
- algorithm will reserve up to 30% (no more than 2GB), for the OS and
- the rest as 2MB hugepages.
-
-
-
- If a system has an amount of memory that's higher than 8GB, the
- allocation algorithm will reserve all but 2GB of memory as 1GB
- hugepages, leaving the rest (2GB) to be used by the OS.
-
-
-
-
- This is a best effort reservation after kernel boot, so the
- results may vary accordingly.
-
-
-
- Customizing Automatic Hugepage Reservation
-
- Configuration of Hugepage reservation is done in
- /etc/enea-nfv-access/hugepages.cfg.
-
- Parameters used by the automatic algorithm:
-
-
-
-
- hugepage_setup: Enables the automatic
- configuration algorithm. It has only one value,
- auto. For manual configuration comment or remove
- this parameter. Use the other parameter descriptions as a
- template/example.
-
-
-
- threshold_to_use_1g: Decides the threshold
- which instructs the algorithm to use 1GB hugepages. If a system's
- memory is higher than threshold_to_use_1g, then
- the algorithm will use 1GB hugepages, otherwise it will use 2MB
- hugepages.
-
-
-
- percent_os_alloc: Decides how much memory
- to try to reserve for userspace applications. The algorithm will try
- to reserve at least the value of percent_os_alloc
- of the total system memory for userspace applications.
-
-
-
- maximum_os_alloc_mb: Maximum amount of
- memory to allocate for userspace applications. If
- percent_os_alloc of the total system memory
- exceeds maximum_os_alloc_mb then the maximum
- allocated memory for userspace applications is
- maximum_os_alloc_mb.
-
-
-
- Example of automatic Hugepage
- Configuration:
-
- hugepage_setup = auto
-threshold_to_use_1g = 8192
-percent_os_alloc = 30
-maximum_os_alloc_mb = 2048
-
- The following possible allocations can result (based on total
- system memory available):
-
-
-
- 2GB of memory: approximately 30% will be allocated for the OS
- and the rest will be allocated as 2MB hugepages.
-
-
-
- 4GB of memory: approximately 30% will be allocated for the OS
- and the rest will be allocated as 2MB hugepages.
-
-
-
- 16GB of memory: approximately 2GB will be allocated for the OS
- and the rest as 1GB hugepages.
-
-
-
-
- The memory allocated for the kernel and hugepages might vary
- slightly depending on how much memory is available.
-
-
-
-
- Customizing Manual Hugepage Reservation
-
- The automatic algorithm can be disabled and hugepages in turn,
- configured manually. To do this, comment the line which defines
- hugepage_setup as auto and
- configure memory for each CPU socket in the following manner:
-
- <NUMA node>.<hugepage size> = <number of pages>
-
- Where <NUMA node> refers to a node which
- is part of the system's NUMA topology, <hugepage
- size> decides what type of hugepages should be set and
- <number of hugepages> is how many hugepages of
- <hugepage size> should be allocated.
-
- To list the available system nodes, run:
-
- ls -d /sys/devices/system/node/node*
-
- To list available hugepage sizes, per node, run:
-
- ls -d /sys/devices/system/node/node*/hugepages/hugepages-*
-
- Example of Manual Hugepage Configuration, configuring the system
- to allocate three 1GB hugepages and 512 of 2MB hugepages on node:
-
- node0.2048kB = 512
-node0.1048576kB = 3
-
-
- Make sure there are no hugepages reserved in the kernel boot
- command line, these will override any manual configuration done in the
- service.
-
-
-
-
-
- Installing the Enea Edge Management in High Availability
- Mode
-
- The following describes the setup needed for running the Enea Edge
- Management in High Availabilty (HA) mode, with a MariaDB database cluster.
- A setup example is illustrated in the diagram below.
-
-
- The High Availability setup
-
-
-
-
-
-
-
-
- The setup consists of two sub-clusters, placed in different
- geographical locations, each consisting of three MariaDB servers. In this
- example, two of the machines are running only MariaDB, while the rest are
- hosting a MariaDB server and an Enea Edge Management instance. The entire
- network is hidden behind a firewall that performs NAT. While in protection
- (cluster) mode, the Enea Edge Management instances promote a Virtual IP
- (VIP) that represents the IP address of the entire cluster. The firewall
- in this case will allocate a public IP for the outside world that will be
- translated into the VIP. Also in this example, the traffic towards the
- cluster from outside the firewall is done through HTTPS, which will be
- translated to HTTP inside the private network.
-
-
- By default, communication to the Enea Edge Management is done with
- HTTPS. To enable HTTP, go to System,
- Configuration, click on the Web Access tab and check the Enable HTTP checkbox.
-
-
-
- Requirements for High Availability
-
- The following hardware is needed for deploying the base
- configuration:
-
-
-
- Machines running the Enea Edge Management and MariaDB:
-
-
-
- 4 CPU cores
-
-
-
- 12 - 16 GB memory
-
-
-
- 256 - 512 GB hard disk
-
-
-
-
-
- Machines running only MariaDB:
-
-
-
- 2 CPU cores
-
-
-
- 8 GB memory
-
-
-
- 256 - 512 GB hard disk
-
-
-
-
-
-
-
- Firewall Rules
-
- Please refer to Firewall Configuration in the
- Manual. In addition, the following configuration is needed:
-
-
-
- Disable SELINUX on all database servers by
- editing /etc/sysconfig/selinux and changing the
- following:
-
- SELINUX=disabled
-SELINUXTYPE=targeted
-
-
-
- Reboot the server:
-
- [root@localhost ~]# sudo shutdown -r now
-
-
-
- The following ports should be opened in the local firewall (not
- the one doing NAT), for each Enea Edge Management machine:
-
-
-
-
-
- Installing High Availability
-
- The Enea Edge Management can be installed in High Availability
- mode with a MariaDB database cluster by performing the following steps.
- The mandatory Java configuration is also detailed.
-
-
- Installing and configuring the MariaDB cluster
-
- Install the latest MariaDB packages on all servers.
-
-
- The setup was tested using MariaDB 10.5.8, built for CentOS
- 7.
-
-
- How to install MariaDB
-
-
-
- Install the MariaDB official yum repository. Create a file
- named mariadb.repo in
- /etc/yum.repos.d/ with the following
- content:# MariaDB 10.5 CentOS repository list - created 2021-02-16 08:46 UTC
-# http://downloads.mariadb.org/mariadb/repositories/
-[mariadb]
-name = MariaDB
-baseurl = http://yum.mariadb.org/10.5/centos7-amd64
-gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
-gpgcheck=1
-
-
-
- For more information about setting the repository, consult
- Downloads
- - Setting up MariaDB Repositories.
-
-
-
-
- Make sure the following packages are installed:
-
- MariaDB-compat-10.5.8-1.el7.centos.x86_64
-MariaDB-common-10.5.8-1.el7.centos.x86_64
-MariaDB-server-10.5.8-1.el7.centos.x86_64
-MariaDB-client-10.5.8-1.el7.centos.x86_64
-galera-4-26.4.6-1.el7.centos.x86_64
-
- These provide the MariaDB server, client and the Galera
- wsrep provider library.
-
-
-
- Copy the wsrep template:
-
- [root@localhost ~]# cp /usr/share/mysql/wsrep.cnf /etc/my.cnf.d
-
-
-
-
- Change the following configuration in
- /etc/my.cnf.d/wsrep.cnf:
-
- # Full path to wsrep provider library or 'none'
-wsrep_provider=/usr/lib64/galera-4/libgalera_smm.so
-
-# Provider specific configuration options
-#wsrep_provider_options=
-
-# Logical cluster name. Should be the same for all nodes.
-wsrep_cluster_name="ucpemanager"
-
-# Group communication system handle
-wsrep_cluster_address="gcomm://192.168.10.11,192.168.10.12,..,192.168.10.16"
-
-# Human-readable node name (non-unique). Hostname by default.
-wsrep_node_name=Node1 # current node's name. set node name for each server in \
-the cluster
-
-# Base replication <address|hostname>[:port] of the node.
-# The values supplied will be used as defaults for state transfer receiving,
-# listening ports and so on. Default: address of the first network interface.\
-wsrep_node_address=192.168.10.11
-#current node's interface IP . must be set for each node in the cluster
-
-
- Steps 2, 3 and 4 must be performed for each MariaDB node
- in the cluster.
-
-
-
-
- Bootstrap the first node in the cluster (referred to as
- Node1 in this example), by running:
-
- [root@localhost ~]# galera_new_cluster
-
- This script passes the
- --wsrep-new-cluster to
- mysqld which tells the node that there is no
- pre-existing cluster to connect to. The node will create a new
- UUID to identify the new cluster.
-
-
- Do not execute this script when connecting to an existing
- cluster. It will create a new UUID to identify the cluster
- again, and the node won't reconnect to the old cluster.
-
-
-
-
- Go to Node1 and start the service:
-
- [root@localhost ~]# systemctl start mariadb
-
- Subsequently, start the service on the other servers.
-
-
-
- Verify that the nodes have entered the cluster:
-
- [root@localhost ~]# mysql --host=localhost --user=root -p
-MariaDB [(none)]> show status like 'wsrep_cluster_conf_%';
-+-----------------------+-------+
-| Variable_name | Value |
-+-----------------------+-------+
-| wsrep_cluster_conf_id | 3 |
-+-----------------------+-------+
-1 row in set (0.001 sec)
-
-
-
- Run the initial configuration script (only once, on one of
- the machines in the cluster):
-
- [root@localhost ~]# mysql_secure_installation
-
-Switch to unix_socket authentication [Y/n] Y
-Enabled successfully!
-Reloading privilege tables..
- ... Success!
-…
-Change the root password? [Y/n] Y
-New password:
-Re-enter new password:
-Password updated successfully!
-Reloading privilege tables..
- ... Success!
-…
-Remove anonymous users? [Y/n] Y
- ... Success!
-…
-Disallow root login remotely? [Y/n] Y
- ... Success!
-…
-Remove test database and access to it? [Y/n] Y (optional)
- - Dropping test database...
- ... Success!
- - Removing privileges on test database...
- ... Success!
-Reload privilege tables now? [Y/n] Y
- ... Success!
-
-Cleaning up...
-
-All done! If you've completed all of the above steps, your MariaDB
-installation should now be secure.
-
-Thanks for using MariaDB!
-
-
-
- Create the initial database and grant access to it:
-
- [root@localhost application]# mysql --host=localhost --user=root -p
-MariaDB [(none)]> CREATE DATABASE ucpemanager CHARACTER SET='utf8' \
-COLLATE='utf8_bin';
-Query OK, 1 row affected (0.004 sec)
-
-MariaDB [(none)]> GRANT ALL PRIVILEGES ON ucpemanager.* \
-TO 'enea'@'%' IDENTIFIED BY 'somepassword' WITH GRANT OPTION;
-
-
-
-
-
- Installing the Java SDK
-
- Please refer to Configuring OpenJDK and
- PostgreSQL in the
- Manual, for details on how to install and configure Java
- OpenJDK.
-
- Make sure the JAVA_HOME variable points to
- the OpenJDK 11 installation:
-
- [root@localhost ~]# echo $JAVA_HOME
-/usr/lib/jvm/java-11-openjdk-11.0.10.0.9-0.el7_9.x86_64
-
-
-
-
- Installing the Enea Edge Management in High Availabilty
- mode
-
- These steps must be taken on each of the CentOS 7 machines that
- will host the Enea Edge Management. The Enea Edge Management will be
- installed and the setup for the external database cluster will be
- prepared.
-
- As the root user, go to the distribution folder of the Enea Edge
- Management, and run:
-
- [root@localhost distro]#./install.sh /opt/ \
-Enea_NFV_Access_uCPEManager_2.3.0-build23.tar.gz
-This will install uCPEManager into /opt/ucpemanager folder.
-Select the following options, while asked by the installation script:
-Are you using the embedded PostgreSQL database? [Y/N]: N
-External database selected, getting user information ...
-Press 1 for PostgreSQL, 2 for MariaDB, 3 for SQL Server, 4 for Oracle and 5 \
-for MySQL: 2
-Specify database server name(s) or IP Address(es): \
-192.168.10.11,192.168.10.12,…,192.168.10.16 *(see note)
-Specify database ID (or name) [ucpemanager]:
-Specify database server port [3306]:
-Specify database user name [root]: enea
-Specify database password [root]: somepassword
-Specify database startup thread pool size [1]:
-Creating database configuration file \
-/opt//ucpemanager/application/config/databaseConfig.xml ...
-Done .
-…
-Installing ucpemanager service ..
-Specify service username [ucpemanager]:
-Specify service password [ucpemanager]: somepassword
-…
-Specify the IP address of the local interface: 192.168.10.11
-Is this server part of a cluster? [Y/N]: Y
-Specify the name of the cluster [ucpemanager]:
-Specify the shared (virtual) cluster IP address: 192.168.10.10
-Specify the netmask for the cluster IP address [255.255.255.0]:
-HA Configuration files modified successfully.
-Configuration complete.
-
-
- For each Enea Edge Management installation, place the local
- interface IP first in the list of IPs. This will optimize database
- communication, since the Enea Edge Management uses the list of IPs
- sequentially, therefore using the internal loopback interface for
- communicating with the database.
-
-
- Once the servers are up and running, log into the Primary and go to System and select Cluster
- View. The list of Enea Edge Management servers should be
- displayed, with one listed as Primary and the rest as Backup.
-
-
-
-
- Upgrading a High Availability Deployment
-
- Upgrading a High Availabilty deployment is a highly complex,
- multi-step process that requires care to ensure both consistency and
- high-availability. Some steps need to be done manually.
-
-
-
- We start with the assumption that ucpeManager-1
- is the "PRIMARY" server.
-
-
-
- Shut down database services on one side of the network, for
- example: MariaDB-4, MariaDB-5 and MariaDB-6.
-
-
-
- Disconnect the network interfaces towards the VPN for machines
- MariaDB-4, MariaDB-5 and MariaDB-6. This will prevent any attempts
- at failover/synchronization.
-
-
-
- Run the upgrade process on ucpeManager-3
- and ucpeManager-4. This will upgrade the service
- to the current release. Once the upgrade process completes, shutdown
- the Enea Edge Management service on both machines.
-
-
-
- Disconnect the ucpeManager-2 machine from
- the network (which will take MariaDB-2 offline as well). At this
- point, only the "PRIMARY" server is running, this is the start of
- the interval when we are susceptible to single-server
- failure.
-
-
-
- Shutdown the MariaDB-2 process and run the Enea Edge
- Management upgrade process on ucpeManager-2. This
- will upgrade the service to the current release. Once the upgrade
- process completes, shutdown the Enea Edge Management service on the
- machine.
-
-
-
- Reconnect the network interfaces towards the VPN for MariaDB-4
- (ucpeManager-3), MariaDB-5
- (ucpeManager-4) and MariaDB-6
- (ucpeManager-2). Restart database services on
- MariaDB-2, MariaDB-4, MariaDB-5 and MariaDB-6. This will allow
- database services on all machines to synchronize, any data that has
- been modified during the upgrade process will be made
- consistent.
-
-
-
- Shutdown the "Primary" server
- (ucpeManager-1). At this point, the service is no
- longer available.
-
-
-
- Start the Enea Edge Management services on
- ucpeManager-2. This machine will come up as the
- new "PRIMARY" with the upgraded software. As part of the startup
- process, it will upgrade the database and perform any other
- upgrade-related functionality.
-
-
-
- At this point (once startup completes), service is available.
- However, we are still susceptible to single-server failure.
-
-
-
- Start the Enea Edge Management services on
- ucpeManager-3 and
- ucpeManager-4. At this point, we are in
- highly-available mode.
-
-
-
- Upgrade the Enea Edge Management on
- ucpeManager-1 (the one that has been shut down).
- Once that upgrade is complete and the service restarts, the entire
- setup has been upgraded to the new version.
-
-
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-getting-started/doc/book.xml b/doc/book-enea-nfv-access-getting-started/doc/book.xml
deleted file mode 100644
index 0704dd0..0000000
--- a/doc/book-enea-nfv-access-getting-started/doc/book.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-
-
-]>
-
- Enea Edge Getting Started
-
- Release Version
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/doc/book-enea-nfv-access-getting-started/doc/grafana.xml b/doc/book-enea-nfv-access-getting-started/doc/grafana.xml
deleted file mode 100644
index 05276ed..0000000
--- a/doc/book-enea-nfv-access-getting-started/doc/grafana.xml
+++ /dev/null
@@ -1,266 +0,0 @@
-
-
- Using Grafana and InfluxDB
-
- InfluxDB is essentially a time series database process that runs on a
- server, while Grafana is a visualization tool for time series data. Grafana
- is a very lightweight server-side application, and most of the monitoring
- runs in a browser.
-
-
- Deploying Grafana and InfluxDB
-
- Grafana and InfluxDB can be deployed using images for Docker on
- linux. These images are provided by Enea along with a deploy script and
- predefined dashboards.
-
- The Grafana and InfluxDB images can be deployed on the same machine
- or on separate machines.
-
-
- Prerequisites for Deploying an Image
-
- The following must be present in order to deploy an image:
-
-
-
- CentOS 7 Linux.
-
-
-
- Docker for CentOS 7 installed on the machine and set to
- autostart as a service.
-
-
-
- Superuser rights on the CentOS 7 machine.
-
-
-
-
-
- Deploying Grafana and InfluxDB
-
- On the CentOS 7 server open a terminal, log into a bash shell with
- the root account and perform the following:
-
-
-
- Extract
- Enea_Edge_Telemetry_Deploy_<version>-build<build_number>.tar.gz.
-
- The directory in which the archive will be unpacked will be
- denoted as: <Telemetry-installdir>.
-
-
-
- Enter <Telemetry-installdir>.
-
-
-
- Run the provided telemetry_deploy.sh
- script.
-
-
-
- When prompted, select what images you want to deploy.
-
- If an image is already deployed, you will be prompted to
- replace it.
-
-
-
- During the InfluxDB deployment, you will be prompted to
- provide a username and password. These must match the ones
- configured in the Enea Edge Management for Telemetry.
-
-
- Changing the InfluxDB username and password requires
- redeploying the InfluxDB image.
-
-
-
-
- Verify the installation by running the command docker
- ps -a. The Grafana and InfluxDB containers should be
- present and have the status Up.
-
-
-
-
-
-
- Setting Grafana and InfluxDB parameters
-
- Customizing InfluxDB and Grafana parameters can be done by selecting
- System, then the Configuration menu, accessing the Properties tab, and clicking on the Telemetry tab. The settings that can be changed are
- listed in the table below:
-
-
- Telemetry settings
-
-
-
-
-
-
-
-
-
-
- Field name
-
- Description
-
- Default value
-
-
-
- Grafana Hostname or IP Address
-
- The hostname or IP address where the Grafana instance is
- installed.
-
- no default
-
-
-
- Grafana Port
-
- The port Grafana uses.
-
- 3000
-
-
-
- Grafana Dashboard
-
- The dashboard that should be used when opening Grafana
- using the Enea Edge Management.
-
- host
-
-
-
- InfluxDB Hostname or IP Address
-
- The hostname or IP address where the InfluxDB database is
- installed.
-
- no default
-
-
-
- InfluxDB Port
-
- The port used for communication between InfluxDB and the
- Telemetry server.
-
- 25826
-
-
-
- InfluxDB Username
-
- The username used for encrypting communication between
- InfluxDB and the Telemetry server.
-
- admin0
-
-
-
- InfluxDB Password
-
- The password used for encrypting communication between
- InfluxDB and the Telemetry server.
-
- admin
-
-
-
-
-
- When changing any of the settings in the Telemetry tab, the Enea Edge Management will inform
- all uCPE devices of the change if they have telemetry running.
-
-
- Telemetry Properties
-
-
-
-
-
-
-
-
-
-
- Starting and stopping Telemetry
-
- When a uCPE Device is selected, in the Operations menu, the Start
- Telemetry and Stop Telemetry
- options are available.
-
- When starting Telemetry for a uCPE device, the Enea Edge Management
- sends the following information about the InfluxDB:
-
-
-
- The IP address and hostname where InfluxDB is installed.
-
-
-
- The port used for communication between InfluxDB and the
- Telemetry server.
-
-
-
- The credentials used for encrypting communication between
- InfluxDB and the Telemetry server.
-
-
-
- These fields are read-only and are populated with the values already
- set in the System Configuration. If one
- of the fields is not set or if it does not have the desired value, modify
- it in the System Configuration. The
- password is sent encrypted using the Base64 scheme.
-
-
- Telemetry Start Dialog
-
-
-
-
-
-
-
-
- When the Telemetry status is changed on a uCPE device, a
- notification is sent to the Enea Edge Management. These notifications can
- be inspected under Fault found in the
- Event menu.
-
-
-
- Launching Grafana
-
- When a uCPE Device is selected, the Telemetry button is available. Pressing this button
- will open a new window pointing to Grafana. The current uCPE device will
- be selected in Grafana.
-
- The hostname or IP Address and the port of the Grafana installation
- can be customized by selecting System,
- then the Configuration menu, accessing
- the Properties tab, and clicking on the
- Telemetry tab. The default dashboard
- available when launching Grafana can be customized as well.
-
-
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/archive_list.png b/doc/book-enea-nfv-access-getting-started/doc/images/archive_list.png
deleted file mode 100755
index 302f32d..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/archive_list.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/collect_debug_logs.png b/doc/book-enea-nfv-access-getting-started/doc/images/collect_debug_logs.png
deleted file mode 100755
index 6582737..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/collect_debug_logs.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/debug_settings.png b/doc/book-enea-nfv-access-getting-started/doc/images/debug_settings.png
deleted file mode 100755
index 2c97b2c..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/debug_settings.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/dev_file_mg.png b/doc/book-enea-nfv-access-getting-started/doc/images/dev_file_mg.png
deleted file mode 100755
index a4a4f5c..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/dev_file_mg.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/download_files.png b/doc/book-enea-nfv-access-getting-started/doc/images/download_files.png
deleted file mode 100755
index cb686e4..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/download_files.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/edit_inter.png b/doc/book-enea-nfv-access-getting-started/doc/images/edit_inter.png
deleted file mode 100755
index fddde37..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/edit_inter.png and /dev/null differ
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
deleted file mode 100755
index f9ab8aa..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/edit_inter_config.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/fault_events.png b/doc/book-enea-nfv-access-getting-started/doc/images/fault_events.png
deleted file mode 100755
index aeec955..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/fault_events.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/high_av_setup.png b/doc/book-enea-nfv-access-getting-started/doc/images/high_av_setup.png
deleted file mode 100644
index d119ecb..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/high_av_setup.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/onboard_a_vnf_image.png b/doc/book-enea-nfv-access-getting-started/doc/images/onboard_a_vnf_image.png
deleted file mode 100755
index da52202..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/onboard_a_vnf_image.png and /dev/null 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
deleted file mode 100755
index 0b3ec54..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/ovs_bridges_tab.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/prep_deploy.png b/doc/book-enea-nfv-access-getting-started/doc/images/prep_deploy.png
deleted file mode 100755
index 2db2487..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/prep_deploy.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/prep_execution.png b/doc/book-enea-nfv-access-getting-started/doc/images/prep_execution.png
deleted file mode 100755
index 404760b..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/prep_execution.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/telemetry_settings.png b/doc/book-enea-nfv-access-getting-started/doc/images/telemetry_settings.png
deleted file mode 100644
index 276b716..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/telemetry_settings.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/telemetry_start.png b/doc/book-enea-nfv-access-getting-started/doc/images/telemetry_start.png
deleted file mode 100644
index 81510b5..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/telemetry_start.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/vnf_space.png b/doc/book-enea-nfv-access-getting-started/doc/images/vnf_space.png
deleted file mode 100755
index 57ed581..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/vnf_space.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/wap_external_interface.png b/doc/book-enea-nfv-access-getting-started/doc/images/wap_external_interface.png
deleted file mode 100644
index ee49fc1..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/wap_external_interface.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/images/wap_wireless_ap.png b/doc/book-enea-nfv-access-getting-started/doc/images/wap_wireless_ap.png
deleted file mode 100644
index b7c77bf..0000000
Binary files a/doc/book-enea-nfv-access-getting-started/doc/images/wap_wireless_ap.png and /dev/null differ
diff --git a/doc/book-enea-nfv-access-getting-started/doc/installation_guide.xml b/doc/book-enea-nfv-access-getting-started/doc/installation_guide.xml
deleted file mode 100644
index d9784a0..0000000
--- a/doc/book-enea-nfv-access-getting-started/doc/installation_guide.xml
+++ /dev/null
@@ -1,1193 +0,0 @@
-
-
- Setting up and Installing the Enea Edge Base Configuration
-
- The setup and installation steps detailed below will deploy a base
- configuration which will be used as a reference for more complex deployment
- scenarios.
-
-
- Hardware Requirements
-
- The following hardware is needed for deploying the base
- configuration:
-
-
-
- One server running the CentOS 7 distribution
-
-
- The CentOS 7 server must be updated to the latest revision
- before installing Enea Edge.
-
-
- The following will detail CPU, RAM and storage requirements for
- the Enea Edge Management.
-
-
-
- For small-sized deployments (tens of devices):
-
-
-
- 4 cores
-
-
-
- 16 GB RAM
-
-
-
- 300 GB single disk storage
-
-
-
-
-
- For mid-sized deployments (hundreds of devices):
-
-
-
- 8 cores
-
-
-
- 32 GB RAM
-
-
-
- 300 GB single disk storage
-
-
-
-
-
- For large deployments (thousands of devices):
-
-
-
- 16 cores
-
-
-
- 64-256 GB RAM
-
-
-
- 1-2 TB single disk storage
-
-
-
-
-
- The purpose of the CentOS 7 server is to host the Enea Edge
- Management. Network access between the CentOS 7 server and the uCPE
- devices is required. The Enea Edge Management and the uCPE devices
- will be connected on separate subnets to avoid inconsistencies.
-
-
-
- One or more uCPE devices.
-
- Whitebox devices where the Enea Edge Runtime will be installed,
- containing a minimum of 2 cores and 4 GB RAM and at least two ethernet
- ports that will be configured as WAN and LAN during deployment.
-
- When hosting an entire solution including one or several network
- services, the hardware must also have the resources to host one or
- more VNFs. During a typical evaluation, a dual VNF service on the Enea
- Edge Runtime needs a CPU with 4-8 cores and at least 8 GB RAM. The
- supported Intel CPUs of Enea Edge are documented in the
- manual.
-
- Enea Edge Runtime needs EFI support in BIOS to boot. When
- configuring the uCPE device BIOS a serial connection is
- required.
-
-
-
- A laptop.
-
- The laptop is used for 2 scenarios:
-
-
-
- Installing the Enea Edge Runtime on uCPE Devices.
-
-
-
- Connecting to the GUI of the Enea Edge Management for
- management and configuration. Network access between the CentOS 7
- server and the laptop is required. Please see the manual
- available with your release, for recommended browsers.
-
-
-
-
-
- A 16 GB USB stick used for the uCPE Device Installation.
-
-
-
-
-
- Software Configuration
-
- The CentOS 7 server requires a specific configuration for the setup
- to work.
-
-
- Firewall Configuration
-
- Any firewall running on the CentOS 7 server may block the
- management protocols required to communicate between the uCPE device and
- the Enea Edge Management as well as between the Enea Edge Management and
- its northbound clients. Quick handling of a blocking firewall would be
- to disable it, typical for a lab environment, through:
-
- sudo systemctl stop firewalld
-sudo systemctl disable firewalld
-sudo systemctl mask now firewalld
-
- For an advanced firewall configuration, the following ports need
- to be opened:
-
-
- Ports to be Activated
-
-
-
-
-
-
- 80
-
- TCP
-
- Required for GUI Access.
-
-
-
- 443
-
- TCP
-
- Required for GUI Access and Device Connectivity.
-
-
-
- 54327
-
- UDP
-
- Required for the Enea Edge Management High Availability
- Configuration.
-
-
-
- 5701:5708
-
- TCP
-
- Required for the Enea Edge Management High Availability
- Configuration.
-
-
-
- 4334
-
- TCP
-
- Required for Call Home.
-
-
-
- 2021:2040
-
- TCP
-
- Required for Call Home when connecting uCPE Devices using
- Enea NFV Access 2.3.0 or older.
-
-
-
-
-
- Use the following command sequence to enable the required ports
- for deployment of the Enea Edge Management:
-
- sudo firewall-cmd --permanent --add-port=80/tcp
-sudo firewall-cmd --permanent --add-port=443/tcp
-sudo firewall-cmd --permanent --add-port=54327/udp
-sudo firewall-cmd --permanent --add-port=5701-5708/tcp
-sudo firewall-cmd --permanent --add-port=4334/tcp
-sudo firewall-cmd --permanent --add-port=2021-2040/tcp
-sudo firewall-cmd --reload
-
-
- If the Enea Edge Management host resides behind a corporate
- port-filtering firewall, then all the aforementioned ports need to
- also be enabled on the respective firewall. As an additional
- requirement, port 22/TCP also needs to be enabled for reverse SSH to
- the Enea Edge Management.
-
- No enabling and no forwarding rules are necessary for ports
- 2021-2040 if using Enea Edge 2.4.0 or newer.
-
-
-
-
- Configuring OpenJDK and PostgreSQL
-
- The Enea Edge Management requires a specific Java version (OpenJDK
- 11) and a PostgreSQL version to operate correctly.
-
- Installing OpenJDK
-
-
-
- Install OpenJDK 11 using the root account:
-
- yum install java-11-openjdk-devel
-
-
-
- Verify the installation:
-
- java -version
-openjdk version "11.0.3" 2019-04-16 LTS
-OpenJDK Run Time Environment 18.9 (build 11.0.3+7-LTS)
-OpenJDK 64-Bit Server VM 18.9 (build 11.0.3+7-LTS, mixed mode, sharing)
-
-
- If there are multiple java versions installed, switch
- between them using the following command:
-
- alternatives --config java
-
- Optionally, the user can switch between the
- javac versions using:
-
- alternatives --config javac
-
-
-
-
- The following system variables need to point to the OpenJDK 11
- installation:
-
- export JAVA_HOME=$(dirname $(dirname $(readlink $(readlink $(which java)))))
-export PATH=$PATH:$JAVA_HOME/bin
-export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
-
-
- In order to make these system variables persistent, the
- commands given above should be added to a script in the
- /etc/profile.d/ folder. Sudo access is needed for this
- operation.
-
-
-
-
- The Enea Edge Management requires a specific PostgreeSQL version.
- This is embedded in the Enea Edge Management installation. In order to
- avoid conflicts, any existing PostgreeSQL installation needs to be
- uninstalled.
-
- Uninstalling PostgreSQL
-
-
-
- Open a terminal with administrative rights, i.e. log into a
- bash shell with root privileges.
-
-
-
- Execute the following command to check if you have a currently
- running PostgreSQL database server:
-
- ps -ef | grep post
-
-
-
- Remove the installed PostgreSQL server (including the existing
- postgres user):
-
-
- This step is not necessary if the Enea Edge Management will
- be using an external database (like MariaDB).
-
-
- yum remove postgres\*
-rm -rf /var/lib/pgsql
-rm -f /etc/postgres-reg.ini
-userdel postgres
-
-
-
- If you have multiple spindles, it is recommended to let the
- application run off one and the database off the other. This will result
- in optimum performance. It is also recommended that the swap disk be the
- same as the one used for the application.
-
- Assuming another spindle is used (/drive2) do
- the following:
-
-
-
- Create a folder which will host the database (e.g.
- emsDatabase).
-
-
-
- Create a soft-link that will point to this folder:
-
- ln -s /opt/ems/elementcenter/database /drive2/emsDatabase
-
-
-
- Follow the installation steps for the Enea Edge Management
- available in Installing the Enea Edge Management in
- the
- Manual.
-
-
-
-
-
-
- uCPE Device Configuration
-
-
- Determining the WAN and LAN ports
-
- A typical whitebox comes with multiple physical network ports,
- ready to be used. The user must determine the purpose and allocation of
- each port. The allocation is later aligned with the software
- configuration within the Web-installer.
-
- A common way is to allocate the left ports to WANs and the right
- ports to LANs. At least one port must be allocated to WAN and one to
- LAN.
-
-
-
- Determining the Device ID
-
- Each uCPE device needs a unique identifier. This identifier is
- used to match the registration in the Enea Edge Management and the
- offline configuration of the uCPE device during ZTP (Zero Touch
- Provisioning).
-
- Select a text string to represent the uCPE device, e.g.
- uCPE-1 or fwa-t1012vc_boston_1234.
- It can have any length and any type of characters with the exception of
- quotation characters (' or ") or line terminators (\n or \r) which can
- interfere with the JSON format of the
- install_data.json file.
-
-
-
- Configuring the BIOS
-
- The factory configuration of the BIOS may not match the
- requirements of Enea Edge Runtime. The BIOS configuration needs to be
- reviewed and potentially reconfigured to prepare for a successful
- installation.
-
- Access the BIOS using a serial cable between the uCPE device and
- the laptop, to review and configure the BIOS correctly. The whitebox
- vendor is expected to provide the right serial cable for the box. A
- terminal emulator (such as putty) is needed on the laptop.
-
- Enable the following BIOS features/configurations:
-
-
-
- EFI
-
-
-
- Intel Virtualization Technology (VT-x)
-
-
-
- Intel Virtualization Technology for Directed I/O (VT-d)
-
-
-
- SR-IOV
-
-
-
- The boot order may also need to be modified to support
- installation and execution of the Enea Edge Runtime on the uCPE
- device.
-
- The following boot order is recommended for a base
- configuration:
-
-
-
- Boot from USB
-
-
-
- Boot from Disk
-
-
-
- By arranging the above boot order there is no need for a further
- configuration of the BIOS during installation and deployment.
-
-
-
-
- Preparing the Deployment
-
-
- Installing the Enea Edge Management
-
- The Enea Edge Management can be installed using a fresh
- (first-time) configuration or using a backup file of a previous
- installation, created within the Enea Edge Management GUI.
-
-
- Fresh Installation of the Enea Edge Management
-
- On the CentOS 7 server open a terminal, log into a bash shell
- with the root account and perform the following:
-
-
-
- Extract
- Enea_Edge_Management_<version>-build<build_number>.tar.gz
-
- The directory in which the archive has been unpacked will be
- denoted as: <uCPEM-installdir>.
-
-
-
- Enter <uCPEM-installdir>/dist.
-
-
-
- Choose the target installation folder, e.g.
- /opt/ems. Everything will be installed under a
- folder called /ucpemanager within the target
- installation folder.
-
- The application files will be installed in
- /opt/ems/ucpemanager/application. The database
- will be installed in
- /opt/ems/ucpemanager/database.
-
-
-
- Run the following interactive command:
-
- ./install.sh /opt/ems \
-Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz
-
- The default configuration values are specified in brackets.
- If no other value is preferred and typed in, pressing
- ENTER will keep the default values. When there
- is an option within parentheses (i.e.Y/N), a value must be
- specified.
-
-
- The same configuration values set now will need to be
- provided when upgrading or uninstalling the Enea Edge
- Management.
-
-
-
-
- Database Configurations:
-
-
-
- Are you using the embedded PostgreSQL database?
- [Y/N]: Y.
-
-
-
- Specify the database process password
- [postgres]:
-
-
-
- Specify the database ID (or name)
- [ucpemanager]:
-
-
-
- Specify the database server port
- [5432]:
-
-
-
- Specify a database user name
- [postgres]:
-
-
-
- Specify a database password
- [postgres]:
-
-
-
- Specify the database startup thread pool size
- [1]:
-
-
-
-
-
- Service Configurations:
-
-
-
- Specify a service username
- [ucpemanager]:
-
-
-
- Specify a service password
- [ucpemanager]:
-
-
-
-
-
- High Availability Configurations:
-
-
-
- Specify the IP address of the local interface: The
- CentOS 7 Server loopback address:
- 127.0.0.1.
-
-
-
- Is this server part of a cluster? [Y/N]:
- N.
-
-
-
-
-
- Heap Configuration: Please enter the new
- Maximum Heap Size [4g]:
-
-
-
- Create the self-signed certificate: Specify IP
- or domain name:
-
-
- The certificate can be generated again by running the
- createCertificate script from the
- distribution folder.
-
-
-
-
- This command will:
-
-
-
- Extract the application files from the compressed
- installation kit.
-
-
-
- Install the bundled database.
-
-
-
- Install the Enea Edge Management as a service with the
- name ucpemanager.
-
-
-
- Start the ucpemanager service
-
-
-
-
-
- Using the IPv4 address of the CentOS 7 Server in a web
- browser, running on the laptop, log into the Enea Edge Management
- GUI using the default username and password:
- admin/admin.
-
-
-
-
- The IPv4 address of the CentOS 7 Server, connected to the same
- network as the uCPE Devices, will be used as a configuration
- parameter when setting up the uCPE devices.
-
- If the CentOS 7 Server is installed behind NAT, the IPv4
- address used will be the public IP of the NAT device and port
- forwarding rules must be created to ensure the uCPE device can
- access the Enea Edge Management. For more details, please see Firewall Configuration.
-
-
-
-
- Installation of the Enea Edge Management using a System
- Back-up
-
- The Enea Edge Management can be restored if a backup file has
- been previously created.
-
- A backup file can be created by accessing the System menu, and clicking System Backup, from the Enea Edge Management
- GUI. The resulting zip archive will be located in the
- /opt/ems/ucpemanager/application/backup folder
- and will be named
- SystemBackup_MMMDD_YYYY_HHMM_SS.zip (e.g
- System-Backup_Feb19_2013_2257_42.zip). Save the archive to another
- location outside the Enea Edge Management installation folder for
- future use.
-
-
- The System Back-up file obtained from the Enea Edge Management
- GUI (SystemBackup_MMMDD_YYYY_HHMM_SS.zip) is
- different from the snapshot obtained during a Enea Edge Management
- Upgrade or Uninstall operation
- (ucpemanager-Backup-YYYYddMMHHmm.tar.gz) needed
- for recovery of the Enea Edge Management. For more details, see
- Restoring a previous Enea Edge
- Management installation in the
- Manual.
-
-
- To install the Enea Edge Management with the restore option
- provide an additional argument as shown below during
- installation:
-
- ./install.sh \
-/opt/ems Enea_NFV_Access_uCPEManager_<version>-build<build_number>.tar.gz \
-SystemBackup_MMMDD_YYYY_HHMM_SS.zip
-
-
-
-
- Preparing the USB stick for installation of the Enea Edge
- Runtime
-
- To install the Enea Edge Runtime, create a bootable USB stick with
- the image you intend to install.
-
- In the example below, step by step instructions are provided for
- the CentOS 7 distribution. It's possible with the appropriate tools to
- also use Windows OS or MacOS.
-
-
- The .hddimg image is available in the
- Enea_Edge_Runtime_Platform_
- <processor>_<version>-build<build_number>.tar.gz
- file you downloaded with your release.
-
-
- Create a bootable USB stick
- image
-
-
-
- Copy the .hddimg image file provided by
- Enea, into the CentOS 7 server.
-
-
-
- Connect the USB stick to the CentOS 7 Server and identify the
- USB device name given by the system with
- lsblk:
-
- NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
-sda 8:0 1 28.7G 0 disk
-sdb 8:0 0 111.8G 0 disk
-|-sdb1 8:1 0 111.8G 0 part
-
-
-
- Copy the .hddimg image onto the USB
- stick, e.g:
-
- sudo dd if=./enea-nfv-access-<machine>.hddimg \
-of=/dev/sdb bs=4M conv=fsync
-
- Where
- enea-nfv-access-<machine>.hddimg is the
- .hddimg file and sdb is the
- assigned USB device name.
-
-
-
-
-
- Preparing Physical Deployment for Installation
-
-
- Preparing for Hardware Installation
-
-
-
-
-
-
-
-
- While the uCPE device is powered off, in order to install and
- configure the Enea Edge Runtime (using the prepared USB stick), connect
- the laptop to a uCPE device LAN port. For this purpose, a Layer 2 switch
- or direct cable connection can be used.
-
-
-
- Installing Enea Edge - uCPE Device Installation
-
- To initiate the installation of the Enea Edge Runtime do the
- following:
-
-
-
- Plug the USB stick into the uCPE device.
-
-
-
- Power up the uCPE device and boot the USB stick.
-
-
-
- The Web-installer application will start automatically and can
- be accessed in a web browser on the laptop at
- http://172.16.1.1 (port 80).
-
-
-
- On the Requirements page of
- the Web-installer, the user must confirm the current state of
- installation prerequisites is inline with the desired state:
-
-
-
- Requirements table. Minimum values apply to the
- installation process only. For runtime operations, additional
- resources should be available depending on the specific
- workload. Requirements are color coded (green when met, red when
- mandatory and not met, orange when optional and not met). The
- Requirements table has the following fields:
-
-
-
- Disk size (mandatory). 2GB or more are required for
- the installation.
-
-
-
- CPU cores (mandatory). 2 cores or more are required
- for the installation.
-
-
-
- RAM (mandatory). 2GB or more are required for the
- installation.
-
-
-
- VT-x (mandatory). Intel Virtualization Technology must
- be enabled.
-
-
-
- VT-d (optional, recommended). Intel Virtualization
- Technology for Directed I/O should be enabled.
-
-
-
- IOMMU Group separation (optional). If the hardware
- does not support IOMMU Group separation, there are certain
- limitations regarding how the vfio-pci
- driver can be used. For more details, see the Known Issues and Limitations in
- this Release in the
- Manual.
-
-
-
-
-
- Force installation checkbox. When enabled, the
- installation can be performed even if some of the mandatory
- requirements are not met or if non-fatal problems are detected
- during the process.
-
-
-
-
-
- On the Enea Edge Management
- settings page of the Web-installer, the user must fill
- in:
-
-
-
- The static Enea Edge Management IP Address or FQDN. This can be
- either:
-
-
-
- The IP address of the Enea Edge Management host
- machine, if the device can directly access it.
-
-
-
- The IP address of the NAT device, if the Enea Edge
- Management host is located behind a NAT. For more details,
- please see Firewall
- Configuration.
-
-
-
- The Fully Qualified Domain Name (FQDN) of the Enea
- uCPE Manager host machine.
-
-
-
-
-
- The unique identifier of the uCPE device (called
- "DeviceId" in this guide).
-
-
-
- Customer Tags. They are used for Zero Touch Provisioning
- (ZTP) and can be left empty for a base configuration. What can
- be entered here (if needed), are the tag(s) specified when
- creating an offline configuration in the Enea Edge Management. A
- later addition of customer tags can only be done by reinstalling
- the uCPE devices.
-
-
-
-
-
- Connect the WAN cable to the uCPE device (see Figure 2). This
- will be used as the uCPE management network interface, as described
- below.
-
-
-
- On the Network Setup page of
- the Web-installer, the user must do the following:
-
-
-
- Select a WAN interface to use as the management network
- interface. This interface is used by the Enea Edge Management to
- communicate with the uCPE device.
-
-
-
- Plug-in additional WAN interfaces (if applicable) and
- provide their Layer 3 configuration.
-
-
-
-
-
- When the user has completed the configuration steps in the
- Web-installer, Enea Edge Runtime is installed on the hard drive. At this
- stage, the user should remove the USB stick and the LAN cable, and
- shutdown the uCPE device. It will be started after necessary
- configurations are done in the Enea Edge Management, as described
- below.
-
-
- If errors are detected during installation, full logs will be
- available on the last page of the Web-installer. Please contact Enea
- for log analysis. The system is not expected to be usable if errors are
- reported during installation.
-
- If the USB stick was booted in UEFI mode, a UEFI boot entry is
- automatically created and the system will start booting from the hard
- drive without further user configuration.
-
-
-
-
- Preparing Physical Deployment for Execution
-
-
- Preparing for Deployment Execution
-
-
-
-
-
-
-
-
- The following network configuration is needed for managing the
- uCPE device and service deployment:
-
-
-
- Network connection between the server running the Enea Edge
- Management and the laptop.
-
-
-
- Network connection between the server running the Enea Edge
- Management and the uCPE device.
-
-
-
-
-
-
- Management of uCPE Devices
-
- When the installation is complete the uCPE device can be managed in
- the Enea Edge Management.
-
-
- Add a default Offline Configuration
-
- Zero Touch Provisioning is always turned on when a uCPE device
- connects to the Enea Edge Management. To enable it in the Enea Edge
- Management, an offline configuration needs to be registered for Day-0
- configuration.
-
-
- Day-0 configuration is a software lifecycle term referring to
- early configurations used to put the uCPE device in an active state.
- Day-1 Configurations are applied after Day-0 and set the uCPE device
- and its service in an active state. Day-2 Configurations are live
- configurations on the uCPE device and its service, applied after they
- have been activated.
-
-
- The offline configuration consists of data and parameters that are
- meant to be automatically set when a uCPE device connects to the Enea
- Edge Management for the first time. The configuration is typically
- focused on setting up the network management of the uCPE device, e.g.
- configuring network interfaces, WAN and LAN networking and service
- chains.
-
- For this base configuration, the offline configuration will be
- left blank. The blank offline configuration can be filled with
- user-specific values and data once the service is created, which is done
- after the installation is complete.
-
-
- If the offline configuration is not configured, an alarm will be
- raised: Day-0 Config:ZTP:Major when the uCPE device
- tries to connect to the Enea Edge Management, informing the user that
- the ZTP setup failed for the uCPE device.
-
-
- To create an offline
- configuration
-
- In a browser access the Enea Edge Management, open Applications and select Offline Config.
-
-
-
- Create a new offline configuration in the GUI by selecting
- the Add button and filling in the
- mandatory fields: name,
- deviceVersion and
- deviceId.
-
- The name is user defined and can be set to any unique text
- string identifying the configuration. The
- deviceVersion must match the Enea Edge Runtime
- version of the uCPE device and the deviceId
- must be the previously set identifier of the uCPE device
- (DeviceId).
-
-
-
-
-
- Add a uCPE device to the Management System
-
- In order to enroll a uCPE device in the management system and
- establish a management connection, the user will add uCPE device
- information in the Enea Edge Management. This is accomplished by going
- to Devices, selecting Manage and then clicking the Add button.
-
- The relevant parameters are:
-
-
-
- Type. The type of device to
- be added, i.e Enea universal CPE.
-
-
-
- Name. The name by which the
- uCPE device is referred to in the Enea Edge Management.
- (Mandatory).
-
-
-
- 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 uCPE device communications. For
- a base configuration, leave this flag unchecked.
-
-
-
- Device ID. The unique
- identifier of the uCPE device. (Mandatory).
-
-
-
- For more details concerning Device Calls Home, please see Device Call Home Connection for
- Deployment behind NAT in the
- Manual.
-
-
-
- Booting the uCPE device and adding it to the Map
-
- When connectivity is established with the Enea Edge Management and
- a uCPE device is already registered with a matching Device
- ID, the installation is complete, and the connection is
- established.
-
- When a uCPE device is registered it can be manually added to the
- map for overview. Right-click on the
- map and select Place Device to put the
- uCPE device on the map.
-
- In case of management connection failure (e.g. due to a
- misconfiguration), the uCPE device status will be seen as RED
- (disconnected) in the Enea Edge Management. The uCPE device
- configuration can be corrected by removing the WAN cable(s),
- reconnecting the laptop to the LAN interface of the uCPE device and
- rebooting it. At this point, the Web-installer can be accessed from the
- laptop as described in Installing Enea Edge - uCPE Device
- installation in the
- Manual.
-
-
-
-
- uCPE Device Monitorization and Control
-
- Once the uCPE device is connected to the Enea Edge Management, it is
- ready for central management. Two important functions available in the
- Enea Edge Management GUI are alarm checking and resource
- allocation.
-
-
- Checking Alarms
-
- The Enea Edge Management dashboard presents alarms in a specific
- window on the front page.
-
- An alarm can be easily triggered by disconnecting and reconnecting
- the WAN ethernet cable from the uCPE device. The management system will
- detect the broken link and raise an alarm: Device
- Disconnected::Critical.
-
- A separate Alarm Management window can be accessed from the Enea
- Edge Management menu for in-depth access and programming of Alarms and
- Events.
-
-
-
- Checking uCPE device Resource Allocation
-
- When the uCPE device is connected to the Enea Edge Management it
- is of interest to check the amount of hardware resources in use.
-
- To check CPU, RAM and disk utilization simply select the uCPE
- device and go to the Virtual Machines
- tab in the map view. The same view will show active VNFs running on the
- uCPE device once instantiated.
-
-
-
- Accessing the uCPE device CLI
-
- As a final check to make sure the uCPE device was installed and
- configured correctly, access the uCPE device Linux CLI by selecting the
- uCPE device on the map and using the SSH
- button from the panel. A new window will appear for CLI
- access. The default user and password are root and
- blank, respectively.
-
- This is a pure Linux CLI providing access to standard Linux CLI
- commands. The CLI is a central feature for running custom
- scripting.
-
-
- In case the uCPE device was installed behind a NAT device, the
- reverse SSH connection will be used. For more details, please see
- Device Call Home Connection for
- deployment behind NAT in the
- Manual.
-
-
-
-
diff --git a/doc/book-enea-nfv-access-getting-started/doc/introduction.xml b/doc/book-enea-nfv-access-getting-started/doc/introduction.xml
deleted file mode 100644
index 4dec1e1..0000000
--- a/doc/book-enea-nfv-access-getting-started/doc/introduction.xml
+++ /dev/null
@@ -1,264 +0,0 @@
-
-
-
- Overview
-
- This document describes the Enea Edge and provides installation
- steps for deploying a base configuration in order to create:
-
-
-
- A functional Enea Edge Management installation ready to manage uCPE
- devices.
-
-
-
- One or several managed uCPE devices, ready to host network
- services, using one wired WAN and one wired LAN connection.
-
-
-
- Extended deployment and configuration options are also detailed in the
- following chapters.
-
-
- Enea Edge
-
- Enea Edge for universal Customer Premise Equipment (uCPE) is a
- virtualization and management platform, which allows end-users to onboard,
- instantiate, and run third-party VNFs onto their systems. It is comprised
- of two major components working in close cooperation:
-
-
-
- The Enea Edge Runtime, which acts as the host
- for Virtualized Network Functions (VNFs) and provides management over
- NETCONF.
-
-
-
- The Enea Edge Management, a solution that runs on an external
- server, used for VNF Management and managing large numbers of uCPE
- devices.
-
-
-
- In addition, Enea Edge includes a framework for
- automation and testing. More information can be found in
- .
-
- Details concerning release content, including documentation
- structure, are provided in the manual included
- with your release.
-
-
- Enea Edge Runtime
-
- Enea Edge Runtime is a lightweight,
- multi-architecture virtualization platform built on de-facto standards
- in an SDN/NFV ecosystem. It is designed for a high networking
- performance with minimal hardware footprint, by only providing relevant
- functionalties and technologies.
-
- Virtualization methods include Virtual Machines (KVM / QEMU) and
- container(s) (Docker). High networking throughput and low latency are
- ensured by accelerated data plane relying on technologies like DPDK,
- OVS-DPDK and SR-IOV/PCI-Passthrough. Key functionalities, such as
- platform software management, virtualized networking, VNFs life-cycle
- management and FCAPS are provided through the YANG-modelled NETCONF
- protocol.
-
-
- VNF Space
-
-
-
-
-
-
-
-
-
-
- Enea Edge Management
-
- The Enea Edge Management is centralized control system providing
- uCPEs domain management capabilities through a GUI and REST API. It can
- be deployed on a host or a virtual machine running 64-bit CentOS 7 on an
- x86 platform. The Enea Edge Management uses a southbound NETCONF protocol
- to connect and manage uCPE devices.
-
- The Enea Edge Management provides the following key features:
-
-
-
- Enea Edge Runtime Software Management
-
-
-
- VNF Onboarding
-
-
-
- VNF Management
-
-
-
- FCAPS
-
-
-
- Zero Touch Provisioning
-
-
-
- Alarms / Events management and monitoring
-
-
-
-
-
-
- Definitions and Acronyms
-
-
- Definitions
-
-
-
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-getting-started/doc/log_collector.xml b/doc/book-enea-nfv-access-getting-started/doc/log_collector.xml
deleted file mode 100644
index baa1340..0000000
--- a/doc/book-enea-nfv-access-getting-started/doc/log_collector.xml
+++ /dev/null
@@ -1,401 +0,0 @@
-
-
- Using the Log Collector
-
- Troubleshooting problems on the uCPE device require an analysis of a
- set of information i.e. logs collected from the uCPE device and/or the Enea
- Edge Management. The following information describes how the log collection
- mechanism works.
-
-
- Log collecting using the Enea Edge Management
-
- The Enea Edge Management allows for collecting a set of logs and state
- information from a uCPE device.
-
-
- Collecting the Logs
-
- Collect the necessary log files and system details, then create an
- archive (a tar file) on the uCPE device in the
- /var/odm/log/archives folder:
-
-
-
- Access Operations and then
- select Collect Debug Logs.
-
-
-
- Provide a file name in the new window.
-
-
-
- Press the Execute button.
-
- A success message is shown in the same window as shown below.
- At this moment, the process of collecting logs on the uCPE device
- starts.
-
-
-
- Collecting Debug Logs
-
-
-
-
-
-
-
-
-
-
- It might take some time for the archive to be created. When the
- operation completes, a "CollectLogsComplete" notification is sent from
- the uCPE device to the Enea Edge Management. This can be viewed in the
- GUI in the Faults menu, after selecting
-Events.
-
-
- Collecting Debug Logs
-
-
-
-
-
-
-
-
-
-
-
- View collected Logs
-
- A list with the archives containing already collected logs will be
- shown in the Device File Listing table:
-
-
-
- Access Files and then the
-Download button.
-
-
-
- Press the List button.
-
-
- Device File Listing Table
-
-
-
-
-
-
-
-
-
-
-
- If the filename you specified does not appear, it might still be
- in the process of creation. Click on the Refresh
- icon at the bottom of the table until you can see the desired file
- listing.
-
-
-
-
- Downloading Logs from the uCPE Device
-
- This option transfers a debug file archive from the uCPE device to
- Enea Edge Management.
-
-
-
- Access Files and choose the
- Download button.
-
-
-
- Press the List button.
-
-
-
- In the Device File Listing table, select
- the archive you want to download from the uCPE device to Enea Edge
- Management.
-
-
-
- Press the Download from Device
- button.
-
- The archive will be downloaded from the uCPE device and stored
- on the Enea Edge Management.
-
-
-
-
- The archive will not be deleted from the uCPE device after
- download.
-
-
-
-
- Downloading collected Logs locally
-
- This option downloads a logs archive from the Enea Edge Management to
- a local (user) machine for analysis. The archive must first be available
- in the Enea Edge Management in order to be downloaded.
-
-
-
- Access the Devices menu and select
-Files.
-
-
-
- Select the Downloaded Files tab.
-
-
-
- Select an archive from the Downloaded Files
- table.
-
-
-
- Click the Download button.
-
- The file will be downloaded in browser's download
- folder.
-
-
- Downloaded Files Table
-
-
-
-
-
-
-
-
-
-
-
-
- Deleting a Logs Archive from a uCPE device
-
- Use this option when you want to delete unnecessary collected logs
- on the uCPE device.
-
-
-
- Access Files and then click the
- Download button.
-
-
-
- Press the List button.
-
-
-
- In the Device File Listing table, select
- the archive you want to delete from the uCPE device.
-
-
-
- Press the Delete button.
-
- The archive will be deleted from the uCPE device and the table
- will be updated.
-
-
-
- The same can be achieved using these alternative options:
-
-
-
- Access the Operations menu and
-select Delete Debug Log Archive.
-
-
-
- Provide a file name in the new window.
-
-
-
- Press the Execute button.
-
- A success message is displayed if the file is deleted from the
- uCPE device correctly.
-
-
-
-
-
- Deleting a Logs Archive from the Enea Edge Management
-
- This option deletes a logs archive from the Enea Edge
- Management.
-
-
-
- Access the Devices menu, then select
- Files.
-
-
-
- Select the Downloaded Files tab.
-
-
-
- Select an archive from the Downloaded Files
-table.
-
-
-
- Click the Delete button.
-
- The file will be deleted from the Enea Edge Management and the
- table will be updated.
-
-
-
-
- Deleting the logs file from the Enea Edge Management does not
- affect the file located on the uCPE device.
-
-
-
-
- Enabling/Disabling of the Log Collector via Permissions
-
- To disable the ability to access/download the uCPE device's
- debug-log files from the Enea Edge Management, the appropriate permissions
- must be changed:
-
-
-
- Access the Security menu,
-then select Configuration.
-
-
-
- Click the Security Groups tab.
-
-
-
- Click the desired group.
-
-
-
- Click the Permissions tab on the right
- side.
-
-
-
- Click the Devices tab like in the image
- below.
-
-
-
- Change the Device File Management option to
- none to disable the feature.
-
-
-
-
- Device File Management
-
-
-
-
-
-
-
-
-
-
- Downloading Enea Edge Management Logs
-
- Often, sending the Enea Edge Management logs together with collected
- uCPE device logs to the support team provides important information for
- troubleshooting (especially in cases of connectivity issues with the
- uCPE device and error popups).
-
- Enea Edge Management log files are located in
- application/logs/ in the Enea Edge Management's
- installation folder
- (e.g./opt/ems/ucpemanager/application/logs). They
- can be copied from that location, or they can be downloaded using the
- Enea Edge Management GUI by performing the following:
-
-
-
- Access Test, then Debug
- Settings and select the Log Files tab.
-
-
-
- Select the desired log file
- (ucpemanager.log or
- watchdog.log) and press the
- Download button.
-
-
-
- A new (blank) popup window opens and the file is downloaded
- locally. This popup can be closed after the download.
-
-
-
- Repeat steps 2. And 3. Until all the desired log files have
- been downloaded
-
-
-
-
- Debug Settings
-
-
-
-
-
-
-
-
-
-
-
- Log collecting without using the Enea Edge Management
-
- Log collection from uCPE Devices can also be done when there is no
- Enea Edge Management connection. A SSH connection to uCPE Device is needed
- for use of the log collector script, which can be found in the uCPE Device
- file system in /usr/local/enea/.
-
- The Log collector script takes relevant information about the system
- and collects it in an archive:
-
- ./log-collector.sh -p <LOG_PATHh> -n <ARCHIVE_NAME>
-
- Where -p is the path where the log archive will
- be saved, -n is the archive name.
-
-
- If -p is not provided, the default path will be
- used: /var/logcollector. If -n is
- not provided, the default name will be used:
- log_archive_<timestamp>.tar.gz.
-
-
- To access the help menu of the script:
-
- ./log-collector.sh -h
-
-
\ No newline at end of file
diff --git a/doc/book-enea-nfv-access-getting-started/doc/net_config_options.xml b/doc/book-enea-nfv-access-getting-started/doc/net_config_options.xml
deleted file mode 100644
index dae5b36..0000000
--- a/doc/book-enea-nfv-access-getting-started/doc/net_config_options.xml
+++ /dev/null
@@ -1,886 +0,0 @@
-
-
- Network Configuration Options
-
- Various Advanced Network Configuration options can be done from Enea
- Edge Management GUI.
-
-
- Device Call Home Connection for Deployment behind NAT
-
- The Device Call Home option enables the initiation of the connection
- between the uCPE Device and the Enea Edge Management, from the uCPE
- device. The Device Call Home option is required when deploying a uCPE
- device behind NAT since the IP address of the uCPE device is hidden for
- the Enea Edge Management.
-
- Enable Device Call Home by marking the Device Call Home checkbox
- when registering the uCPE device in Enea Edge Management. When using this
- mechanism, the device will initiate a connection to the Enea Edge
- Management for NETCONF traffic (over SSH), while the Enea Edge Management
- waits for a device connection.
-
-
-
- uCPE Device Network Configuration
-
- The following describes the steps required for setting up the
- virtualization infrastructure, ensuring that a uCPE device has networking
- setup for virtualized service deployment. Networking is enabled by
- selecting physical interfaces to be used by virtualized networking and
- creating different types of bridges to enable VNF communication.
-
- The Zero Touch Provisioning mechanism is also touched upon, as
- alternative to manual configuration of the virtualization
- infrastructure.
-
-
- Configure DPDK
-
- DPDK is an important functionality for accelerating networking
- performance. The DPDK is enabled by default and should be utilized in
- most configurations.
-
- In use cases where CPU capacity is very limited, disabling DPDK
- can free up CPU capacity and overall performance can improve. Navigate
- to Configuration, then DPDK and deselect Enable
- DPDK to disable the DPDK.
-
-
- Disabling the DPDK cannot be done after other network
- configurations have been made.
-
-
- In Configuration, select
- DPDK where DPDK resources can also be
- configured such as:
-
-
-
- LCore Mask. Allocated cores
- for non-datapath OVS-DPDK threads (CPU core bitmask). Default:
- 0x2.
-
-
-
- PMD CPU Mask. Allocated cores
- for datapath processing (CPU core bitmask). Default: 0x4.
-
-
-
- Socket Memory. Hugepage
- memory allocated for DPDK. Default: 1494.
-
-
-
-
-
- Configure External Interfaces
-
- Once a management connection with the uCPE device has been
- established by using any of the supported methods, the virtualization
- networking infrastructure can be configured either manually or by using
- Zero Touch Provisioning.
-
- 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.
-
- To add an interface into the Enea Edge Management, select the uCPE
- device, then from the top toolbar select Configuration, then External Interfaces, Configuration, and click the Add button. 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 DPDK can be attached to an OVS-DPDK
- bridge.
-
-
- Make sure the Enable DPDK
- checkbox is selected by accessing Device, Configuration and choosing DPDK, otherwise no interface can be assigned
- as DPDK.
-
-
- To add a DPDK interface under the management system, set
- appropriate values for the following fields:
-
-
-
- Source: name of the physical interface.
-
-
-
- Networking-type: dpdk
-
-
-
- Dpdk-type: the kernel module that allows user space access
- to the physical interface. Either the vfio-pci
- (most commonly used type) or the igb_uio driver
- can be used.
-
-
-
-
-
- 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.
-
-
-
- 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.
-
- 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.
-
-
-
-
-
- Wan Interface Type
-
- WAN interfaces configured during the installation of the uCPE
- device are automatically added in the Enea Edge Management as type
- wan. The WAN interface used for management of the
- uCPE device is marked with the Management property
- set to True.
-
- If a WAN interface is to be assigned for use by a VNF, it must
- be changed into another interface type depending on the type of
- connection that will be used. The management WAN interface cannot be
- changed to a different type. It is automatically used when an In-band
- management bridge is created.
-
- How to Edit the Configuration of a Wan
- Interface
-
-
-
- To edit an interface configuration type from the Enea Edge
- Management, select the uCPE device, then from the top toolbar
- select the Configuration menu,
- then External Interfaces and
- Configuration. The already
- configured interfaces are displayed here, as seen in the figure
- above.
-
-
-
- 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:
-
-
- Editing an Interface
-
-
-
-
-
-
-
-
-
-
-
- When changing the address-assignment from
- static to DHCP, if any of the ip-address,
- netmask or gateway fields have
- invalid values a validation error will be triggered. These fields
- must be empty or have the valid values for their respective address
- assignment.
-
-
-
-
- Wap Interface Type
-
- Wireless Access Point (Wap) interfaces are used to create
- Wireless Access Points. Only interfaces with
- wap-capable capabilities can be added as WAP
- interfaces.
-
- How to edit the Configuration of a Wap
- Interface
-
-
-
- To edit an interface configuration from the Enea Edge
- Management, select the uCPE device, then from the top toolbar
- select the Configuration menu
- then External Interfaces and
- select Configuration. The already
- configured interfaces will be displayed here.
-
-
-
- In order to edit an already configured interface, (as in the
- example popup shown below, a WAP interface) double click on the
- desired one and a pop-up will appear. A different pop-up appears
- for each type of interface. From the Host
- Interface window, the following parameters are
- configurable:
-
-
-
- Country Code: the country code, a 2 letter
- ISO3166-alpha2 identifier.
-
-
-
- Wireless Band: 2.4 GHz or 5 GHz. Depending on the band
- selection, the correct Wireless Mode and
- Radio Channel must be provided.
-
-
-
-
- Editing an Interface
-
-
-
-
-
-
-
-
-
-
-
- Correct Country Code
- selection is mandatory. All configuration options are available in
- the Enea Edge Management GUI but only the Radio Settings that
- conform with the selected country's official regulatory laws will be
- applied when the Wireless AP is started on the uCPE Device.
-
-
-
-
- Manual Configuration
-
- For Manual Configuration of uCPE networking, select the uCPE
- device first, then access the Configuration menu, and choose External Interfaces, where a list of available
- network interfaces and their capabilities can be found.
-
- After networking interfaces have been added to the Enea Edge
- Management, the user can change the interface type (DPDK, SR-IOV,
- Standard, WAN, WAP).
-
-
- Configuration of External Interfaces
-
-
-
-
-
-
-
-
-
-
-
- Configuring Bridges
-
- After networking interfaces have been added to the Enea Edge
- Management, the user can create the necessary OVS bridges.
-
-
- OVS Bridges
-
-
-
-
-
-
-
-
- How to add OVS bridges in the Enea Edge
- Management
-
-
-
- Select the uCPE device.
-
-
-
- Select Configuration.
-
-
-
- Click OpenvSwitch.
-
-
-
- Select the Bridges option,
- then click Add.
-
-
-
-
- Depending on the settings found when accessing the Configuration menu and selecting DPDK, OVS bridges with or without DPDK support
- will be used on the uCPE device.
-
-
- There are three types of bridges which can be created, each one
- fulfiling a different role.
-
-
- 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.
-
- The solution provided by Enea for in-band management is based
- upon an OpenvSwitch bridge managing all traffic passing through the
- WAN physical port. Any standard or DPDK-assigned network interface can
- be used for the In-Band management bridge.
-
- 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
-
-
-
-
-
- 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.
-
- For this setup, three types of traffic will pass over the WAN
- physical interface:
-
-
-
- Device management. Part of
- the device configuration done by the Enea Edge Management.
-
-
-
- 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.
-
-
-
- To create a VNF In-Band Management bridge, the user must set
- values for the following fields:
-
-
-
- name: name of the bridge.
-
-
-
- ovs-bridge-type: vnfMgmt
-
-
-
- vnf-mgmt-address: select IPv4 as the type and fill in an
- internal IP address for the bridge interface that will be
- connected to the VNF management network, e.g 10.0.0.1.
-
-
-
-
- VNF management interfaces must be configured in same subnet as
- that used by the bridge interface connected to the VNF management
- network.
-
-
-
-
- Data-plane bridge
-
- 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.
-
-
-
- Allows for creation of Wireless Access
- Points. This bridge type does not need a 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.
-
-
-
- To create a Data-plane bridge, the user must set values for the
- following fields:
-
-
-
- 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.
-
-
-
-
-
-
-
- Zero Touch Provisioning - Creating an Offline Configuration
-
- Zero-Touch Provisioning (ZTP) refers to the process of when a device
- starts up for the first time and its initial configuration is pushed down
- by an external management system, so that it is setup for proper operation
- without additional manual intervention by an operator. ZTP is an
- alternative to Manual configuration.
-
- A variety of operations can occur as part of ZTP such as initial
- device setup, configuration of managed objects, etc. The goal is to set up
- a device to the maximum possible extent without forcing an operator to be
- physically present (initially) to manage the device.
-
- An offline configuration is usually prepared in advance for the Enea
- Edge Management to setup the virtualization infrastructure on the uCPE
- device, as soon as a device enrolls into the management system.
-
-
- Offline Configuration
-
- The Offline Configuration subsystem is used to pre-populate a
- configuration for a device that will be brought under management at a
- future point in time. When creating an offline configuration store a
- Device ID can be specified. This ID uniquely
- identifies the device to be initialized.
-
- Alternatively, a wildcard can be used in the Device
- ID field, which results in a configuration being pushed on all
- uCPE devices upon their initial connection towards the Enea Edge
- Management.
-
- If the offline configuration is not configured for a uCPE device,
- an alarm will be raised: Day-0 Config:ZTP:Major,
- which occurs when the uCPE device connects to the Enea Edge Management
- informing that the ZTP setup failed for the specific uCPE device.
-
- To create an offline configuration, select from the top toolbar
- the Applications menu, then Offline Config and choose Add. The following fields should be
- filled:
-
-
-
- Name: name of the device.
-
-
-
- Device type: Enea universal CPE.
-
-
-
- DeviceVersion:
-
-
-
- Config Set: uCPE Config
-
-
-
- Device ID: device ID or a wildcard(*).
-
-
-
- Device Grouping Tags: a tag to group devices. These tags match
- the customer tags provided during the installation of the
- device.
-
-
-
- The Name is user defined and can be set to any unique text string
- identifying the configuration. The Device Version will match the Enea
- Edge version of the uCPE device and the Device ID will be set to the
- previously set identifier of the uCPE device.
-
- When a device connects to the Enea Edge Management for the first
- time, it checks the device to see if it has been Zero Touch Provisioned
- (ZTP). If not, it looks for an offline configuration that matches these
- values, in the following order:
-
-
-
- The Device ID.
-
-
-
- The set of tags.
-
-
-
- A "*" for Device ID (wildcard).
-
-
-
- If a match is found, the offline configuration is sent to the
- device as part of Zero-Touch-Provisioning.
-
- After creating the Offline Config Store, access the device by
- selecting Applications, then offline config and clicking Config App, to provision it with the required
- initial configuration. This operation mirrors what happens during manual
- configuration described previously.
-
-
- The ZTP will only be triggered the first time a uCPE device
- connects to the Enea Edge Management. Just changing an offline
- configuration will not push the new changes to the device. If an
- offline configuration is changed after uCPE device registration, a
- factory reset can be executed to force a new ZTP to execute. Select
- the device, then access the Operations menu and select factory reset.
-
-
-
-
-
- Custom Scripts for Custom Networking Configurations
-
- The custom scripts feature allows users to execute user-defined
- scripts on the uCPE device at various times.This allows for more flexible
- and advanced configurations such as a LTE modem configuration, advanced
- network configurations or OVS flow rule programming at any time.
-
-
- Uploading Scripts
-
- The scripts need to be uploaded to the Enea Edge Management prior
- to use. When uploading scripts to the Enea Edge Management make sure to
- select the right script type.
-
- The following script types are supported:
-
-
-
- Once-before-startup. This script will only
- execute once after the system has rebooted, prior to processing any
- device configuration.
-
-
-
- Always-before-startup. This script will
- always execute after the system has rebooted, prior to processing
- any device configuration.
-
-
-
- Once-after-startup. The script will always
- execute after the system has rebooted, after all device
- configuration processes have completed.
-
-
-
- Always-after-startup. This script will
- always execute after all device configuration processes have
- completed after the system has rebooted.
-
-
-
-
- After a factory reset, any of the
- Once-before-* or Once-after-*
- scripts will be re-run as described above.
-
-
- Follow the instruction below to upload scripts:
-
-
-
- Access the Devices menu, then
- Custom Scripts and choose Configure.
-
-
-
- Select Upload to EMS.
-
-
-
- In the Script Type menu,
- select the type the uploaded script should have.
-
-
-
- Press Choose File to select
- the scripts needed, and then click Send.
-
-
-
-
-
- Removing Scripts
-
- Follow the instruction below to remove scripts:
-
-
-
- Access the Devices menu, then
- Custom Scripts and select Configure.
-
-
-
- Select the script you want to delete from the Uploaded Scripts tab and then click Delete, which will remove the script
- immediately from the Enea Edge Management.
-
-
-
-
-
- Configuring Script Location
-
- The location where the scripts are staged in the Enea Edge
- Management can be chanaged as described below:
-
-
-
- Access the Devices menu,
- choose Custom Scripts and select
- Configure.
-
-
-
- Select the Configuration tab
- and specify a new location to store the scripts.
-
-
- Change the script storage location only if you have many
- scripts which you would prefer to store on another partition,
- otherwise leave this configuration as is.
-
-
-
-
-
-
- Running the Scripts
-
- How to run Custom Scripts
-
-
-
- Access the Devices menu,
- choose Custom Scripts and select
- Apply Scripts.
-
-
-
- In the Script Config Screen
- pop up, select the devices from the device(s) chooser list on which
- to run the scripts. Press the >
- button to move the devices to the right side of the chooser, which
- is the list of devices that will execute the selected
- scripts.
-
-
-
- Select the scripts from the list under the device(s) chooser
- by pressing the + button.
-
-
-
- In the pop-up window, select the scripts from the list. If
- there are no scripts to select, then there is no script uploaded
- with that particular type. Upload the script(s) needed and try
- again.
-
-
-
- Check the Reboot devices
- checkbox if you want to reboot and execute the scripts at once and
- then select ok.
-
-
- The status of execution for the scripts can be seen by
- accessing Fault, opening the
- Events screen and filtering by
- device and/or the event name
- CustomScriptExecuted.
-
-
-
-
-
-
-
- Wireless Access Point
-
- The Wireless AP Screen from the Enea Edge Management Configuration
- menu allows users to configure a Wireless Access Point.
- A wap-capable interface and a LAN bridge must be added
- before doing the Wireless AP configuration. For more details see sections
- Wap interface Type and Data-plane bridge.
-
- The following parameters are configurable:
-
-
-
- SSID: the Wireless network name - any string with a max. length
- of 32 octets.
-
-
-
- Interface Name: the wap-capable external
- interface.
-
-
-
- Lan Bridge: the LAN bridge where wireless clients will be
- hosted.
-
-
-
- WAP Security Mode: open or
- wpa2Psk. When choosing wpa2Psk,
- a password and an encryption
- must be provided. The password can be any string
- with a minimum length of 8 and a maximum length of 63
- characters.
-
-
-
- DHCP Server: disabled or
- enabled. When enabled is
- selected, the range of IPs (IP Address Start -
- IP Address End), Netmask and
- Gateway values must be provided.
-
-
-
-
- Wireless AP
-
-
-
-
-
-
-
-
-
- Only a single Wireless AP is allowed on a physical interface. The
- validation of the wap-capable interface is done when
- adding the Wireless AP, so, in case of an error, the parameters of the
- wap-capable interface must be rechecked. This can be
- done by accessing the Configuration
- menu and selecting External
- Interfaces.
-
-
-
diff --git a/doc/book-enea-nfv-access-getting-started/doc/troubleshooting.xml b/doc/book-enea-nfv-access-getting-started/doc/troubleshooting.xml
deleted file mode 100644
index 4984a35..0000000
--- a/doc/book-enea-nfv-access-getting-started/doc/troubleshooting.xml
+++ /dev/null
@@ -1,226 +0,0 @@
-
-
- Troubleshooting and Recovery
-
- In all scenarios where possible, collect the logs for debugging. More
- information on log collecting can be found in Using the Log Collector in the
- Manual.
-
- The following is a small list of possible Enea Edge problems, and
- their solutions. If you encounter other issues or can't get Enea Edge to
- work successfully after consulting the information below, please use the
- Enea Support Team Form, available in the
- Manual
- downloaded with your release.
-
-
- Troubleshooting and Recovery
-
-
-
-
-
-
- Enea Edge Problem
-
- Solution
-
-
-
-
-
- A uCPE device fails to connect to the Enea Edge Management
- after installation.
-
- If the uCPE device is not able to connect to the Enea Edge
- Management after an installation, the Web-installer application is
- started automatically on the uCPE device to change the configuration
- via a web browser. Please see Booting the uCPE device and adding
- it to the Map in the
- Manual.
-
-
-
- The uCPE Device cannot boot after an upgrade.
-
-
-
- Perform a hardware reboot of the uCPE Device and select
- the previous Enea Edge Runtime image from the GRUB menu. This
- action assumes physical access to the uCPE device.
-
-
-
- Reinitiate the Upgrade procedure according to the steps
- in section uCPE device upgrades in the
-
- Manual.
-
-
-
-
-
- After a failed uCPE device upgrade the previous Enea Edge
- image (from the GRUB menu) does not boot.
-
- Reinstall Enea Edge on the uCPE device and redeploy the
- initial configuration and virtualized services, by following the
- steps in Installing Enea Edge - uCPE Device
- installation in the
- Manual.
-
-
-
- The Enea Edge Management upgrade fails and a working snapshot
- is available.
-
- If a working snapshot obtained during a previous Upgrade or
- Uninstall is available
- (ucpemanager-Backup-YYYYddMMHHmm.tar.gz):
-
-
- Cleanup the current upgrade attempt with:
-
- ./cleanup.sh /opt/ems
-
-
-
- Restore the previous installation as described in Restoring a previous
- Enea Edge Management installation in the
- Manual.
-
-
-
-
-
- The Enea Edge Management upgrade fails and no working
- snapshot is available, but a System Back-up file exists.
-
-
-
- Cleanup the current upgrade attempt with:
-
- ./cleanup.sh /opt/ems
-
-
-
- Perform an installation with the restore option of a
- previous Enea Edge Management configuration as described in
- Installation of the
- Enea Edge Management using a System Back-up in the
- Manual.
-
-
-
-
-
- The uCPE device is booted, the ssh connection is available
- but the device is not connected to the Enea Edge Management.
-
-
-
- Perform a hardware reboot on the uCPE device to
- reinitiate the connection mechanism.
-
-
-
- Use the Reconnect
- button from the Enea Edge Management's GUI.
-
-
-
- Connect to uCPE Device console and run the factory reset
- script:
-
- /usr/local/odm/bin/factory_reset.sh
-
-
-
- If the above actions do not work, reinstall and
- reconfigure the device using the steps provided in Installing Enea Edge - uCPE
- Device installation in the
- Manual.
-
-
-
-
-
- The SSH connection to the device cannot be
- established.
-
- Perform a hardware reboot on the uCPE device. If the problem
- is not fixed, reinstall and reconfigure the device using the steps
- provided in Installing Enea Edge - uCPE Device
- installation in the
- Manual.
-
-
-
- The VNF Service is not working as expected after
- reconfiguration (e.g. a VNF chain is malfunctioning).
-
-
-
- Undo all flows and/or configuration changes in order to
- move the system to a previously working configuration.
-
-
-
- Reboot the device by accessing Operations and then selecting Reboot from within the Enea Edge
- Management.
-
-
-
- If the above actions do not work, redeploy all services.
- This is done by cleaning up the existing configuration by
- accessing Operations, then
- selecting Factory Reset for a
- specific device and redeploying the VNF services.
-
-
-
-
-
-