Merge "Adds external router and fixes metadata server"
[genesis.git] / fuel / docs / src / installation-instructions.rst
1 ==================================================================================================
2 OPNFV Installation instructions for the Arno release of OPNFV when using Fuel as a deployment tool
3 ==================================================================================================
4
5 .. contents:: Table of Contents
6    :backlinks: none
7
8
9 Abstract
10 ========
11
12 This document describes how to install the Arno release of OPNFV when using Fuel as a deployment tool covering it's limitations, dependencies and required system resources.
13
14 License
15 =======
16 Arno release of OPNFV when using Fuel as a deployment tool Docs (c) by Jonas Bjurel (Ericsson AB)
17
18 Arno release of OPNFV when using Fuel as a deployment tool Docs are licensed under a Creative Commons Attribution 4.0 International License. You should have received a copy of the license along with this. If not, see <http://creativecommons.org/licenses/by/4.0/>.
19
20 Version history
21 ===============
22
23 +--------------------+--------------------+--------------------+--------------------+
24 | **Date**           | **Ver.**           | **Author**         | **Comment**        |
25 |                    |                    |                    |                    |
26 +--------------------+--------------------+--------------------+--------------------+
27 | 2015-04-15         | 0.0.1              | Jonas Bjurel       | First draft        |
28 |                    |                    | (Ericsson AB)      |                    |
29 +--------------------+--------------------+--------------------+--------------------+
30 | 2015-04-23         | 0.0.2              | Jonas Bjurel       | Minor changes      |
31 |                    |                    | (Ericsson AB)      |                    |
32 +--------------------+--------------------+--------------------+--------------------+
33 | 2015-05-16         | 0.0.3              | Christopher Price  | Minor changes      |
34 |                    |                    | (Ericsson AB)      |                    |
35 +--------------------+--------------------+--------------------+--------------------+
36 | 2015-05-27         | 0.0.4              | Christopher Price  | Minor changes      |
37 |                    |                    | (Ericsson AB)      |                    |
38 +--------------------+--------------------+--------------------+--------------------+
39 | 2015-06-02         | 0.0.5              | Christopher Price  | Minor changes      |
40 |                    |                    | (Ericsson AB)      |                    |
41 +--------------------+--------------------+--------------------+--------------------+
42
43
44 Introduction
45 ============
46
47 This document describes providing guidelines on how to install and configure the Arno release of OPNFV when using Fuel as a deployment tool including required software and hardware configurations.
48
49 Although the available installation options gives a high degree of freedom in how the system is set-up including architecture, services and features, etc. said permutations may not provide an OPNFV compliant reference architecture. This instruction provides a step-by-step guide that results in an OPNFV Arno compliant deployment.
50
51 The audience of this document is assumed to have good knowledge in networking and Unix/Linux administration.
52
53 Preface
54 =======
55
56 Before starting the installation of the Arno release of OPNFV when using Fuel as a deployment tool, some planning must be done.
57
58 Retrieving the ISO image
59 ------------------------
60
61 First of all, the Fuel deployment arnofuel.iso image needs to be retrieved, the .iso image of the Arno release of OPNFV when using Fuel as a deployment tool can be found here at http://artifacts.opnfv.org/arno.2015.1.0/fuel/arno.2015.1.0.fuel.iso
62
63 Building the ISO image
64 ----------------------
65
66 Alternatively, you may build the .iso from source by cloning the opnfv/genesis git repository.  To retrieve the repository for the Arno release use the following command.
67
68 <git clone https://<linux foundation uid>@gerrit.opnf.org/gerrit/genesis>
69
70 Check-out the Arno release tag to set the branch to the baseline required to replicate the Arno release.
71
72 <cd genesis; git checkout arno.2015.1.0>
73
74 Go to the fuel directory and build the .iso
75
76 <cd fuel/build; make all>
77
78 For more information on how to build, please see "OPNFV Build instructions for - Arno release of OPNFV when using Fuel as a deployment tool which you retrieves with the repository at </genesis/fuel/docs/src/build-instructions.rst>
79
80 Next, familiarize yourself with the Fuel 6.0.1 version by reading the following documents:
81
82 - Fuel planning guide <http://docs.mirantis.com/openstack/fuel/fuel-6.0/planning-guide.html#planning-guide>
83
84 - Fuel user guide <http://docs.mirantis.com/openstack/fuel/fuel-6.0/user-guide.html#user-guide>
85
86 - Fuel operations guide <http://docs.mirantis.com/openstack/fuel/fuel-6.0/operations.html#operations-guide>
87
88 A number of deployment specific parameters must be collected, those are:
89
90 1.     Provider sub-net and gateway information
91
92 2.     Provider VLAN information
93
94 3.     Provider DNS addresses
95
96 4.     Provider NTP addresses
97
98 This information will be needed for the configuration procedures provided in this document.
99
100 Hardware requirements
101 =====================
102
103 The following minimum hardware requirements must be met for the installation of Arno using Fuel:
104
105 +--------------------+------------------------------------------------------+
106 | **HW Aspect**      | **Requirement**                                      |
107 |                    |                                                      |
108 +--------------------+------------------------------------------------------+
109 | **# of servers**   | Minimum 5 (3 for non redundant deployment):          |
110 |                    |                                                      |
111 |                    | - 1 Fuel deployment master (may be virtualized)      |
112 |                    |                                                      |
113 |                    | - 3(1) Controllers                                   |
114 |                    |                                                      |
115 |                    | - 1 Compute                                          |
116 +--------------------+------------------------------------------------------+
117 | **CPU**            | Minimum 1 socket x86_AMD64 Ivy bridge 1.6 GHz        |
118 |                    |                                                      |
119 +--------------------+------------------------------------------------------+
120 | **RAM**            | Minimum 16GB/server (Depending on VNF work load)     |
121 |                    |                                                      |
122 +--------------------+------------------------------------------------------+
123 | **Disk**           | Minimum 256GB 10kRPM spinning disks                  |
124 |                    |                                                      |
125 +--------------------+------------------------------------------------------+
126 | **NICs**           | - 2(1)x10GE Niantec for Private/Public (Redundant)   |
127 |                    |                                                      |
128 |                    | - 2(1)x10GE Niantec for SAN (Redundant)              |
129 |                    |                                                      |
130 |                    | - 2(1)x1GE for admin (PXE) and control (RabitMQ,etc) |
131 |                    |                                                      |
132 +--------------------+------------------------------------------------------+
133
134 Top of the rack (TOR) Configuration requirements
135 ================================================
136
137 The switching infrastructure provides connectivity for the OPNFV infrastructure operations, tenant networks (East/West) and provider connectivity (North/South bound connectivity); it also provides needed connectivity for the storage Area Network (SAN). To avoid traffic congestion, it is strongly suggested that three physically separated networks are used, that is: 1 physical network for administration and control, one physical network for tenant private and public networks, and one physical network for SAN. The switching connectivity can (but does not need to) be fully redundant, in such case it and comprises a redundant 10GE switch pair for each of the three physically separated networks.
138
139 The physical TOR switches are **not** automatically configured from the OPNFV reference platform. All the networks involved in the OPNFV infrastructure as well as the provider networks and the private tenant VLANs needs to be manually configured.
140
141 Manual configuration of the Arno hardware platform should be carried out according to the Pharos specification http://artifacts.opnfv.org/arno.2015.1.0/docs/pharos-spec.arno.2015.1.0.pdf
142
143
144 OPNFV Software installation and deployment
145 ==========================================
146
147 This section describes the installation of the OPNFV installation server (Fuel master) as well as the deployment of the full OPNFV reference platform stack across a server cluster.
148
149 Install Fuel master
150 -------------------
151 1. Mount the built fuel.arno.2015.1.0.iso file as a boot device to the jump host server.
152
153 2. Reboot the jump host to establish the Fuel server.
154
155    - The system now boots from the ISO image.
156
157 3. Change the grub boot parameters
158
159    - When the grub boot menu shows up - Press Tab to edit the kernel parameters
160
161    - Change <showmenu=no> to <showmenu=yes>.
162
163    - Change <netmask=255.255.255.0> to <netmask=255.255.0.0>.
164
165    - Press [Enter].
166
167 4. Wait until screen Fuel setup is shown (Note: This can take up to 30 minutes).
168
169 5. Select PXE Setup and change the following fields to appropriate values (example below):
170
171    - Static Pool Start 10.20.0.3
172
173    - Static Pool End 10.20.0.254
174
175    - DHCP Pool Start 10.20.128.3
176
177    - DHCP Pool End 10.20.128.254
178
179 6. Select DNS & Hostname and change the following fields to appropriate values:
180
181    - Hostname <CEE Region name>-fuel
182
183    - Domain <Domain Name>
184
185    - Search Domain <Search Domain Name>
186
187    - Hostname to test DNS <Hostname to test DNS>
188
189 7. Select Time Sync and change the following fields to appropriate values:
190
191    - NTP Server 1 <Customer NTP server 1>
192
193    - NTP Server 2 <Customer NTP server 2>
194
195    - NTP Server 3<Customer NTP server 3>
196
197    **Note: This step is only to pass the network sanity test, the actual ntp parameters will be set with the pre-deploy script.**
198
199 8. Start the installation.
200
201    - Select Quit Setup and press Save and Quit.
202
203    - Installation starts, wait until a screen with logon credentials is shown.
204
205    Note: This will take about 15 minutes.
206
207 Create an OPNFV Environment
208 ---------------------------
209
210 9. Connect to Fuel with a browser towards port 8000
211
212 10. Create and name a new OpenStack environment, to be installed.
213
214 11. Select <Juno on Ubuntu> or <Juno on CentOS> as per your which in the "OpenStack Release" field.
215
216 12. Select deployment mode.
217
218     - Select the Multi-node with HA.
219
220 13. Select compute node mode.
221
222     - Select KVM as hypervisor (unless you're not deploying bare metal or nested KVM/ESXI).
223
224 14. Select network mode.
225
226     - Select Neutron with VLAN segmentation
227
228     ** Note: This will later be overridden to VXLAN by OpenDaylight.**
229
230 15. Select Storage Back-ends.
231
232     - Select Ceph for Cinder and default for glance.
233
234 16. Select additional services.
235
236     - Check option <Install Celiometer (OpenStack Telemetry)>.
237
238 17. Create the new environment.
239
240 Configure the OPNFV environment
241 -------------------------------
242
243 18. Enable PXE booting
244
245     - For every controller and compute server: enable PXE Booting as the first boot device in the BIOS boot order menu and hard disk as the second boot device in the same menu.
246
247 19. Reboot all the control and compute blades.
248
249 20. Wait for the availability of nodes showing up in the Fuel GUI.
250
251     - Wait until all nodes are displayed in top right corner of the Fuel GUI: <total number of server> TOTAL NODES and <total number of servers> UNALLOCATED NODES.
252
253 21. Open the environment you previously created.
254
255 22. Open the networks tab.
256
257 23. Update the public network configuration.
258
259     Change the following fields to appropriate values:
260
261     - IP Range Start to <Public IP Address start>
262
263     - IP Range End to <Public IP Address end>
264
265     - CIDR to <CIDR for Public IP Addresses>
266
267     - Gateway to <Gateway for Public IP Addresses>
268
269     - Check VLAN tagging.
270
271     - Set appropriate VLAN id.
272
273 24. Update the management network configuration.
274
275     - Set CIDR to 172.16.255.128/25 (or as per your which).
276
277     - Check VLAN tagging.
278
279     - Set appropriate VLAN id.
280
281 25. Update the Neutron L2 configuration.
282
283     - Set VLAN ID range.
284
285 26. Update the Neutron L3 configuration.
286
287     - Set Internal network CIDR to an appropriate value
288
289     - Set Internal network gateway to an appropriate value
290
291     - Set Floating IP ranges.
292
293     - Set DNS Servers
294
295 27. Save Settings.
296
297 28. Click "verify network" to check the network set-up consistency and connectivity
298
299 29. Update the storage configuration.
300
301 30. Open the nodes tab.
302
303 31. Assign roles.
304
305     - Check <Controller and Telemetry MongoDB>.
306
307     - Check the three servers you want to be installed as Controllers in pane <Assign Role>.
308
309     - Click <Apply Changes>.
310
311     - Check <Compute>.
312
313     - Check nodes to be installed as compute nodes in pane Assign Role.
314
315     - Click <Apply Changes>.
316
317 32. Configure interfaces.
318
319     - Check Select <All> to select all nodes with Control, Telemetry, MongoDB and Compute node roles.
320
321     - Click <Configure Interfaces>
322
323     - Screen Configure interfaces on number of <number of nodes> nodes is shown.
324
325     - Assign interfaces (bonded) for mgmt-, admin-, private-, public- and storage networks
326
327 Deploy the OPNFV environment
328 ----------------------------
329 **NOTE: Before the deployment is performed, the OPNFV pre-deploy script must be run**
330
331 35. Run the pre-deploy script.
332     Log on as root to the Fuel node.
333     Print Fuel environment Id (fuel env)
334     #> id | status | name | mode | release_id | changes <id>| new | <CEE Region name>| ha_compact | 2 | <ite specific information>
335
336 36. Run the pre-deployment script (/opt/opnfv/pre-deploy.sh <id>)
337     As prompted for-, set the DNS servers to go into /etc/resolv.conf.
338     As prompted for-, set any Hosts file additions for controllers and compute nodes. You will be prompted for name, FQDN and IP for each entry. Press return when prompted for a name when you have completed your input.
339     As prompted for-, set NTP upstream configuration for controllers. You will be prompted for a NTP server each entry. Press return when prompted for a NTP server when you have completed your input.
340
341 37. Deploy the environment.
342     In the Fuel GUI, click Deploy Changes.
343
344 Installation health-check
345 =========================
346
347 Now that the OPNFV environment has been created, and before the post installation configurations is started, perform a system health check from the Fuel GUI:
348
349 - Select the “Health check” TAB.
350 - Select all test cases
351 - And click “Run tests”
352
353 All test cases except the following should pass:
354
355 Post installation and deployment actions
356 ========================================
357 **-**
358
359 References
360 ==========
361
362 OPNFV
363 -----
364
365 OpenStack
366 ---------
367
368 OpenDaylight
369 ------------
370
371 Fuel
372 ----
373
374 :Authors: Jonas Bjurel (Ericsson AB)
375 :Version: 0.0.5
376
377 **Documentation tracking**
378
379 Revision: _sha1_
380
381 Build date:  _date_
382