diff options
Diffstat (limited to 'doc/book-enea-nfv-access-evalkit/doc')
-rw-r--r-- | doc/book-enea-nfv-access-evalkit/doc/appendix_1.xml | 35 | ||||
-rw-r--r-- | doc/book-enea-nfv-access-evalkit/doc/book.xml | 38 | ||||
-rw-r--r-- | doc/book-enea-nfv-access-evalkit/doc/eltf_params_updated.xml | 209 | ||||
-rw-r--r-- | doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_overview.png | bin | 0 -> 95022 bytes | |||
-rw-r--r-- | doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_setup.png | bin | 0 -> 79858 bytes | |||
-rw-r--r-- | doc/book-enea-nfv-access-evalkit/doc/introduction.xml | 76 | ||||
-rw-r--r-- | doc/book-enea-nfv-access-evalkit/doc/prerequisites.xml | 113 | ||||
-rw-r--r-- | doc/book-enea-nfv-access-evalkit/doc/run_example_uc_auto_fm.xml | 38 | ||||
-rw-r--r-- | doc/book-enea-nfv-access-evalkit/doc/sdwan_arch.xml | 1439 | ||||
-rw-r--r-- | doc/book-enea-nfv-access-evalkit/doc/setup_cleanup.xml | 61 | ||||
-rw-r--r-- | doc/book-enea-nfv-access-evalkit/doc/validating_setup.xml | 36 |
11 files changed, 2045 insertions, 0 deletions
diff --git a/doc/book-enea-nfv-access-evalkit/doc/appendix_1.xml b/doc/book-enea-nfv-access-evalkit/doc/appendix_1.xml new file mode 100644 index 0000000..0895bcb --- /dev/null +++ b/doc/book-enea-nfv-access-evalkit/doc/appendix_1.xml | |||
@@ -0,0 +1,35 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <appendix id="appendix_1"> | ||
3 | <title>How to create a flexiwan cloud-init iso image (day-0 | ||
4 | configuration)</title> | ||
5 | |||
6 | <para>Prerequisites:</para> | ||
7 | |||
8 | <itemizedlist> | ||
9 | <listitem> | ||
10 | <para>Development host with a Linux shell.</para> | ||
11 | </listitem> | ||
12 | |||
13 | <listitem> | ||
14 | <para>The <literal>Cloud-localds</literal> tool installed.</para> | ||
15 | </listitem> | ||
16 | </itemizedlist> | ||
17 | |||
18 | <note> | ||
19 | <para>Contact the flexiWAN VNF provider to get access to their controller | ||
20 | and a valid token.</para> | ||
21 | </note> | ||
22 | |||
23 | <para>Unpack the | ||
24 | <filename>flexiwan/flexiwan-cloud-init-example.tar.gz</filename> and check | ||
25 | the README file for more details: <programlisting>tar -zxf flexiwant-cloud-init-example.tar.gz | ||
26 | cd flexiwan/cloud-init-example/</programlisting></para> | ||
27 | |||
28 | <para>To generate the cloud-init iso image:</para> | ||
29 | |||
30 | <programlisting>> create_flexiwan_cloudinit.sh <token> | ||
31 | > create_flexiwan_cloudinit.sh $cat token.txt</programlisting> | ||
32 | |||
33 | <para>The <filename>flexiWAN_cloudinit.iso</filename> file can be used to | ||
34 | instantiate the flexiWAN VNF on NFV Access.</para> | ||
35 | </appendix> \ No newline at end of file | ||
diff --git a/doc/book-enea-nfv-access-evalkit/doc/book.xml b/doc/book-enea-nfv-access-evalkit/doc/book.xml new file mode 100644 index 0000000..e78cbf9 --- /dev/null +++ b/doc/book-enea-nfv-access-evalkit/doc/book.xml | |||
@@ -0,0 +1,38 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" | ||
3 | "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [ | ||
4 | <!ENTITY % local.common.attrib "xml:base CDATA #IMPLIED"> | ||
5 | ]> | ||
6 | <book id="book_enea_nfv_access_evalkit"> | ||
7 | <title><trademark class="registered">Enea</trademark> NFV Access EvalKit Manual</title> | ||
8 | |||
9 | <subtitle>Release Version <xi:include href="eltf_params_updated.xml" | ||
10 | xmlns:xi="http://www.w3.org/2001/XInclude" | ||
11 | xpointer="element(EneaLinux_REL_VER/1)" /></subtitle> | ||
12 | |||
13 | <!-- OLINKDBPATH_USED_BY_XMLMIND ../../s_docbuild/olinkdb --> | ||
14 | |||
15 | <xi:include href="../../s_docbuild/template/docsrc_common/bookinfo_userdoc.xml" | ||
16 | xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||
17 | |||
18 | <xi:include href="introduction.xml" | ||
19 | xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||
20 | |||
21 | <xi:include href="prerequisites.xml" | ||
22 | xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||
23 | |||
24 | <xi:include href="sdwan_arch.xml" | ||
25 | xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||
26 | |||
27 | <xi:include href="validating_setup.xml" | ||
28 | xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||
29 | |||
30 | <xi:include href="setup_cleanup.xml" | ||
31 | xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||
32 | |||
33 | <xi:include href="run_example_uc_auto_fm.xml" | ||
34 | xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||
35 | |||
36 | <xi:include href="appendix_1.xml" | ||
37 | xmlns:xi="http://www.w3.org/2001/XInclude" /> | ||
38 | </book> | ||
diff --git a/doc/book-enea-nfv-access-evalkit/doc/eltf_params_updated.xml b/doc/book-enea-nfv-access-evalkit/doc/eltf_params_updated.xml new file mode 100644 index 0000000..1a640a3 --- /dev/null +++ b/doc/book-enea-nfv-access-evalkit/doc/eltf_params_updated.xml | |||
@@ -0,0 +1,209 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" | ||
3 | "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> | ||
4 | <section id="eltf_created_params"> | ||
5 | <title>File with Parameters in the Book Auto-updated by ELFT</title> | ||
6 | |||
7 | <note> | ||
8 | <para>See the <emphasis | ||
9 | role="bold">eltf_params_updated_template_howto_use.txt</emphasis> text | ||
10 | file for description of how to create the final <emphasis | ||
11 | role="bold">eltf_params_updated.xml</emphasis> from this template and for | ||
12 | all <emphasis role="bold">REQUIREMENTS</emphasis>. Use the command | ||
13 | "<emphasis role="bold">make eltf</emphasis>" to extract a full list of all | ||
14 | ELTF variables, which always begins with ELTF_ and don't only rely on the | ||
15 | howto text file list! The plan is that ELTF will auto-update this when | ||
16 | needed.</para> | ||
17 | </note> | ||
18 | |||
19 | <section id="host_prereq"> | ||
20 | <title>Common Parameters</title> | ||
21 | |||
22 | <bridgehead>A programlisting, ID | ||
23 | "eltf-prereq-apt-get-commands-host"</bridgehead> | ||
24 | |||
25 | <para id="eltf-prereq-apt-get-commands-host"><programlisting># Host Ubuntu 16.04 LTS 64bit | ||
26 | sudo apt-get -y update | ||
27 | sudo apt-get -y install sed wget subversion git-core coreutils unzip texi2html \ | ||
28 | texinfo libsdl1.2-dev docbook-utils fop gawk python-pysqlite2 diffstat \ | ||
29 | make gcc build-essential xsltproc g++ desktop-file-utils chrpath \ | ||
30 | libgl1-mesa-dev libglu1-mesa-dev autoconf automake groff libtool xterm \ | ||
31 | libxml-parser-perl</programlisting></para> | ||
32 | |||
33 | <bridgehead>A programlisting, ID | ||
34 | "eltf-getting-repo-install-command"</bridgehead> | ||
35 | |||
36 | <para id="eltf-getting-repo-install-command"><programlisting>mkdir -p ~/bin | ||
37 | curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo | ||
38 | chmod a+x ~/bin/repo | ||
39 | export PATH=~/bin:$PATH</programlisting></para> | ||
40 | |||
41 | <bridgehead>Several phrase elements, various IDs. Ensure EL_REL_VER is | ||
42 | correct also compared to the "previous" REL VER in pardoc-distro.xml | ||
43 | "prev_baseline".</bridgehead> | ||
44 | |||
45 | <para id="EneaLinux_REL_VER"><phrase>2.2.1</phrase></para> | ||
46 | |||
47 | <para id="Yocto_VER"><phrase>2.4</phrase></para> | ||
48 | |||
49 | <para id="Yocto_NAME"><phrase>rocko</phrase></para> | ||
50 | |||
51 | <para id="ULINK_YOCTO_PROJECT_DOWNLOAD"><ulink | ||
52 | url="http://www.yoctoproject.org/downloads">http://www.yoctoproject.org/downloads</ulink></para> | ||
53 | |||
54 | <para id="ULINK_ENEA_LINUX_URL"><ulink | ||
55 | url="https://linux.enea.com/6">https://linux.enea.com/6</ulink></para> | ||
56 | |||
57 | <bridgehead>A programlisting, ID "eltf-repo-cloning-enea-linux". Use | ||
58 | $MACHINE/default.xml as parameter, where MACHINE is one of the target | ||
59 | directory names in the manifest.</bridgehead> | ||
60 | |||
61 | <para id="eltf-repo-cloning-enea-linux"><programlisting>mkdir enea-linux | ||
62 | cd enea-linux | ||
63 | repo init -u git@git.enea.com:linux/manifests/el_manifests-virtualization.git \ | ||
64 | -b refs/tags/EL6 -m $MACHINE/default.xml | ||
65 | repo sync</programlisting></para> | ||
66 | |||
67 | <bridgehead>A table with ONE row, only the row with ID | ||
68 | "eltf-eclipse-version-row" is included in the book. MANUALLY in book, set | ||
69 | condition hidden if eclipse is not in the release. Do this both in | ||
70 | template.xml and updated.xml.</bridgehead> | ||
71 | |||
72 | <informaltable> | ||
73 | <tgroup cols="1"> | ||
74 | <tbody> | ||
75 | <row condition="hidden" id="eltf-eclipse-version-row"> | ||
76 | <entry>Eclipse version 4.3 (Mars) plus command line development | ||
77 | tools are included in this Enea NFV Access release.</entry> | ||
78 | </row> | ||
79 | </tbody> | ||
80 | </tgroup> | ||
81 | </informaltable> | ||
82 | |||
83 | <bridgehead>Below is one big section with title "Supported Processor with | ||
84 | Parameters". The entire section is included completely in the book via ID | ||
85 | "eltf-target-tables-section" and shall be LAST in the template. The | ||
86 | template contains ONE target subsection. COPY/APPEND it, if multiple | ||
87 | targets exist in the release and optionally add rows with additional | ||
88 | target parameters in each target subsection table.</bridgehead> | ||
89 | </section> | ||
90 | |||
91 | <section id="eltf-target-tables-section"> | ||
92 | <title>Supported Reference Processor with Parameters</title> | ||
93 | |||
94 | <para>The table(s) below describes the processors supported in this Enea | ||
95 | NFV Access release.</para> | ||
96 | |||
97 | <table> | ||
98 | <title>Processor Information Intel Xeon D-1500</title> | ||
99 | |||
100 | <tgroup cols="2"> | ||
101 | <colspec align="center" /> | ||
102 | |||
103 | <thead> | ||
104 | <row> | ||
105 | <entry align="center">Component</entry> | ||
106 | |||
107 | <entry align="center">Description</entry> | ||
108 | </row> | ||
109 | </thead> | ||
110 | |||
111 | <tbody> | ||
112 | <row> | ||
113 | <entry align="left">Processor official name</entry> | ||
114 | |||
115 | <entry>Intel Xeon D-1500</entry> | ||
116 | </row> | ||
117 | |||
118 | <row> | ||
119 | <entry align="left">Architecture and Description</entry> | ||
120 | |||
121 | <entry>x86-64</entry> | ||
122 | </row> | ||
123 | |||
124 | <row> | ||
125 | <entry align="left">Link to processor datasheet</entry> | ||
126 | |||
127 | <entry><ulink | ||
128 | url="https://www.intel.com/content/www/us/en/processors/xeon/xeon-d-1500-datasheet-vol-1.html">Intel's | ||
129 | datasheet</ulink></entry> | ||
130 | </row> | ||
131 | |||
132 | <row> | ||
133 | <entry align="left">GCC version</entry> | ||
134 | |||
135 | <entry>7.3</entry> | ||
136 | </row> | ||
137 | |||
138 | <row> | ||
139 | <entry align="left">Linux Kernel Version</entry> | ||
140 | |||
141 | <entry>4.14</entry> | ||
142 | </row> | ||
143 | |||
144 | <row condition="hidden"> | ||
145 | <entry align="left">Supported Drivers</entry> | ||
146 | |||
147 | <entry>Ethernet, RTC, UART</entry> | ||
148 | </row> | ||
149 | </tbody> | ||
150 | </tgroup> | ||
151 | </table> | ||
152 | |||
153 | <table> | ||
154 | <title>Processor Information Intel Atom C3000</title> | ||
155 | |||
156 | <tgroup cols="2"> | ||
157 | <colspec align="center" /> | ||
158 | |||
159 | <thead> | ||
160 | <row> | ||
161 | <entry align="center">Component</entry> | ||
162 | |||
163 | <entry align="center">Description</entry> | ||
164 | </row> | ||
165 | </thead> | ||
166 | |||
167 | <tbody> | ||
168 | <row> | ||
169 | <entry align="left">Processor official name</entry> | ||
170 | |||
171 | <entry>Intel Atom C3000</entry> | ||
172 | </row> | ||
173 | |||
174 | <row> | ||
175 | <entry align="left">Architecture and Description</entry> | ||
176 | |||
177 | <entry>x86-64</entry> | ||
178 | </row> | ||
179 | |||
180 | <row> | ||
181 | <entry align="left">Link to the processor datasheet</entry> | ||
182 | |||
183 | <entry><ulink | ||
184 | url="https://www.intel.com/content/www/us/en/products/docs/processors/atom/c-series/c3000-family-datasheet.html">Intel's | ||
185 | datasheet</ulink></entry> | ||
186 | </row> | ||
187 | |||
188 | <row> | ||
189 | <entry align="left">GCC version</entry> | ||
190 | |||
191 | <entry>7.3</entry> | ||
192 | </row> | ||
193 | |||
194 | <row> | ||
195 | <entry align="left">Linux Kernel Version</entry> | ||
196 | |||
197 | <entry>4.14</entry> | ||
198 | </row> | ||
199 | |||
200 | <row condition="hidden"> | ||
201 | <entry align="left">Supported Drivers</entry> | ||
202 | |||
203 | <entry>Ethernet, RTC, UART</entry> | ||
204 | </row> | ||
205 | </tbody> | ||
206 | </tgroup> | ||
207 | </table> | ||
208 | </section> | ||
209 | </section> | ||
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 new file mode 100644 index 0000000..977de0f --- /dev/null +++ b/doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_overview.png | |||
Binary files 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 new file mode 100644 index 0000000..feb18a3 --- /dev/null +++ b/doc/book-enea-nfv-access-evalkit/doc/images/br_to_br_conn_setup.png | |||
Binary files differ | |||
diff --git a/doc/book-enea-nfv-access-evalkit/doc/introduction.xml b/doc/book-enea-nfv-access-evalkit/doc/introduction.xml new file mode 100644 index 0000000..7b92bcf --- /dev/null +++ b/doc/book-enea-nfv-access-evalkit/doc/introduction.xml | |||
@@ -0,0 +1,76 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <chapter id="intro_evalkit221"> | ||
3 | <title>Introduction</title> | ||
4 | |||
5 | <para>The NFV Access EvalKit offered by Enea contains software that can be | ||
6 | used to deploy an SD-WAN setup. The branch-to-branch setup uses two | ||
7 | opensource based VNFs: flexiWAN and pfSense. These VNFs are provided as | ||
8 | examples and the configuration used only works on the documented | ||
9 | setup.</para> | ||
10 | |||
11 | <para>Enea NFV Access for the universal Customer Premise Equipment (uCPE) is | ||
12 | a virtualization and management platform, which allows end-users to | ||
13 | introduce, instantiate, and run third-party VNFs onto their systems.</para> | ||
14 | |||
15 | <para>The solution is comprised of two major components working in close | ||
16 | cooperation:</para> | ||
17 | |||
18 | <itemizedlist> | ||
19 | <listitem> | ||
20 | <para>The Enea NFV Access Run-Time Platform, which acts as the host for | ||
21 | Virtualized Network Functions (VNFs) and provides management over | ||
22 | NETCONF.</para> | ||
23 | </listitem> | ||
24 | |||
25 | <listitem> | ||
26 | <para>The Enea uCPE Manager, a solution that runs on an external server, | ||
27 | providing VNF Management functionality and managing large numbers of | ||
28 | uCPEs.</para> | ||
29 | </listitem> | ||
30 | </itemizedlist> | ||
31 | |||
32 | <para>The current Enea NFV Access solution provides a working and deployable | ||
33 | configuration as an example for branch-to-branch connection setup using the | ||
34 | flexiWAN and pfSense VNFs service chained together on a uCPE device.</para> | ||
35 | |||
36 | <para>This document will present all information required to replicate the | ||
37 | use case described in the user's environment. The first part of this manual | ||
38 | uses the GUI mode of the uCPE Manager to detail the steps in order to | ||
39 | reproduce the use cases, while the chapters thereafter use the automation | ||
40 | framework.</para> | ||
41 | |||
42 | <note> | ||
43 | <para>All VNF configurations should be seen as example configurations | ||
44 | working in Enea internal lab and the user must update these files with the | ||
45 | configuration data needed according to his network setup. Particularities | ||
46 | are described in Appendix A.</para> | ||
47 | |||
48 | <para>This document assumes the user is familiar with Enea NFV Access and | ||
49 | has read the Enea NFV Access Getting Started manual before continuing with | ||
50 | the following.</para> | ||
51 | </note> | ||
52 | |||
53 | <section id="def_acro_evalkit221"> | ||
54 | <title>Definitions and Acronyms</title> | ||
55 | |||
56 | <section> | ||
57 | <title>uCPE Manager</title> | ||
58 | |||
59 | <para>The Enea uCPE Manager is an EMS/NMS platform providing VNF | ||
60 | Management capabilities for NFV Access devices. The uCPE Manager can be | ||
61 | deployed on a Linux (CentOS) based physical or virtual server.</para> | ||
62 | </section> | ||
63 | |||
64 | <section> | ||
65 | <title>Automation Framework</title> | ||
66 | |||
67 | <para>The Automation Framework consists of a set of tooling and a | ||
68 | collection of Python based scripts that can be used to automate the | ||
69 | process of onboarding a VNF with all of the required configuration for | ||
70 | day zero deployment at scale.</para> | ||
71 | |||
72 | <para>This tooling calls the auto generated REST API that's exposed on | ||
73 | the uCPE Manager as a north bound interface.</para> | ||
74 | </section> | ||
75 | </section> | ||
76 | </chapter> \ No newline at end of file | ||
diff --git a/doc/book-enea-nfv-access-evalkit/doc/prerequisites.xml b/doc/book-enea-nfv-access-evalkit/doc/prerequisites.xml new file mode 100644 index 0000000..943e1ef --- /dev/null +++ b/doc/book-enea-nfv-access-evalkit/doc/prerequisites.xml | |||
@@ -0,0 +1,113 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <chapter id="prereq_evalkit221"> | ||
3 | <title>Prerequisites</title> | ||
4 | |||
5 | <section id="prereq_table"> | ||
6 | <title>Prerequisites</title> | ||
7 | |||
8 | <table> | ||
9 | <title>Required Elements</title> | ||
10 | |||
11 | <tgroup cols="2"> | ||
12 | <colspec align="left" /> | ||
13 | |||
14 | <thead> | ||
15 | <row> | ||
16 | <entry align="center">Prerequisites</entry> | ||
17 | |||
18 | <entry align="center">Observations</entry> | ||
19 | </row> | ||
20 | </thead> | ||
21 | |||
22 | <tbody> | ||
23 | <row> | ||
24 | <entry>Two uCPE whitebox devices containing:<itemizedlist> | ||
25 | <listitem> | ||
26 | <para>Processor: Intel xeon-D/atom-C3000 with min. 4 | ||
27 | CPUs.</para> | ||
28 | </listitem> | ||
29 | |||
30 | <listitem> | ||
31 | <para>Min. 2 network interfaces.</para> | ||
32 | </listitem> | ||
33 | |||
34 | <listitem> | ||
35 | <para>Min. 10 GB SATA storage.</para> | ||
36 | </listitem> | ||
37 | |||
38 | <listitem> | ||
39 | <para>Min 8 GB RAM.</para> | ||
40 | </listitem> | ||
41 | </itemizedlist></entry> | ||
42 | |||
43 | <entry><itemizedlist> | ||
44 | <listitem> | ||
45 | <para>One network interface connected to WAN.</para> | ||
46 | </listitem> | ||
47 | |||
48 | <listitem> | ||
49 | <para>One network interface to be used for LAN.</para> | ||
50 | </listitem> | ||
51 | |||
52 | <listitem> | ||
53 | <para>NFV Access installed on both uCPE devices. Please see | ||
54 | Enea NFV Access Getting Started Manual, chapter "Enea NFV | ||
55 | Access Installer"<remark>make this into an olink</remark> | ||
56 | for more details.</para> | ||
57 | </listitem> | ||
58 | </itemizedlist></entry> | ||
59 | </row> | ||
60 | |||
61 | <row> | ||
62 | <entry>Management machine - Linux based (CentOS)</entry> | ||
63 | |||
64 | <entry><itemizedlist> | ||
65 | <listitem> | ||
66 | <para>The uCPE Manager is installed on this host or virtual | ||
67 | machine. Pease see the <emphasis>Enea NFV Access Getting | ||
68 | Started</emphasis> Manual, chapter "Getting Started with | ||
69 | Enea uCPE Manager" for more details <remark>make this into | ||
70 | an olink</remark>.</para> | ||
71 | </listitem> | ||
72 | |||
73 | <listitem> | ||
74 | <para>The uCPE Manager must have access to the uCPE | ||
75 | device.</para> | ||
76 | </listitem> | ||
77 | |||
78 | <listitem> | ||
79 | <para>A web browser will access the management interface of | ||
80 | the VNFs. Management interfaces of the VNF can be accessed | ||
81 | from any machine connected on the same network with the uCPE | ||
82 | device.</para> | ||
83 | </listitem> | ||
84 | </itemizedlist></entry> | ||
85 | </row> | ||
86 | </tbody> | ||
87 | </tgroup> | ||
88 | </table> | ||
89 | </section> | ||
90 | |||
91 | <section id="rel_struc_evalkit221"> | ||
92 | <title>Release structure</title> | ||
93 | |||
94 | <programlisting>|----enea-nfv-access-atom-c3000-20191210210825.hddimg | ||
95 | |----ea-nfv-access-xeon-d-20191210210913.hddimg | ||
96 | |----nfvaccess2.2.1_af-th.zip | ||
97 | |----ucpeManager_1.0.1_b3-CentOS.tar.gz | ||
98 | |----doc | ||
99 | |----VNFs | ||
100 | |----EneaVNF | ||
101 | |----enea-nfv-access-vnf-qemux86-64.wic.qcow2 | ||
102 | |----flexiWAN | ||
103 | |----flexiWAN_cloudinit.iso | ||
104 | |----flexiWAN.qcow2 | ||
105 | |----flexiwant-cloud-init-example.tar.gz | ||
106 | |----pfSense | ||
107 | |----pfsense_192_168_1_1.iso | ||
108 | |----pfsense_192_168_2_1.iso | ||
109 | |----pfsense_config_192_168_1_1.xml | ||
110 | |----pfsense_config_192_168_2_1.xml | ||
111 | |----pfSense.qcow2</programlisting> | ||
112 | </section> | ||
113 | </chapter> \ No newline at end of file | ||
diff --git a/doc/book-enea-nfv-access-evalkit/doc/run_example_uc_auto_fm.xml b/doc/book-enea-nfv-access-evalkit/doc/run_example_uc_auto_fm.xml new file mode 100644 index 0000000..725e4e0 --- /dev/null +++ b/doc/book-enea-nfv-access-evalkit/doc/run_example_uc_auto_fm.xml | |||
@@ -0,0 +1,38 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <chapter id="run_example_uc_auto_fm"> | ||
3 | <title>Running Example Use-cases from the Automation Framework</title> | ||
4 | |||
5 | <para>In order to run example use-cases from the Automation Framework, | ||
6 | offline configurations need to be added for both uCPE devices and for the | ||
7 | VNFs to be onboarded.</para> | ||
8 | |||
9 | <note> | ||
10 | <para>All tests are just examples. In order to run on user specific | ||
11 | devices they need to be updated accordingly. Please check the Enea NFV | ||
12 | Access System Test Specification manual for more details.</para> | ||
13 | </note> | ||
14 | |||
15 | <programlisting>> python unittestSuite.py -u admin -p admin -H 172.24.3.109 \ | ||
16 | -o ucpem -s EvalKit_addOfflineConfig_and_onBoardVNFs.json -d \ | ||
17 | "Set - offline config for uCPE1 and uCPE2" | ||
18 | |||
19 | #add device1 | ||
20 | > python unittestSuite.py -u admin -p admin -H 172.24.3.109 -n fwa_1012vc-1 \ | ||
21 | -s EvalKit_Deploy1.json -d "Add taget1 and instantiate VNFs" | ||
22 | |||
23 | #add device2 | ||
24 | > python unittestSuite.py -u admin -p admin -H 172.24.3.109 -n intelc3850-1 \ | ||
25 | -s EvalKit_Deploy2.json -d "Add taget2 and instantiate VNFs"</programlisting> | ||
26 | |||
27 | <para>Once done, the device configurations need to be cleaned up:</para> | ||
28 | |||
29 | <programlisting>> python unittestSuite.py -u admin -p admin -H 172.24.3.109 -n fwa_1012vc-1 \ | ||
30 | -s EvalKit_Cleanup1.json -d "Cleanup config on taget1" | ||
31 | |||
32 | > python unittestSuite.py -u admin -p admin -H 172.24.3.109 -n intelc3850-1 \ | ||
33 | -s EvalKit_Cleanup2.json -d "Cleanup config on taget2" | ||
34 | |||
35 | > python unittestSuite.py -u admin -p admin -H 172.24.3.109 -o ucpem -s \ | ||
36 | EvalKit_CleanupZTP_and_offboardVNFs.json -d \ | ||
37 | "Cleanup offline configuration and OffBoard VNFs"</programlisting> | ||
38 | </chapter> \ No newline at end of file | ||
diff --git a/doc/book-enea-nfv-access-evalkit/doc/sdwan_arch.xml b/doc/book-enea-nfv-access-evalkit/doc/sdwan_arch.xml new file mode 100644 index 0000000..4fcb6df --- /dev/null +++ b/doc/book-enea-nfv-access-evalkit/doc/sdwan_arch.xml | |||
@@ -0,0 +1,1439 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <chapter id="sdwan_arch_evalkit"> | ||
3 | <title>SD-WAN Branch to Branch Connection</title> | ||
4 | |||
5 | <para>Software-Defined Wide Area Networking (SD-WAN), provides the benefits | ||
6 | of software-defined networking (SDN) technology to traditionally | ||
7 | hardware-based networking. It is an overlay architecture providing a | ||
8 | networking foundation that is much easier to manage than legacy WANs, | ||
9 | essentially moving the control layer to the cloud and in the process, | ||
10 | centralizing and simplifying network management. This overlay design | ||
11 | abstracts software from hardware, enabling network virtualization and making | ||
12 | the network more elastic.</para> | ||
13 | |||
14 | <para>The setup detailed in this chapter covers all the steps required to | ||
15 | create a connection between two branch offices. On each site a uCPE device | ||
16 | is installed and connected to a WAN network. NFV Access should be installed | ||
17 | on each uCPE device, and flexiWAN and pfSense VNFs will be instantiated on | ||
18 | each site.</para> | ||
19 | |||
20 | <para>The flexiWAN VNF will create the tunnel between the two branches while | ||
21 | the pfSense VNF (connected in the service chain), will cover the | ||
22 | communication with LAN on each branch. The setup will be configured from the | ||
23 | uCPE Manager GUI.</para> | ||
24 | |||
25 | <figure> | ||
26 | <title>Branch to Branch Connection Overview</title> | ||
27 | |||
28 | <mediaobject> | ||
29 | <imageobject> | ||
30 | <imagedata align="center" contentwidth="600" | ||
31 | fileref="images/br_to_br_conn_setup.png" /> | ||
32 | </imageobject> | ||
33 | </mediaobject> | ||
34 | </figure> | ||
35 | |||
36 | <para>The figure above represents the uCPE configuration of one of the | ||
37 | branches. The second uCPE device (site2) will be configured in a similar | ||
38 | way, described in the following sections.</para> | ||
39 | |||
40 | <para>Since there is only one physical network interface connected to WAN, | ||
41 | the configuration allows for multiple types of traffic to pass over this | ||
42 | interface. The <literal>ibm_br</literal> bridge is the main bridge that | ||
43 | connects the physical network interface to the virtual | ||
44 | infrastructure.</para> | ||
45 | |||
46 | <para>The Data-Path represents the traffic that passes over the physical | ||
47 | interface between the in-band management bridge (<literal>ibm_br</literal>), | ||
48 | the flexiWAN VNF, the service chain bridge (<literal>sfc_br</literal>), the | ||
49 | pfSense VNF, and the <literal>lan_br</literal> bridge to finally reach the | ||
50 | LAN.</para> | ||
51 | |||
52 | <para>The VNF management interface for the pfSense VNF can be accessed from | ||
53 | WAN using a web browser. VNF management for flexiWAN is done from a | ||
54 | centralized management location where the user needs an account in order to | ||
55 | have access. Please contact the flexiWAN VNF provider before beginning to | ||
56 | set up the configuration.</para> | ||
57 | |||
58 | <para>For infrastructure configuration of each uCPE device Zero Touch | ||
59 | Provisioning (ZTP) will be used. This is a feature that allows the user to | ||
60 | create an offline configuration before starting and connecting a uCPE device | ||
61 | to the uCPE Manager. NFV Access allows a user to preconfigure interfaces and | ||
62 | bridges using ZTP so that, all that is left to do in order to have a full | ||
63 | setup running correctly after adding uCPE devices, is simply instantiation | ||
64 | of the VNFs on the designated devices.</para> | ||
65 | |||
66 | <section id="prelim_setup"> | ||
67 | <title>Preliminary Setup</title> | ||
68 | |||
69 | <orderedlist> | ||
70 | <listitem> | ||
71 | <para>Connect each uCPE device to the network/Internet using one | ||
72 | physical interface as the designated WAN access interface.</para> | ||
73 | |||
74 | <note> | ||
75 | <para>The uCPE device must have Internet access beforehand.</para> | ||
76 | </note> | ||
77 | </listitem> | ||
78 | |||
79 | <listitem> | ||
80 | <para>Install NFV Access on the uCPE devices. See the <remark>make | ||
81 | this into an olink</remark> Enea NFV Access Getting Started manual, | ||
82 | chapter Getting Started with the Enea NFV Access, for more | ||
83 | details.</para> | ||
84 | </listitem> | ||
85 | |||
86 | <listitem> | ||
87 | <para>Install the uCPE Manager on the CentOS host or VM. See the | ||
88 | <remark>make this into an olink</remark> Enea NFV Access Getting | ||
89 | Started manual, chapter Getting Started with Enea uCPE Manager, for | ||
90 | more details.</para> | ||
91 | |||
92 | <note> | ||
93 | <para>The uCPE Manager host machine must be connected to the network | ||
94 | so all uCPE devices can access it.</para> | ||
95 | </note> | ||
96 | </listitem> | ||
97 | |||
98 | <listitem> | ||
99 | <para>Connect to the uCPE Manager: <literal>https://<uCPE Manager | ||
100 | IP></literal></para> | ||
101 | </listitem> | ||
102 | </orderedlist> | ||
103 | </section> | ||
104 | |||
105 | <section id="ucpe_mg_evalkit221"> | ||
106 | <title>The uCPE Manager</title> | ||
107 | |||
108 | <para>Log into the uCPE Manager using the default credentials, | ||
109 | username:admin and password: admin.</para> | ||
110 | |||
111 | <para>Zero Touch Provisioning (ZTP) will be used to preconfigure the | ||
112 | infrastructure in the uCPE Manager for each device. The interface and | ||
113 | bridge configurations are pushed onto each uCPE device when | ||
114 | connected.</para> | ||
115 | |||
116 | <para>Onboarding is the process of registering VNFs into the uCPE Manager | ||
117 | after devices are configured. The flexiWAN and pfSense VNFs are used along | ||
118 | with example configuration data.</para> | ||
119 | |||
120 | <section id="onboard_flexiwan_vnf"> | ||
121 | <title>Onboarding the FlexiWAN VNF</title> | ||
122 | |||
123 | <para>Add a VNF by accessing the <literal>VNF</literal> menu from the | ||
124 | top toolbar then <literal>Descriptors</literal> -> | ||
125 | <literal>On-board</literal> -> <literal>VM Image</literal>.</para> | ||
126 | |||
127 | <para>Use the following values to fill the required fields:</para> | ||
128 | |||
129 | <table> | ||
130 | <tgroup cols="2"> | ||
131 | <tbody> | ||
132 | <row> | ||
133 | <entry>VM image file</entry> | ||
134 | |||
135 | <entry> | ||
136 | <literal>flexiWAN.qcow2</literal> | ||
137 | </entry> | ||
138 | </row> | ||
139 | |||
140 | <row> | ||
141 | <entry>Image format</entry> | ||
142 | |||
143 | <entry>QCOW2</entry> | ||
144 | </row> | ||
145 | |||
146 | <row> | ||
147 | <entry>VNF Type Name</entry> | ||
148 | |||
149 | <entry>flexiWAN</entry> | ||
150 | </row> | ||
151 | |||
152 | <row> | ||
153 | <entry>Description</entry> | ||
154 | |||
155 | <entry>Flexiwan VNF</entry> | ||
156 | </row> | ||
157 | |||
158 | <row> | ||
159 | <entry>Version</entry> | ||
160 | |||
161 | <entry>1.0</entry> | ||
162 | </row> | ||
163 | |||
164 | <row> | ||
165 | <entry>Memory in MB</entry> | ||
166 | |||
167 | <entry>4096. More memory can be allocated if required.</entry> | ||
168 | </row> | ||
169 | |||
170 | <row> | ||
171 | <entry>Num of CPUs</entry> | ||
172 | |||
173 | <entry>2. More CPUs can be reserved if required and | ||
174 | available.</entry> | ||
175 | </row> | ||
176 | |||
177 | <row> | ||
178 | <entry>Interfaces to add:</entry> | ||
179 | |||
180 | <entry>wan and lan</entry> | ||
181 | </row> | ||
182 | |||
183 | <row> | ||
184 | <entry>Cloud Init -> Cloud-Init Datasource</entry> | ||
185 | |||
186 | <entry>ISO</entry> | ||
187 | </row> | ||
188 | |||
189 | <row> | ||
190 | <entry>Cloud Init -> Cloud-Init Disk Type</entry> | ||
191 | |||
192 | <entry>cdrom</entry> | ||
193 | </row> | ||
194 | |||
195 | <row> | ||
196 | <entry>Onboard</entry> | ||
197 | |||
198 | <entry>Wait for the message: "VNF package onboarded | ||
199 | successfully" then close the pop-up.</entry> | ||
200 | </row> | ||
201 | </tbody> | ||
202 | </tgroup> | ||
203 | </table> | ||
204 | </section> | ||
205 | |||
206 | <section id="onboard_pfsense_vnf"> | ||
207 | <title>Onboarding the pfSense VNF</title> | ||
208 | |||
209 | <para>Add the other VNF by accessing the <literal>VNF</literal> menu | ||
210 | from the top toolbar once again, then <literal>Descriptors</literal> | ||
211 | -> <literal>On-board</literal> -> <literal>VM | ||
212 | Image</literal>.</para> | ||
213 | |||
214 | <para>Use the following values to fill the required fields:</para> | ||
215 | |||
216 | <table> | ||
217 | <tgroup cols="2"> | ||
218 | <tbody> | ||
219 | <row> | ||
220 | <entry>VM image file</entry> | ||
221 | |||
222 | <entry> | ||
223 | <literal>pfSense.qcow2</literal> | ||
224 | </entry> | ||
225 | </row> | ||
226 | |||
227 | <row> | ||
228 | <entry>Image format</entry> | ||
229 | |||
230 | <entry>QCOW2</entry> | ||
231 | </row> | ||
232 | |||
233 | <row> | ||
234 | <entry>VNF Type Name</entry> | ||
235 | |||
236 | <entry>pfSense</entry> | ||
237 | </row> | ||
238 | |||
239 | <row> | ||
240 | <entry>Description</entry> | ||
241 | |||
242 | <entry>pfSense VNF</entry> | ||
243 | </row> | ||
244 | |||
245 | <row> | ||
246 | <entry>Version</entry> | ||
247 | |||
248 | <entry>1.0</entry> | ||
249 | </row> | ||
250 | |||
251 | <row> | ||
252 | <entry>Memory in MB</entry> | ||
253 | |||
254 | <entry>1024</entry> | ||
255 | </row> | ||
256 | |||
257 | <row> | ||
258 | <entry>Num of CPUs</entry> | ||
259 | |||
260 | <entry>1</entry> | ||
261 | </row> | ||
262 | |||
263 | <row> | ||
264 | <entry>Interfaces to add:</entry> | ||
265 | |||
266 | <entry>wan, lan and mgmt.</entry> | ||
267 | </row> | ||
268 | |||
269 | <row> | ||
270 | <entry>Cloud Init -> Cloud-Init Datasource</entry> | ||
271 | |||
272 | <entry>ISO</entry> | ||
273 | </row> | ||
274 | |||
275 | <row> | ||
276 | <entry>Cloud Init -> Cloud-Init Disk Type</entry> | ||
277 | |||
278 | <entry>cdrom</entry> | ||
279 | </row> | ||
280 | |||
281 | <row> | ||
282 | <entry>Properties to add:</entry> | ||
283 | |||
284 | <entry> | ||
285 | <itemizedlist> | ||
286 | <listitem> | ||
287 | <para>Name: <literal>vnfMgmtIpAddress</literal>. Value: | ||
288 | 10.0.0.3<superscript>1</superscript></para> | ||
289 | </listitem> | ||
290 | |||
291 | <listitem> | ||
292 | <para>Name: <literal>internalMgmtPort</literal>. Value: | ||
293 | 443<superscript>2</superscript></para> | ||
294 | </listitem> | ||
295 | |||
296 | <listitem> | ||
297 | <para>Name: <literal>externalMgmtPort</literal>. Value: | ||
298 | 60002<superscript>3</superscript></para> | ||
299 | </listitem> | ||
300 | </itemizedlist> | ||
301 | </entry> | ||
302 | </row> | ||
303 | |||
304 | <row> | ||
305 | <entry>Onboard</entry> | ||
306 | |||
307 | <entry>Wait for the message: "VNF package onboarded | ||
308 | successfully" then close the pop-up.</entry> | ||
309 | </row> | ||
310 | </tbody> | ||
311 | </tgroup> | ||
312 | </table> | ||
313 | |||
314 | <para>Please note the following:</para> | ||
315 | |||
316 | <itemizedlist> | ||
317 | <listitem> | ||
318 | <para><superscript>1</superscript>vnfMgmtIpAddress (10.0.0.3) | ||
319 | represents the IP address of the management interface of the pfSense | ||
320 | VNF. Changing this value requires an update of the pfSense | ||
321 | configuration to match the new IP address.</para> | ||
322 | </listitem> | ||
323 | |||
324 | <listitem> | ||
325 | <para><superscript>2</superscript>HTTPS access (443) can be changed | ||
326 | to another type of access. Please consult the official pfSense | ||
327 | documentation for more details and make sure the pfSense VNF is | ||
328 | configured to accept another type of connection before changing the | ||
329 | port number.</para> | ||
330 | </listitem> | ||
331 | |||
332 | <listitem> | ||
333 | <para><superscript>3</superscript>externalMgmtPort (60002) | ||
334 | represents the external port on which a user can access the VNF | ||
335 | management interface from a web browser. The user can select another | ||
336 | port if needed. There are no other changes required or components | ||
337 | affected by this change.</para> | ||
338 | </listitem> | ||
339 | </itemizedlist> | ||
340 | </section> | ||
341 | |||
342 | <section id="offline_config_ucpe_device1"> | ||
343 | <title>Offline Configuration for uCPE device1</title> | ||
344 | |||
345 | <para>A Zero Touch Provisioning configuration for a device is done in | ||
346 | two steps from the uCPE Manager's GUI. The first step is to create a | ||
347 | data store and then to add the offline configuration for the device | ||
348 | infrastructure into that data store.</para> | ||
349 | |||
350 | <orderedlist> | ||
351 | <listitem> | ||
352 | <para><emphasis role="bold">Create the "device1" data | ||
353 | store</emphasis>: <literal>Applications</literal> -> | ||
354 | <literal>Offline Config</literal> -> | ||
355 | <literal>Add</literal>.</para> | ||
356 | |||
357 | <para>Use the following values to fill the required fields:</para> | ||
358 | |||
359 | <table> | ||
360 | <tgroup cols="2"> | ||
361 | <colspec align="left" /> | ||
362 | |||
363 | <tbody> | ||
364 | <row> | ||
365 | <entry>Name</entry> | ||
366 | |||
367 | <entry> | ||
368 | <literal>device1</literal> | ||
369 | </entry> | ||
370 | </row> | ||
371 | |||
372 | <row> | ||
373 | <entry>Device Type</entry> | ||
374 | |||
375 | <entry>Enea universal CPE</entry> | ||
376 | </row> | ||
377 | |||
378 | <row> | ||
379 | <entry>Device Version</entry> | ||
380 | |||
381 | <entry>2.2.1</entry> | ||
382 | </row> | ||
383 | |||
384 | <row> | ||
385 | <entry>Config Set</entry> | ||
386 | |||
387 | <entry>uCPE Config</entry> | ||
388 | </row> | ||
389 | |||
390 | <row> | ||
391 | <entry> | ||
392 | <literal>deviceId</literal> | ||
393 | </entry> | ||
394 | |||
395 | <entry>The ID extracted from device1 after running | ||
396 | <filename>list_deviceID.sh</filename>.</entry> | ||
397 | </row> | ||
398 | </tbody> | ||
399 | </tgroup> | ||
400 | </table> | ||
401 | |||
402 | <para>Press the Create button.</para> | ||
403 | </listitem> | ||
404 | |||
405 | <listitem> | ||
406 | <para>Prepare the infrastructure configuration for | ||
407 | <literal>device1</literal> in the data store: | ||
408 | <literal>Applications</literal> -> <literal>Offline | ||
409 | Config</literal> -> <select "device1" data store> -> | ||
410 | <literal>Config App...</literal>. This window layout is very similar | ||
411 | to the Configuration window of a device.</para> | ||
412 | </listitem> | ||
413 | |||
414 | <listitem> | ||
415 | <para>Disable the DPDK: <literal>DPDK</literal> -> | ||
416 | <literal>Advanced Settings</literal> -> uncheck <literal>Enable | ||
417 | DPDK</literal> to disable the DPDK and click "Create".</para> | ||
418 | </listitem> | ||
419 | |||
420 | <listitem> | ||
421 | <para><emphasis role="bold">Configure the host | ||
422 | interface(s):</emphasis> <literal>OpenVSwitch</literal> -> | ||
423 | <literal>Host Interfaces</literal> -> | ||
424 | <literal>Add</literal>.</para> | ||
425 | |||
426 | <para>Use the following values to fill the required fields:</para> | ||
427 | |||
428 | <itemizedlist> | ||
429 | <listitem> | ||
430 | <para><emphasis role="bold">Source</emphasis>: | ||
431 | <literal>enp7s0f1</literal>. <note> | ||
432 | <para>This is just an example interface. The user must | ||
433 | select the interface needed for use with the LAN | ||
434 | connection.</para> | ||
435 | </note></para> | ||
436 | </listitem> | ||
437 | |||
438 | <listitem> | ||
439 | <para><emphasis role="bold">Type</emphasis>: N/A.</para> | ||
440 | </listitem> | ||
441 | |||
442 | <listitem> | ||
443 | <para><emphasis role="bold">networking-type</emphasis>: | ||
444 | standard.</para> | ||
445 | </listitem> | ||
446 | |||
447 | <listitem> | ||
448 | <para><emphasis role="bold">dpdk-type</emphasis>: N/A.</para> | ||
449 | </listitem> | ||
450 | </itemizedlist> | ||
451 | |||
452 | <para>Click <literal>Create</literal>, and the | ||
453 | <literal>enp7s0f1</literal> interface will be ready to use in a | ||
454 | bridge (LAN).</para> | ||
455 | </listitem> | ||
456 | |||
457 | <listitem> | ||
458 | <para><emphasis role="bold">Configure the bridges</emphasis>: | ||
459 | <literal>OpenVSwitch</literal> -> <literal>Bridges</literal> | ||
460 | -> <literal>Add</literal>.</para> | ||
461 | |||
462 | <para>Use the following values to fill the required fields for the | ||
463 | four bridges that need to be created: <itemizedlist> | ||
464 | <listitem> | ||
465 | <para><literal>ibm_br</literal>:</para> | ||
466 | |||
467 | <itemizedlist spacing="compact"> | ||
468 | <listitem> | ||
469 | <para><emphasis role="bold">Name</emphasis>: | ||
470 | <literal>ibm_br</literal>.</para> | ||
471 | </listitem> | ||
472 | |||
473 | <listitem> | ||
474 | <para><emphasis role="bold">ovs-bridge-type</emphasis>: | ||
475 | <literal>inbandMgmt</literal>.</para> | ||
476 | </listitem> | ||
477 | |||
478 | <listitem> | ||
479 | <para><emphasis role="bold">mgmt-address</emphasis>: | ||
480 | Provide the IPv4 address of the uCPE Manager machine (E.g. | ||
481 | 172.24.3.109).</para> | ||
482 | </listitem> | ||
483 | |||
484 | <listitem> | ||
485 | <para><emphasis role="bold">mgmt-port</emphasis>: | ||
486 | 830.</para> | ||
487 | </listitem> | ||
488 | </itemizedlist> | ||
489 | |||
490 | <para>Click <literal>Create</literal>.</para> | ||
491 | </listitem> | ||
492 | |||
493 | <listitem> | ||
494 | <para><literal>vnf_mgmt_br</literal>:</para> | ||
495 | |||
496 | <itemizedlist spacing="compact"> | ||
497 | <listitem> | ||
498 | <para><emphasis role="bold">Name</emphasis>: | ||
499 | <literal>vnf_mgmt_br</literal>.</para> | ||
500 | </listitem> | ||
501 | |||
502 | <listitem> | ||
503 | <para><emphasis role="bold">ovs-bridge-type</emphasis>: | ||
504 | <literal>vnfMgmt</literal>.</para> | ||
505 | </listitem> | ||
506 | |||
507 | <listitem> | ||
508 | <para><emphasis role="bold">vnf-mgmt-address</emphasis>: | ||
509 | 10.0.0.1</para> | ||
510 | </listitem> | ||
511 | </itemizedlist> | ||
512 | |||
513 | <para>Click <literal>Create</literal>.</para> | ||
514 | </listitem> | ||
515 | |||
516 | <listitem> | ||
517 | <para><literal>sfc_br</literal>:</para> | ||
518 | |||
519 | <itemizedlist spacing="compact"> | ||
520 | <listitem> | ||
521 | <para><emphasis role="bold">Name</emphasis>: | ||
522 | <literal>sfc_br</literal>.</para> | ||
523 | </listitem> | ||
524 | |||
525 | <listitem> | ||
526 | <para><emphasis role="bold">ovs-bridge-type</emphasis>: | ||
527 | <literal>dataPlane</literal>.</para> | ||
528 | </listitem> | ||
529 | |||
530 | <listitem> | ||
531 | <para><emphasis role="bold">Sub-type</emphasis>: | ||
532 | integration.</para> | ||
533 | </listitem> | ||
534 | </itemizedlist> | ||
535 | |||
536 | <para>Click <literal>Create</literal>.</para> | ||
537 | </listitem> | ||
538 | |||
539 | <listitem> | ||
540 | <para><literal>lan_br</literal>:</para> | ||
541 | |||
542 | <itemizedlist spacing="compact"> | ||
543 | <listitem> | ||
544 | <para><emphasis role="bold">Name</emphasis>: | ||
545 | <literal>lan_br</literal>.</para> | ||
546 | </listitem> | ||
547 | |||
548 | <listitem> | ||
549 | <para><emphasis role="bold">ovs-bridge-type</emphasis>: | ||
550 | <literal>dataPlane</literal>.</para> | ||
551 | </listitem> | ||
552 | |||
553 | <listitem> | ||
554 | <para><emphasis role="bold">Sub-type</emphasis>: | ||
555 | communication. Name: <literal>enp7s0f1</literal></para> | ||
556 | </listitem> | ||
557 | </itemizedlist> | ||
558 | |||
559 | <para>Click <literal>Create</literal>.</para> | ||
560 | </listitem> | ||
561 | </itemizedlist></para> | ||
562 | </listitem> | ||
563 | </orderedlist> | ||
564 | </section> | ||
565 | |||
566 | <section id="offline_config_ucpe_device2"> | ||
567 | <title>Offline Configuration for uCPE device2</title> | ||
568 | |||
569 | <para>A Zero Touch Provisioning configuration for a device is done in | ||
570 | two steps from the uCPE Manager's GUI. The first step is to create a | ||
571 | data store and then to add the offline configuration for the device | ||
572 | infrastructure into that data store.</para> | ||
573 | |||
574 | <orderedlist> | ||
575 | <listitem> | ||
576 | <para><emphasis role="bold">Create the "device2" data | ||
577 | store</emphasis>: <literal>Applications</literal> -> | ||
578 | <literal>Offline Config</literal> -> | ||
579 | <literal>Add</literal>.</para> | ||
580 | |||
581 | <para>Use the following values to fill the required fields:</para> | ||
582 | |||
583 | <table> | ||
584 | <tgroup cols="2"> | ||
585 | <colspec align="left" /> | ||
586 | |||
587 | <tbody> | ||
588 | <row> | ||
589 | <entry>Name</entry> | ||
590 | |||
591 | <entry> | ||
592 | <literal>device2</literal> | ||
593 | </entry> | ||
594 | </row> | ||
595 | |||
596 | <row> | ||
597 | <entry>Device Type</entry> | ||
598 | |||
599 | <entry>Enea universal CPE</entry> | ||
600 | </row> | ||
601 | |||
602 | <row> | ||
603 | <entry>Device Version</entry> | ||
604 | |||
605 | <entry>2.2.1</entry> | ||
606 | </row> | ||
607 | |||
608 | <row> | ||
609 | <entry>Config Set</entry> | ||
610 | |||
611 | <entry>uCPE Config</entry> | ||
612 | </row> | ||
613 | |||
614 | <row> | ||
615 | <entry> | ||
616 | <literal>deviceId</literal> | ||
617 | </entry> | ||
618 | |||
619 | <entry>The ID extracted from device2 after running | ||
620 | <filename>list_deviceID.sh</filename>.</entry> | ||
621 | </row> | ||
622 | </tbody> | ||
623 | </tgroup> | ||
624 | </table> | ||
625 | |||
626 | <para>Press the Create button.</para> | ||
627 | </listitem> | ||
628 | |||
629 | <listitem> | ||
630 | <para>Prepare the infrastructure configuration for | ||
631 | <literal>device2</literal> in the data store: | ||
632 | <literal>Applications</literal> -> <literal>Offline | ||
633 | Config</literal> -> <select "device2" data store> -> | ||
634 | <literal>Config App...</literal>. This window layout is very similar | ||
635 | to the Configuration window of a device.</para> | ||
636 | </listitem> | ||
637 | |||
638 | <listitem> | ||
639 | <para>Disable the DPDK: <literal>DPDK</literal> -> | ||
640 | <literal>Advanced Settings</literal> -> uncheck <literal>Enable | ||
641 | DPDK</literal> to disable the DPDK and click "Create".</para> | ||
642 | </listitem> | ||
643 | |||
644 | <listitem> | ||
645 | <para><emphasis role="bold">Configure the host | ||
646 | interface(s):</emphasis><literal> OpenVSwitch</literal> -> | ||
647 | <literal>Host Interfaces</literal> -> | ||
648 | <literal>Add</literal>.</para> | ||
649 | |||
650 | <para>Use the following values to fill the required fields:</para> | ||
651 | |||
652 | <itemizedlist> | ||
653 | <listitem> | ||
654 | <para><emphasis role="bold">Source</emphasis>: | ||
655 | <literal>eno4</literal>. <note> | ||
656 | <para>This is just an example interface. The user must | ||
657 | select the interface needed for use with the LAN | ||
658 | connection.</para> | ||
659 | </note></para> | ||
660 | </listitem> | ||
661 | |||
662 | <listitem> | ||
663 | <para><emphasis role="bold">Type</emphasis>: standard.</para> | ||
664 | </listitem> | ||
665 | |||
666 | <listitem> | ||
667 | <para><emphasis role="bold">networking-type</emphasis>: | ||
668 | standard.</para> | ||
669 | </listitem> | ||
670 | |||
671 | <listitem> | ||
672 | <para><emphasis role="bold">dpdk-type</emphasis>: N/A.</para> | ||
673 | </listitem> | ||
674 | </itemizedlist> | ||
675 | |||
676 | <para>Click <literal>Create</literal>, and the | ||
677 | <literal>eno4</literal> interface will be ready to use in a bridge | ||
678 | (LAN).</para> | ||
679 | </listitem> | ||
680 | |||
681 | <listitem> | ||
682 | <para><emphasis role="bold">Configure the bridges</emphasis>: | ||
683 | <literal>OpenVSwitch</literal> -> <literal>Bridges</literal> | ||
684 | -> <literal>Add</literal>.</para> | ||
685 | |||
686 | <para>Use the following values to fill the required fields for the | ||
687 | four bridges that need to be created:</para> | ||
688 | |||
689 | <itemizedlist> | ||
690 | <listitem> | ||
691 | <para><literal>ibm_br</literal>:</para> | ||
692 | |||
693 | <itemizedlist spacing="compact"> | ||
694 | <listitem> | ||
695 | <para><emphasis role="bold">Name</emphasis>: | ||
696 | <literal>ibm_br</literal>.</para> | ||
697 | </listitem> | ||
698 | |||
699 | <listitem> | ||
700 | <para><emphasis role="bold">ovs-bridge-type</emphasis>: | ||
701 | <literal>inbandMgmt</literal>.</para> | ||
702 | </listitem> | ||
703 | |||
704 | <listitem> | ||
705 | <para><emphasis role="bold">mgmt-address</emphasis>: Provide | ||
706 | the IPv4 address of the uCPE Manager machine (E.g. | ||
707 | 172.24.3.109).</para> | ||
708 | </listitem> | ||
709 | |||
710 | <listitem> | ||
711 | <para><emphasis role="bold">mgmt-port</emphasis>: | ||
712 | 830.</para> | ||
713 | </listitem> | ||
714 | </itemizedlist> | ||
715 | |||
716 | <para>Click <literal>Create</literal>.</para> | ||
717 | </listitem> | ||
718 | |||
719 | <listitem> | ||
720 | <para><literal>vnf_mgmt_br</literal>:</para> | ||
721 | |||
722 | <itemizedlist spacing="compact"> | ||
723 | <listitem> | ||
724 | <para><emphasis role="bold">Name</emphasis>: | ||
725 | <literal>vnf_mgmt_br</literal>.</para> | ||
726 | </listitem> | ||
727 | |||
728 | <listitem> | ||
729 | <para><emphasis role="bold">ovs-bridge-type</emphasis>: | ||
730 | <literal>vnfMgmt</literal>.</para> | ||
731 | </listitem> | ||
732 | |||
733 | <listitem> | ||
734 | <para><emphasis role="bold">vnf-mgmt-address</emphasis>: | ||
735 | 10.0.0.1</para> | ||
736 | </listitem> | ||
737 | </itemizedlist> | ||
738 | |||
739 | <para>Click <literal>Create</literal>.</para> | ||
740 | </listitem> | ||
741 | |||
742 | <listitem> | ||
743 | <para><literal>sfc_br</literal>:</para> | ||
744 | |||
745 | <itemizedlist spacing="compact"> | ||
746 | <listitem> | ||
747 | <para><emphasis role="bold">Name</emphasis>: | ||
748 | <literal>sfc_br</literal>.</para> | ||
749 | </listitem> | ||
750 | |||
751 | <listitem> | ||
752 | <para><emphasis role="bold">ovs-bridge-type</emphasis>: | ||
753 | <literal>dataPlane</literal>.</para> | ||
754 | </listitem> | ||
755 | |||
756 | <listitem> | ||
757 | <para><emphasis role="bold">Sub-type</emphasis>: | ||
758 | integration.</para> | ||
759 | </listitem> | ||
760 | </itemizedlist> | ||
761 | |||
762 | <para>Click <literal>Create</literal>.</para> | ||
763 | </listitem> | ||
764 | |||
765 | <listitem> | ||
766 | <para><literal>lan_br</literal>:</para> | ||
767 | |||
768 | <itemizedlist spacing="compact"> | ||
769 | <listitem> | ||
770 | <para><emphasis role="bold">Name</emphasis>: | ||
771 | <literal>lan_br</literal>.</para> | ||
772 | </listitem> | ||
773 | |||
774 | <listitem> | ||
775 | <para><emphasis role="bold">ovs-bridge-type</emphasis>: | ||
776 | <literal>dataPlane</literal>.</para> | ||
777 | </listitem> | ||
778 | |||
779 | <listitem> | ||
780 | <para><emphasis role="bold">Sub-type</emphasis>: | ||
781 | communication. Name: <literal>eno4</literal></para> | ||
782 | </listitem> | ||
783 | </itemizedlist> | ||
784 | |||
785 | <para>Click <literal>Create</literal>.</para> | ||
786 | </listitem> | ||
787 | </itemizedlist> | ||
788 | </listitem> | ||
789 | </orderedlist> | ||
790 | </section> | ||
791 | |||
792 | <section id="upload_offline_config"> | ||
793 | <title>Uploading the offline Configuration</title> | ||
794 | |||
795 | <para>The offline configuration can be uploaded and applied on a uCPE | ||
796 | device only once. If the setup needs to be rerun on a device where ZTP | ||
797 | was already used, please do the following:</para> | ||
798 | |||
799 | <orderedlist spacing="compact"> | ||
800 | <listitem> | ||
801 | <para>Add the device manually from the uCPE manager GUI.</para> | ||
802 | </listitem> | ||
803 | |||
804 | <listitem> | ||
805 | <para>Clean the entire configuration on the device.</para> | ||
806 | </listitem> | ||
807 | |||
808 | <listitem> | ||
809 | <para>Reset the ZTP: <literal>device</literal> -> Configure -> | ||
810 | Host -> initial-config-complete: false -> Apply.</para> | ||
811 | </listitem> | ||
812 | |||
813 | <listitem> | ||
814 | <para>Delete the device from the uCPE Manager.</para> | ||
815 | </listitem> | ||
816 | </orderedlist> | ||
817 | </section> | ||
818 | </section> | ||
819 | |||
820 | <section id="add_ucpe1_mg"> | ||
821 | <title>Adding the uCPE device1 into the uCPE Manager</title> | ||
822 | |||
823 | <para>Access the <literal>Devices</literal> menu, then | ||
824 | <literal>Manage</literal> -> <literal>Add</literal>.</para> | ||
825 | |||
826 | <para>Use the following values to fill the required fields:</para> | ||
827 | |||
828 | <table> | ||
829 | <tgroup cols="2"> | ||
830 | <colspec align="left" /> | ||
831 | |||
832 | <tbody> | ||
833 | <row> | ||
834 | <entry>Type</entry> | ||
835 | |||
836 | <entry>Enea universal CPE</entry> | ||
837 | </row> | ||
838 | |||
839 | <row> | ||
840 | <entry>Release</entry> | ||
841 | |||
842 | <entry>1.0</entry> | ||
843 | </row> | ||
844 | |||
845 | <row> | ||
846 | <entry>Name</entry> | ||
847 | |||
848 | <entry>Ucpe1</entry> | ||
849 | </row> | ||
850 | |||
851 | <row> | ||
852 | <entry>IP/DNS Address</entry> | ||
853 | |||
854 | <entry>Dynamic IP received by the device from the DHCP server | ||
855 | (E.g. 172.24.12.74).</entry> | ||
856 | </row> | ||
857 | |||
858 | <row> | ||
859 | <entry>Description</entry> | ||
860 | |||
861 | <entry>ucpe device site 1</entry> | ||
862 | </row> | ||
863 | |||
864 | <row> | ||
865 | <entry>SSH Port</entry> | ||
866 | |||
867 | <entry>830</entry> | ||
868 | </row> | ||
869 | |||
870 | <row> | ||
871 | <entry>SSH User Name</entry> | ||
872 | |||
873 | <entry>root</entry> | ||
874 | </row> | ||
875 | |||
876 | <row> | ||
877 | <entry>Password</entry> | ||
878 | |||
879 | <entry /> | ||
880 | </row> | ||
881 | |||
882 | <row> | ||
883 | <entry>Device ID</entry> | ||
884 | |||
885 | <entry>Extract the device ID from device1, by running | ||
886 | <literal>list_deviceID.sh</literal>.</entry> | ||
887 | </row> | ||
888 | |||
889 | <row> | ||
890 | <entry>OK</entry> | ||
891 | |||
892 | <entry> | ||
893 | <itemizedlist> | ||
894 | <listitem> | ||
895 | <para>Green status indicates connection with the device was | ||
896 | established.</para> | ||
897 | </listitem> | ||
898 | |||
899 | <listitem><para>To add the device on the map: Right-Click on | ||
900 | the Map -> Place Device -> ucpe1</para>.</listitem> | ||
901 | </itemizedlist> | ||
902 | </entry> | ||
903 | </row> | ||
904 | </tbody> | ||
905 | </tgroup> | ||
906 | </table> | ||
907 | </section> | ||
908 | |||
909 | <section id="add_ucpe2_mg"> | ||
910 | <title>Adding the uCPE device2 into the uCPE Manager</title> | ||
911 | |||
912 | <para>Access the <literal>Devices</literal> menu, then | ||
913 | <literal>Manage</literal> -> <literal>Add</literal>.</para> | ||
914 | |||
915 | <para>Use the following values to fill the required fields:</para> | ||
916 | |||
917 | <table> | ||
918 | <tgroup cols="2"> | ||
919 | <colspec align="left" /> | ||
920 | |||
921 | <tbody> | ||
922 | <row> | ||
923 | <entry>Type</entry> | ||
924 | |||
925 | <entry>Enea universal CPE</entry> | ||
926 | </row> | ||
927 | |||
928 | <row> | ||
929 | <entry>Release</entry> | ||
930 | |||
931 | <entry>1.0</entry> | ||
932 | </row> | ||
933 | |||
934 | <row> | ||
935 | <entry>Name</entry> | ||
936 | |||
937 | <entry>Ucpe2</entry> | ||
938 | </row> | ||
939 | |||
940 | <row> | ||
941 | <entry>IP/DNS Address</entry> | ||
942 | |||
943 | <entry>Dynamic IP received by the device from the DHCP server | ||
944 | (E.g. 172.24.12.74).</entry> | ||
945 | </row> | ||
946 | |||
947 | <row> | ||
948 | <entry>Description</entry> | ||
949 | |||
950 | <entry>ucpe device site 2</entry> | ||
951 | </row> | ||
952 | |||
953 | <row> | ||
954 | <entry>SSH Port</entry> | ||
955 | |||
956 | <entry>830</entry> | ||
957 | </row> | ||
958 | |||
959 | <row> | ||
960 | <entry>SSH User Name</entry> | ||
961 | |||
962 | <entry>root</entry> | ||
963 | </row> | ||
964 | |||
965 | <row> | ||
966 | <entry>Password</entry> | ||
967 | |||
968 | <entry /> | ||
969 | </row> | ||
970 | |||
971 | <row> | ||
972 | <entry>Device ID</entry> | ||
973 | |||
974 | <entry>Extract the device ID from device2, by running | ||
975 | <literal>list_deviceID.sh</literal>.</entry> | ||
976 | </row> | ||
977 | |||
978 | <row> | ||
979 | <entry>OK</entry> | ||
980 | |||
981 | <entry> | ||
982 | <itemizedlist> | ||
983 | <listitem> | ||
984 | <para>Green status indicates connection with the device was | ||
985 | established.</para> | ||
986 | </listitem> | ||
987 | |||
988 | <listitem><para>To add the device on the map: Right-Click on | ||
989 | the Map -> Place Device -> ucpe2</para>.</listitem> | ||
990 | </itemizedlist> | ||
991 | </entry> | ||
992 | </row> | ||
993 | </tbody> | ||
994 | </tgroup> | ||
995 | </table> | ||
996 | |||
997 | <para>After the two devices are added into the uCPE Manager all offline | ||
998 | configuration data prepared for them is pushed automatically onto the | ||
999 | devices. To check if a device is configured, add the device onto the map | ||
1000 | and select <ucpe1> -> <literal>Configuration</literal> -> | ||
1001 | <literal>OpenVSwitch</literal> -> <literal>Bridges</literal>.</para> | ||
1002 | </section> | ||
1003 | |||
1004 | <section id="flexiwan_inst_device1"> | ||
1005 | <title>FlexiWAN VNF Instantiation on device1</title> | ||
1006 | |||
1007 | <para>Instantiate the FlexiWAN VNF by selecting the ucpe1 device, then the | ||
1008 | VNF menu -> <literal>Instances</literal> -> | ||
1009 | <literal>Add</literal>.</para> | ||
1010 | |||
1011 | <para>Use the following values to fill the required fields:</para> | ||
1012 | |||
1013 | <itemizedlist> | ||
1014 | <listitem> | ||
1015 | <para><emphasis role="bold">Name:</emphasis> | ||
1016 | <literal>Flexiwan_ucpe1</literal>.</para> | ||
1017 | </listitem> | ||
1018 | |||
1019 | <listitem> | ||
1020 | <para><emphasis role="bold">VNF Type:</emphasis> | ||
1021 | <literal>flexiWAN</literal>.</para> | ||
1022 | </listitem> | ||
1023 | |||
1024 | <listitem> | ||
1025 | <para><emphasis role="bold">VNFD Version:</emphasis> 1.0.</para> | ||
1026 | </listitem> | ||
1027 | |||
1028 | <listitem> | ||
1029 | <para><emphasis role="bold">Flavour:</emphasis> Canonical.</para> | ||
1030 | </listitem> | ||
1031 | |||
1032 | <listitem> | ||
1033 | <para><emphasis role="bold">uCPE Device:</emphasis> Ucpe1.</para> | ||
1034 | </listitem> | ||
1035 | |||
1036 | <listitem> | ||
1037 | <para><emphasis role="bold">Cloud Init File:</emphasis> | ||
1038 | <filename>flexiWAN_cloudinit.iso</filename>.</para> | ||
1039 | |||
1040 | <note> | ||
1041 | <para>Example cloud-init image provided. Please see the Appendix for | ||
1042 | details on how to generate a new cloud-init image with a different | ||
1043 | token. Please contact flexiWAN in order to get a valid token and | ||
1044 | access to the flexiWAN manager.</para> | ||
1045 | </note> | ||
1046 | </listitem> | ||
1047 | |||
1048 | <listitem> | ||
1049 | <para>Create the <literal>wan</literal> Interface:</para> | ||
1050 | |||
1051 | <para><emphasis role="bold">ID:</emphasis> | ||
1052 | <literal>wan</literal>.</para> | ||
1053 | |||
1054 | <para><emphasis role="bold">Type:</emphasis> | ||
1055 | <literal>tap</literal>.</para> | ||
1056 | |||
1057 | <para><emphasis role="bold">IF Name:</emphasis> Bridge: | ||
1058 | <literal>ibm_br</literal>.</para> | ||
1059 | |||
1060 | <para>Click <literal>Create</literal>.</para> | ||
1061 | </listitem> | ||
1062 | |||
1063 | <listitem> | ||
1064 | <para>Create the <literal>lan</literal> Interface:</para> | ||
1065 | |||
1066 | <para><emphasis role="bold">ID:</emphasis> | ||
1067 | <literal>lan</literal>.</para> | ||
1068 | |||
1069 | <para><emphasis role="bold">Type:</emphasis> | ||
1070 | <literal>tap</literal>.</para> | ||
1071 | |||
1072 | <para><emphasis role="bold">IF Name:</emphasis> Bridge: | ||
1073 | <literal>sfc_br</literal>.</para> | ||
1074 | |||
1075 | <para>Click <literal>Create</literal>.</para> | ||
1076 | </listitem> | ||
1077 | </itemizedlist> | ||
1078 | </section> | ||
1079 | |||
1080 | <section id="pfSense_inst_device1"> | ||
1081 | <title>pfSense VNF Instantiation on device1</title> | ||
1082 | |||
1083 | <para>Instantiate the pfSense VNF by selecting the ucpe1 device, then the | ||
1084 | VNF menu -> <literal>Instances</literal> -> | ||
1085 | <literal>Add</literal>.</para> | ||
1086 | |||
1087 | <para>Use the following values to fill the required fields:</para> | ||
1088 | |||
1089 | <itemizedlist> | ||
1090 | <listitem> | ||
1091 | <para><emphasis role="bold">Name:</emphasis> | ||
1092 | <literal>Pfsense_ucpe1</literal>.</para> | ||
1093 | </listitem> | ||
1094 | |||
1095 | <listitem> | ||
1096 | <para><emphasis role="bold">VNF Type:</emphasis> | ||
1097 | <literal>pfSense</literal>.</para> | ||
1098 | </listitem> | ||
1099 | |||
1100 | <listitem> | ||
1101 | <para><emphasis role="bold">VNFD Version:</emphasis> 1.0.</para> | ||
1102 | </listitem> | ||
1103 | |||
1104 | <listitem> | ||
1105 | <para><emphasis role="bold">Flavour:</emphasis> Canonical.</para> | ||
1106 | </listitem> | ||
1107 | |||
1108 | <listitem> | ||
1109 | <para><emphasis role="bold">uCPE Device:</emphasis> Ucpe1.</para> | ||
1110 | </listitem> | ||
1111 | |||
1112 | <listitem> | ||
1113 | <para><emphasis role="bold">Cloud Init File:</emphasis> | ||
1114 | <filename>pfsense_192_168_1_1.iso</filename>.</para> | ||
1115 | </listitem> | ||
1116 | |||
1117 | <listitem> | ||
1118 | <para>Create the <literal>wan</literal> Interface:</para> | ||
1119 | |||
1120 | <para><emphasis role="bold">ID:</emphasis> | ||
1121 | <literal>wan</literal>.</para> | ||
1122 | |||
1123 | <para><emphasis role="bold">Type:</emphasis> | ||
1124 | <literal>tap</literal>.</para> | ||
1125 | |||
1126 | <para><emphasis role="bold">IF Name:</emphasis> Bridge: | ||
1127 | <literal>sfc_br</literal>.</para> | ||
1128 | |||
1129 | <para>Click <literal>Create</literal>.</para> | ||
1130 | </listitem> | ||
1131 | |||
1132 | <listitem> | ||
1133 | <para>Create the <literal>lan</literal> Interface:</para> | ||
1134 | |||
1135 | <para><emphasis role="bold">ID:</emphasis> | ||
1136 | <literal>lan</literal>.</para> | ||
1137 | |||
1138 | <para><emphasis role="bold">Type:</emphasis> | ||
1139 | <literal>tap</literal>.</para> | ||
1140 | |||
1141 | <para><emphasis role="bold">IF Name:</emphasis> Bridge: | ||
1142 | <literal>lan_br</literal>.</para> | ||
1143 | |||
1144 | <para>Click <literal>Create</literal>.</para> | ||
1145 | </listitem> | ||
1146 | |||
1147 | <listitem> | ||
1148 | <para>Create the <literal>mgmt</literal> Interface:</para> | ||
1149 | |||
1150 | <para><emphasis role="bold">ID:</emphasis> | ||
1151 | <literal>mgmt</literal>.</para> | ||
1152 | |||
1153 | <para><emphasis role="bold">Type:</emphasis> | ||
1154 | <literal>tap</literal>.</para> | ||
1155 | |||
1156 | <para><emphasis role="bold">IF Name:</emphasis> Bridge: | ||
1157 | <literal>vnf_mgmt_br</literal>.</para> | ||
1158 | |||
1159 | <para>Click <literal>Create</literal>.</para> | ||
1160 | </listitem> | ||
1161 | </itemizedlist> | ||
1162 | </section> | ||
1163 | |||
1164 | <section id="flexiwan_inst_device2"> | ||
1165 | <title>FlexiWAN VNF Instantiation on device2</title> | ||
1166 | |||
1167 | <para>Instantiate the FlexiWAN VNF by selecting the ucpe2 device, then the | ||
1168 | VNF menu -> <literal>Instances</literal> -> | ||
1169 | <literal>Add</literal>.</para> | ||
1170 | |||
1171 | <para>Use the following values to fill the required fields:</para> | ||
1172 | |||
1173 | <itemizedlist> | ||
1174 | <listitem> | ||
1175 | <para><emphasis role="bold">Name:</emphasis> | ||
1176 | <literal>Flexiwan_ucpe2</literal>.</para> | ||
1177 | </listitem> | ||
1178 | |||
1179 | <listitem> | ||
1180 | <para><emphasis role="bold">VNF Type:</emphasis> | ||
1181 | <literal>flexiWAN</literal>.</para> | ||
1182 | </listitem> | ||
1183 | |||
1184 | <listitem> | ||
1185 | <para><emphasis role="bold">VNFD Version:</emphasis> 1.0.</para> | ||
1186 | </listitem> | ||
1187 | |||
1188 | <listitem> | ||
1189 | <para><emphasis role="bold">Flavour:</emphasis> Canonical.</para> | ||
1190 | </listitem> | ||
1191 | |||
1192 | <listitem> | ||
1193 | <para><emphasis role="bold">uCPE Device:</emphasis> Ucpe2.</para> | ||
1194 | </listitem> | ||
1195 | |||
1196 | <listitem> | ||
1197 | <para><emphasis role="bold">Cloud Init File:</emphasis> | ||
1198 | <filename>flexiWAN_cloudinit.iso</filename>.</para> | ||
1199 | |||
1200 | <note> | ||
1201 | <para>Example cloud-init image provided. Please see the Appendix for | ||
1202 | details on how to generate a new cloud-init image with a different | ||
1203 | token. Please contact flexiWAN in order to get a valid token and | ||
1204 | access to the flexiWAN manager.</para> | ||
1205 | </note> | ||
1206 | </listitem> | ||
1207 | |||
1208 | <listitem> | ||
1209 | <para>Create the <literal>wan</literal> Interface:</para> | ||
1210 | |||
1211 | <para><emphasis role="bold">ID:</emphasis> | ||
1212 | <literal>wan</literal>.</para> | ||
1213 | |||
1214 | <para><emphasis role="bold">Type:</emphasis> | ||
1215 | <literal>tap</literal>.</para> | ||
1216 | |||
1217 | <para><emphasis role="bold">IF Name:</emphasis> Bridge: | ||
1218 | <literal>ibm_br</literal>.</para> | ||
1219 | |||
1220 | <para>Click <literal>Create</literal>.</para> | ||
1221 | </listitem> | ||
1222 | |||
1223 | <listitem> | ||
1224 | <para>Create the <literal>lan</literal> Interface:</para> | ||
1225 | |||
1226 | <para><emphasis role="bold">ID:</emphasis> | ||
1227 | <literal>lan</literal>.</para> | ||
1228 | |||
1229 | <para><emphasis role="bold">Type:</emphasis> | ||
1230 | <literal>tap</literal>.</para> | ||
1231 | |||
1232 | <para><emphasis role="bold">IF Name:</emphasis> Bridge: | ||
1233 | <literal>sfc_br</literal>.</para> | ||
1234 | |||
1235 | <para>Click <literal>Create</literal>.</para> | ||
1236 | </listitem> | ||
1237 | </itemizedlist> | ||
1238 | </section> | ||
1239 | |||
1240 | <section id="pfSense_inst_device2"> | ||
1241 | <title>pfSense VNF Instantiation on device2</title> | ||
1242 | |||
1243 | <para>Instantiate the pfSense VNF by selecting the ucpe2 device, then the | ||
1244 | VNF menu -> <literal>Instances</literal> -> | ||
1245 | <literal>Add</literal>.</para> | ||
1246 | |||
1247 | <para>Use the following values to fill the required fields:</para> | ||
1248 | |||
1249 | <itemizedlist> | ||
1250 | <listitem> | ||
1251 | <para><emphasis role="bold">Name:</emphasis> | ||
1252 | <literal>Pfsense_ucpe2</literal>.</para> | ||
1253 | </listitem> | ||
1254 | |||
1255 | <listitem> | ||
1256 | <para><emphasis role="bold">VNF Type:</emphasis> | ||
1257 | <literal>pfSense</literal>.</para> | ||
1258 | </listitem> | ||
1259 | |||
1260 | <listitem> | ||
1261 | <para><emphasis role="bold">VNFD Version:</emphasis> 1.0.</para> | ||
1262 | </listitem> | ||
1263 | |||
1264 | <listitem> | ||
1265 | <para><emphasis role="bold">Flavour:</emphasis> Canonical.</para> | ||
1266 | </listitem> | ||
1267 | |||
1268 | <listitem> | ||
1269 | <para><emphasis role="bold">uCPE Device:</emphasis> Ucpe2.</para> | ||
1270 | </listitem> | ||
1271 | |||
1272 | <listitem> | ||
1273 | <para><emphasis role="bold">Cloud Init File:</emphasis> | ||
1274 | <filename>pfsense_192_168_2_1.iso</filename>.</para> | ||
1275 | </listitem> | ||
1276 | |||
1277 | <listitem> | ||
1278 | <para>Create the <literal>wan</literal> Interface:</para> | ||
1279 | |||
1280 | <para><emphasis role="bold">ID:</emphasis> | ||
1281 | <literal>wan</literal>.</para> | ||
1282 | |||
1283 | <para><emphasis role="bold">Type:</emphasis> | ||
1284 | <literal>tap</literal>.</para> | ||
1285 | |||
1286 | <para><emphasis role="bold">IF Name:</emphasis> Bridge: | ||
1287 | <literal>sfc_br</literal>.</para> | ||
1288 | |||
1289 | <para>Click <literal>Create</literal>.</para> | ||
1290 | </listitem> | ||
1291 | |||
1292 | <listitem> | ||
1293 | <para>Create the <literal>lan</literal> Interface:</para> | ||
1294 | |||
1295 | <para><emphasis role="bold">ID:</emphasis> | ||
1296 | <literal>lan</literal>.</para> | ||
1297 | |||
1298 | <para><emphasis role="bold">Type:</emphasis> | ||
1299 | <literal>tap</literal>.</para> | ||
1300 | |||
1301 | <para><emphasis role="bold">IF Name:</emphasis> Bridge: | ||
1302 | <literal>lan_br</literal>.</para> | ||
1303 | |||
1304 | <para>Click <literal>Create</literal>.</para> | ||
1305 | </listitem> | ||
1306 | |||
1307 | <listitem> | ||
1308 | <para>Create the <literal>mgmt</literal> Interface:</para> | ||
1309 | |||
1310 | <para><emphasis role="bold">ID:</emphasis> | ||
1311 | <literal>mgmt</literal>.</para> | ||
1312 | |||
1313 | <para><emphasis role="bold">Type:</emphasis> | ||
1314 | <literal>tap</literal>.</para> | ||
1315 | |||
1316 | <para><emphasis role="bold">IF Name:</emphasis> Bridge: | ||
1317 | <literal>vnf_mgmt_br</literal>.</para> | ||
1318 | |||
1319 | <para>Click <literal>Create</literal>.</para> | ||
1320 | </listitem> | ||
1321 | </itemizedlist> | ||
1322 | |||
1323 | <para>Once all VNFs are up and running, the setup is ready for final VNF | ||
1324 | configuration and testing.</para> | ||
1325 | |||
1326 | <figure> | ||
1327 | <title>SD-WAN branch-to-branch connection setup Overview</title> | ||
1328 | |||
1329 | <mediaobject> | ||
1330 | <imageobject> | ||
1331 | <imagedata align="center" contentwidth="600" | ||
1332 | fileref="images/br_to_br_conn_overview.png" /> | ||
1333 | </imageobject> | ||
1334 | </mediaobject> | ||
1335 | </figure> | ||
1336 | |||
1337 | <para>In order to have the full setup working properly, a tunnel between | ||
1338 | two SD-WAN devices needs to be created. The FlexiWAN VNF provides the | ||
1339 | functionality to create the VPN tunnel.</para> | ||
1340 | </section> | ||
1341 | |||
1342 | <section id="flexiwan_config"> | ||
1343 | <title>FlexiWAN configuration</title> | ||
1344 | |||
1345 | <para>Connect to <ulink | ||
1346 | url="https://app.flexiwan.com">https://app.flexiwan.com</ulink> and make | ||
1347 | sure you have an account and at least two valid device tokens. For more | ||
1348 | information please contact the flexiWAN VNF provider.</para> | ||
1349 | |||
1350 | <para>Proceed to the Inventory menu, click on <literal>Devices</literal>, | ||
1351 | the devices should already be present and need to be configured.</para> | ||
1352 | |||
1353 | <para><emphasis role="bold">How to configure a device</emphasis></para> | ||
1354 | |||
1355 | <orderedlist> | ||
1356 | <listitem> | ||
1357 | <para>Select each device and make sure to set the following | ||
1358 | values:</para> | ||
1359 | |||
1360 | <para><table> | ||
1361 | <tgroup cols="2"> | ||
1362 | <tbody> | ||
1363 | <row> | ||
1364 | <entry>Device1(ucpe1)</entry> | ||
1365 | |||
1366 | <entry>Device2(ucpe2)</entry> | ||
1367 | </row> | ||
1368 | |||
1369 | <row> | ||
1370 | <entry>Device Name: Device1</entry> | ||
1371 | |||
1372 | <entry>Device Name: Device2</entry> | ||
1373 | </row> | ||
1374 | |||
1375 | <row> | ||
1376 | <entry>Description: Set IPv4 for the second interface | ||
1377 | (ens3): 10.0.1.1/24.</entry> | ||
1378 | |||
1379 | <entry>Description: Set IPv4 for the second interface | ||
1380 | (ens3): 10.0.2.1/24.</entry> | ||
1381 | </row> | ||
1382 | |||
1383 | <row> | ||
1384 | <entry>Set "Approved".</entry> | ||
1385 | |||
1386 | <entry>Set "Approved".</entry> | ||
1387 | </row> | ||
1388 | |||
1389 | <row> | ||
1390 | <entry>Click "Update Device".</entry> | ||
1391 | |||
1392 | <entry>Click "Update Device".</entry> | ||
1393 | </row> | ||
1394 | </tbody> | ||
1395 | </tgroup> | ||
1396 | </table></para> | ||
1397 | |||
1398 | <note> | ||
1399 | <para>uCPE devices can installed under the same local network, i.e. | ||
1400 | having the same public IP, or on different networks (different | ||
1401 | public IPs). If both devices are installed under same local network | ||
1402 | (same public IP), delete the public IP address from the device | ||
1403 | configuration before creating a tunnel: <ulink | ||
1404 | url="https://app.flexiwan.com">https://app.flexiwan.com</ulink> | ||
1405 | -> <literal>Inventory</literal> -> <literal>Devices</literal> | ||
1406 | -> <literal><device></literal> -> Public IP.</para> | ||
1407 | </note> | ||
1408 | </listitem> | ||
1409 | |||
1410 | <listitem> | ||
1411 | <para>Select the ">" option for each device to be put in the | ||
1412 | "running" state.</para> | ||
1413 | </listitem> | ||
1414 | |||
1415 | <listitem> | ||
1416 | <para>Wait for each "vRouter" device to also enter the "running" | ||
1417 | state.</para> | ||
1418 | </listitem> | ||
1419 | |||
1420 | <listitem> | ||
1421 | <para>Select the main top up checkbox in order to select all devices | ||
1422 | and hit "Create Tunnels". At this moment a direct connection should be | ||
1423 | available between those two devices. You can check if the tunnel was | ||
1424 | created by selecting Inventory -> Tunnels.</para> | ||
1425 | </listitem> | ||
1426 | </orderedlist> | ||
1427 | </section> | ||
1428 | |||
1429 | <section id="pfsense_config"> | ||
1430 | <title>pfSense configuration</title> | ||
1431 | |||
1432 | <para>For the pfSense VNF there is no need for manual configuration. The | ||
1433 | configuration provided into the cloud init image is good enough to run the | ||
1434 | setup.</para> | ||
1435 | |||
1436 | <para>The management interface can be accessed from a web browser at: | ||
1437 | <literal>https://<deviceIP>:60002</literal></para> | ||
1438 | </section> | ||
1439 | </chapter> \ No newline at end of file | ||
diff --git a/doc/book-enea-nfv-access-evalkit/doc/setup_cleanup.xml b/doc/book-enea-nfv-access-evalkit/doc/setup_cleanup.xml new file mode 100644 index 0000000..6a129e8 --- /dev/null +++ b/doc/book-enea-nfv-access-evalkit/doc/setup_cleanup.xml | |||
@@ -0,0 +1,61 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <chapter id="setup_cleanup"> | ||
3 | <title>Setup Clean-up</title> | ||
4 | |||
5 | <para>In order to remove the setup all components need to be deleted in | ||
6 | reverse order:</para> | ||
7 | |||
8 | <orderedlist spacing="compact"> | ||
9 | <listitem> | ||
10 | <para>Select the ucpe1 device, access the <emphasis>VNF</emphasis> menu | ||
11 | then <literal>Instances FlexiWAN and pfSense</literal> and press | ||
12 | Delete.</para> | ||
13 | </listitem> | ||
14 | |||
15 | <listitem> | ||
16 | <para>Select the ucpe1 device, access the | ||
17 | <emphasis>Configuration</emphasis> menu, then | ||
18 | <literal>OpenVSwitch</literal> -> <literal>Bridges</literal>. Select | ||
19 | all bridges and press Delete.</para> | ||
20 | </listitem> | ||
21 | |||
22 | <listitem> | ||
23 | <para>Select the ucpe1 device, access the | ||
24 | <emphasis>Configuration</emphasis> menu, then | ||
25 | <literal>OpenVSwitch</literal> -> <literal>Host Interfaces</literal>. | ||
26 | Select all interfaces and press Delete.</para> | ||
27 | </listitem> | ||
28 | |||
29 | <listitem> | ||
30 | <para>Select the ucpe2 device, access the <emphasis>VNF</emphasis> menu | ||
31 | then <literal>Instances FlexiWAN and pfSense</literal> and press | ||
32 | Delete.</para> | ||
33 | </listitem> | ||
34 | |||
35 | <listitem> | ||
36 | <para>Select the ucpe2 device, access the | ||
37 | <emphasis>Configuration</emphasis> menu, then | ||
38 | <literal>OpenVSwitch</literal> -> <literal>Bridges</literal>. Select | ||
39 | all bridges and press Delete.</para> | ||
40 | </listitem> | ||
41 | |||
42 | <listitem> | ||
43 | <para>Select the ucpe2 device, access the | ||
44 | <emphasis>Configuration</emphasis> menu, then | ||
45 | <literal>OpenVSwitch</literal> -> <literal>Host Interfaces</literal>. | ||
46 | Select all interfaces and press Delete.</para> | ||
47 | </listitem> | ||
48 | |||
49 | <listitem> | ||
50 | <para>Access the <emphasis>VNF</emphasis> menu, select | ||
51 | <literal>Descriptors</literal>. Select each descriptor and off-board | ||
52 | them.</para> | ||
53 | </listitem> | ||
54 | |||
55 | <listitem> | ||
56 | <para>Access the <emphasis>Applications</emphasis> menu, select | ||
57 | <literal>Offline Config</literal>. Select both device configurations and | ||
58 | delete them.</para> | ||
59 | </listitem> | ||
60 | </orderedlist> | ||
61 | </chapter> \ No newline at end of file | ||
diff --git a/doc/book-enea-nfv-access-evalkit/doc/validating_setup.xml b/doc/book-enea-nfv-access-evalkit/doc/validating_setup.xml new file mode 100644 index 0000000..02d71d2 --- /dev/null +++ b/doc/book-enea-nfv-access-evalkit/doc/validating_setup.xml | |||
@@ -0,0 +1,36 @@ | |||
1 | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
2 | <chapter id="validating_setup"> | ||
3 | <title>Validating the Setup</title> | ||
4 | |||
5 | <para><emphasis role="bold">In order to access the web interfaces of the | ||
6 | pfSense VNF:</emphasis></para> | ||
7 | |||
8 | <orderedlist> | ||
9 | <listitem> | ||
10 | <para>Open a browser on a machine connected on the same network with the | ||
11 | WAN port of the uCPE device.</para> | ||
12 | </listitem> | ||
13 | |||
14 | <listitem> | ||
15 | <para>Connect to: <literal>https://<publicIP>:60002</literal> with | ||
16 | the username: admin and the password: pfsense.</para> | ||
17 | </listitem> | ||
18 | </orderedlist> | ||
19 | |||
20 | <para><emphasis role="bold">In order to validate the data | ||
21 | path:</emphasis></para> | ||
22 | |||
23 | <orderedlist> | ||
24 | <listitem> | ||
25 | <para>Connect a test machine to the LAN physical port.</para> | ||
26 | </listitem> | ||
27 | |||
28 | <listitem> | ||
29 | <para>Check for a dynamic IP. The pfSense LAN interface is configured | ||
30 | with a DHCP server and should receive an IP from the corresponding | ||
31 | subnet (uCPE device1 has 192.168.1.XXX, while uCPE device2 has | ||
32 | 192.168.2.XXX).<programlisting>> dhclient eth1 | ||
33 | > ping 192.168.2.1</programlisting></para> | ||
34 | </listitem> | ||
35 | </orderedlist> | ||
36 | </chapter> \ No newline at end of file | ||