Updates docs for SR1 with final revision
[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 SR1 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 SR1 release of OPNFV when using Fuel as a deployment tool Docs (c) by Jonas Bjurel (Ericsson AB)
17
18 Arno SR1 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-06-03         | 1.0.0              | Jonas Bjurel       | Installation       |
28 |                    |                    | (Ericsson AB)      | instructions for   |
29 |                    |                    |                    | the Arno release   |
30 |                    |                    |                    |                    |
31 | 2015-09-27         | 1.1.0              | Daniel Smith       | ARNO SR1-RC1       |
32 |                    |                    |  (Ericsson AB)     | update             |
33 |                    |                    |                    |                    |
34 |                    |                    |                    |                    |
35 +--------------------+--------------------+--------------------+--------------------+
36
37
38 Introduction
39 ============
40
41 This document describes providing guidelines on how to install and configure the Arno SR1 release of OPNFV when using Fuel as a deployment tool including required software and hardware configurations.
42
43 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 SR1 compliant deployment.
44
45 The audience of this document is assumed to have good knowledge in networking and Unix/Linux administration.
46
47 Preface
48 =======
49
50 Before starting the installation of the Arno SR1 release of OPNFV when using Fuel as a deployment tool, some planning must be done.
51
52 Retrieving the ISO image
53 ------------------------
54
55 First of all, the Fuel deployment ISO image needs to be retrieved, the .iso image of the Arno SR1 release of OPNFV when using Fuel as a deployment tool can be found at http://artifacts.opnfv.org/arno.2015.2.0/fuel/arno.2015.2.0.fuel.iso
56
57
58 Building the ISO image
59 ----------------------
60
61
62 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:
63
64 - git clone https://<linux foundation uid>@gerrit.opnf.org/gerrit/genesis
65
66 Check-out the Arno SR1 release tag to set the branch to the baseline required to replicate the Arno SR1 release:
67
68 - cd genesis; git checkout stable/arno2015.2.0
69
70 Go to the fuel directory and build the .iso:
71
72 - cd fuel/build; make all
73
74 For more information on how to build, please see "OPNFV Build instructions for - Arno SR1 release of OPNFV when using Fuel as a deployment tool which you retrieved with the repository at </genesis/fuel/docs/src/build-instructions.rst>
75
76 Next, familiarize yourself with the Fuel 6.1 version by reading the following documents:
77
78 - Fuel planning guide <https://docs.mirantis.com/openstack/fuel/fuel-6.1/planning-guide.html>
79
80 - Fuel user guide <http://docs.mirantis.com/openstack/fuel/fuel-6.1/user-guide.html#user-guide>
81
82 - Fuel operations guide <http://docs.mirantis.com/openstack/fuel/fuel-6.1/operations.html#operations-guide>
83
84 - Fuel Plugin Developers Guide <https://wiki.openstack.org/wiki/Fuel/Plugins>
85
86 A number of deployment specific parameters must be collected, those are:
87
88 1.     Provider sub-net and gateway information
89
90 2.     Provider VLAN information
91
92 3.     Provider DNS addresses
93
94 4.     Provider NTP addresses
95
96 5.     Network Topology you plan to Deploy (VLAN, GRE(VXLAN), FLAT)
97
98 6.     Linux Distro you intend to deploy.
99
100 7.     How many nodes and what roles you want to deploy (Controllers, Storage, Computes)
101
102 8.     Monitoring Options you want to deploy (Ceilometer, MongoDB).
103
104 9.     Other options not covered in the document are available in the links above
105
106
107 This information will be needed for the configuration procedures provided in this document.
108
109 Hardware requirements
110 =====================
111
112 The following minimum hardware requirements must be met for the installation of Arno SR1 using Fuel:
113
114 +--------------------+------------------------------------------------------+
115 | **HW Aspect**      | **Requirement**                                      |
116 |                    |                                                      |
117 +--------------------+------------------------------------------------------+
118 | **# of nodes**     | Minimum 6 (3 for non redundant deployment):          |
119 |                    |                                                      |
120 |                    | - 1 Fuel deployment master (may be virtualized)      |
121 |                    |                                                      |
122 |                    | - 3(1) Controllers                                   |
123 |                    |                                                      |
124 |                    | - 1 Compute                                          |
125 |                    |                                                      |
126 |                    | - 1 Ceilometer (VM option)                           |
127 +--------------------+------------------------------------------------------+
128 | **CPU**            | Minimum 1 socket x86_AMD64 with Virtualization       |
129 |                    |   support                                            |
130 +--------------------+------------------------------------------------------+
131 | **RAM**            | Minimum 16GB/server (Depending on VNF work load)     |
132 |                    |                                                      |
133 +--------------------+------------------------------------------------------+
134 | **Disk**           | Minimum 256GB 10kRPM spinning disks                  |
135 |                    |                                                      |
136 +--------------------+------------------------------------------------------+
137 | **Networks**       | 4 Tagged VLANs (PUBLIC, MGMT, STORAGE, PRIVATE)      |
138 |                    |                                                      |
139 |                    | 1 Un-Tagged VLAN for PXE Boot - ADMIN Network        |
140 |                    |                                                      |
141 |                    | note: These can be run on single NIC - or spread out |
142 |                    |  over other nics as your hardware supports           |
143 +--------------------+------------------------------------------------------+
144
145 Help with Hardware Requirements
146 ===============================
147
148
149 Calculate hardware requirements:
150
151 You can use the Fuel Hardware Calculator <https://www.mirantis.com/openstack-services/bom-calculator/> to calculate the hardware required for your OpenStack environment.
152
153 When choosing the hardware on which you will deploy your OpenStack environment, you should think about:
154
155         - CPU -- Consider the number of virtual machines that you plan to deploy in your cloud environment and the CPU per virtual machine.
156         - Memory -- Depends on the amount of RAM assigned per virtual machine and the controller node.
157         - Storage -- Depends on the local drive space per virtual machine, remote volumes that can be attached to a virtual machine, and object storage.
158         - Networking -- Depends on the Choose Network Topology, the network bandwidth per virtual machine, and network storage.
159
160
161 Top of the rack (TOR) Configuration requirements
162 ================================================
163
164 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.
165
166 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.
167
168 Manual configuration of the Arno SR1 hardware platform should be carried out according to the Pharos specification TODO-<insert link to Pharos ARNO SR1 Specification>
169
170 OPNFV Software installation and deployment
171 ==========================================
172
173 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.
174
175 Install Fuel master
176 -------------------
177 1. Mount the Arno SR1 ISO  file as a boot device to the jump host server.
178
179 2. Reboot the jump host to establish the Fuel server.
180
181    - The system now boots from the ISO image.
182
183    - Select 'DVD Fuel Install (Static IP)'
184
185    - Press [Enter].
186
187 3. Wait until screen Fuel setup is shown (Note: This can take up to 30 minutes).
188
189 4. Configure DHCP/Static IP information for your FUEL node - For example, ETH0 is 10.20.0.2/24 for FUEL booting and ETH1 is DHCP in your corporate/lab network.
190
191    - Configure eth1 or other network interfaces here as well (if you have them present on your FUEL server).
192
193 5. Select PXE Setup and change the following fields to appropriate values (example below):
194
195    - DHCP Pool Start 10.20.0.3
196
197    - DHCP Pool End 10.20.0.254
198
199    - DHCP Pool Gateway  10.20.0.2 (ip of Fuel node)
200
201    - Hostname <OPNFV Region name>-fuel
202
203    - Domain <Domain Name>
204
205    - Search Domain <Search Domain Name>
206
207    - Hostname to test DNS <Hostname to test DNS>
208
209 6. Select Time Sync and change the following fields to appropriate values:
210
211    - NTP Server 1 <Customer NTP server 1>
212
213    - NTP Server 2 <Customer NTP server 2>
214
215    - NTP Server 3 <Customer NTP server 3>
216
217 7. Start the installation.
218
219    - Select Quit Setup and press Save and Quit.
220
221    - Installation starts, wait until a screen with logon credentials is shown.
222
223
224 Boot the Node Servers
225 ---------------------
226
227 After the Fuel Master node has rebooted from the above step and is at the login prompt, you should boot the Node Servers (Your Compute/Control/Storage blades (nested or real)) with a PXE Booting Scheme so that the FUEL 
228 Master can pick them up for control.
229
230 8. Enable PXE booting
231
232     - 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.
233
234 9. Reboot all the control and compute blades.
235
236 10. Wait for the availability of nodes showing up in the Fuel GUI.
237
238     - 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.
239
240
241
242 Install ODL Plugin on FUEL node
243 -------------------------------
244
245 11. SSH to your FUEL node   (e.g. root@10.20.0.2  pwd: r00tme)
246
247 12. Verify the plugin exists at /opt/opnfv/opendaylight-0.6-0.6.1-1.noarch.rpm
248
249 13. Install the plugin with the command
250
251     - "fuel plugins --install /opt/opnfv/opendaylight-0.6-0.6.1-1.noarch.rpm"
252
253     - Expected output: "Plugin  opendaylight-0.6-0.6.1-1.noarch.rpm was successfully installed."
254
255
256 Create an OPNFV Environment
257 ---------------------------
258
259 14. Connect to Fuel WEB UI with a browser towards port http://<ip of fuel server>:8000 (login admin/admin)
260
261 15. Create and name a new OpenStack environment, to be installed.
262
263 16. Select <Juno on Ubuntu> or <Juno on CentOS> as per your which in the "OpenStack Release" field and press "Next"
264
265 17. Select compute virtulization method.
266
267     - Select KVM as hypervisor (or one of your choosing) and press "Next"
268
269 18. Select network mode.
270
271     - Select Neutron with GRE segmentation and press "Next"
272
273     Note: this is the supportted method when using the ODL installation, other options will not work with the plugin and this Instruction Set.
274
275 19. Select Storage Back-ends.
276
277     - Select "Yes, use Ceph" if you intend to deploy Ceph Backends and press "Next"
278
279
280 20. Select additional services you wish to install.
281
282     - Check option <Install Celiometer (OpenStack Telemetry)> and press "Next"
283         Note: If you use Ceilometer and you only have 5 nodes, you may have to run in a 3/1/1 (controller/ceilo-mongo/compute) configuration. Suggest adding more compute nodes
284
285 21. Create the new environment.
286
287     - Click "Create" Button
288
289 Configure the OPNFV environment
290 -------------------------------
291
292 22. Enable PXE booting (if you haven't done this already)
293
294     - 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.
295
296 23. Wait for the availability of nodes showing up in the Fuel GUI.
297
298     - 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.
299
300 24. Open the environment you previously created.
301
302 25. Open the networks tab.
303
304 26. Update the Public network configuration.
305
306     Change the following fields to appropriate values:
307
308     - IP Range Start to <Public IP Address start>
309
310     - IP Range End to <Public IP Address end>
311
312     - CIDR to <CIDR for Public IP Addresses>
313
314     - Check VLAN tagging.
315
316     - Set appropriate VLAN id.
317
318     - Gateway to <Gateway for Public IP Addresses>
319
320     - Set floating ip ranges
321
322
323 27. Update the Storage Network Configuration
324
325     - Set CIDR to appropriate value  (default 192.168.1.0/24)
326
327     - Set vlan to appropriate value  (default 102)
328
329 28. Update the Management network configuration.
330
331     - Set CIDR to appropriate value (default 192.168.0.0/24)
332
333     - Check VLAN tagging.
334
335     - Set appropriate VLAN id. (default 101)
336
337 29. Update the Private Network Information
338
339     - Set CIDR to appropriate value (default 192.168.2.0/24
340
341     - Check and set VLAN tag appropriately (default 103)
342
343 30. Update the Neutron L3 configuration.
344
345     - Set Internal network CIDR to an appropriate value
346
347     - Set Internal network gateway to an appropriate value
348
349     - Set Guest OS DNS Server values appropriately
350
351 31. Save Settings.
352
353 32. Click on the "Nodes" Tab in the FUEL WEB UI.
354
355 33. Assign roles.
356
357     - Click on "+Add Nodes" button
358
359     - Check "Controller" and the "Storage-Ceph OSD"  in the Assign Roles Section
360
361     - Check the 3 Nodes you want to act as Controllers from the bottom half of the screen
362
363     - Click <Apply Changes>.
364
365     - Click on "+Add Nodes" button
366
367     - Check "Compute" in the Assign Roles Section
368
369     - Check the Nodes that you want to act as Computes from the bottom half of the screen
370
371     - Click <Apply Changes>.
372
373
374 34. Configure interfaces.
375
376     - Check Select <All> to select all nodes with Control, Telemetry, MongoDB and Compute node roles.
377
378     - Click <Configure Interfaces>
379
380     - Screen Configure interfaces on number of <number of nodes> nodes is shown.
381
382     - Assign interfaces (bonded) for mgmt-, admin-, private-, public- and storage networks
383
384     - Note: Set MTU level to at least MTU=2090 (recommended MTU=2140 for SDN over VXLAN Usage) for each network
385
386     - Click Apply
387
388 Enable ODL
389 ----------
390
391 35. In the FUEL UI of your Enviornment, click the "Settings" Tab
392
393     - Enable OpenStack debug logging (in the Common Section) - optional
394
395     - Check the OpenDaylight Lithium Plugin Section
396
397     - Check to enable VXLAN
398
399     - Modify VNI and Port Range if desired
400
401     - Click "Save Settings" at the bottom to Save.
402
403
404 OPTIONAL - Set Local Mirror Repos
405 ---------------------------------
406
407 The following steps can be executed if you are in an environment with no connection to the internet.  The Fuel server delivers a local repo that can be used for 
408 installation / deployment of openstack.
409
410 36.  In the Fuel UI of your Environment, click the Settings Tab and scroll to the Repositories Section.
411
412    - Replace the URI values for the "Name" values outlined below:
413
414    - "ubuntu" URI="deb http://<ip-of-fuel-server>:8080/ubuntu-part trusty main"
415    - "ubuntu-security" URI="deb http://<ip-of-fuel-server>:8080/ubuntu-part trusty main"
416    - "ubuntu-updates" URI="deb http://<ip-of-fuel-server>:8080/ubuntu-part trusty main"
417    - "mos-updates"  URI="deb http://<ip-of-fuel-server>:8080/mos-ubuntu mos6.1-updates main restricted"
418    - "mos-security" URI="deb http://<ip-of-fuel-server>:8080/mos-ubuntu mos6.1-security main restricted"
419    - "mos-holdback" URI="deb http://<ip-of-fuel-server>:8080/mos-ubuntu mos6.1-holdback main restricted"
420
421    - Click "Save Settings" at the bottom to Save your changes
422
423 Verify Networks
424 ---------------
425
426 Its is important that Verify Networks be done as it will ensure that you can not only communicate on the networks you have setup, but can fetch the packages needed for a succesful
427 deployment.
428
429 37.  From the FUEL UI in your Environment, Select the Networks Tab
430
431    - At the bottom of the page, Select "Verify Networks"
432
433    - Continue to fix your topology (physical switch, etc) until the "Verification Succeeded - Your network is configured correctly" message is shown
434
435 Deploy Your Environment
436 -----------------------
437
438 38. Deploy the environment.
439     In the Fuel GUI, click Deploy Changes.
440
441     - Wait until your Environment is deployed and the Horizon URI to connect is displayed in the FUEL GUI for your Environment
442
443 Installation health-check
444 =========================
445
446 39. Perform system health-check
447
448     - Click the "Health Check" tab inside your Environment in the FUEL Web UI
449
450     - Check "Select All" and Click "Run Tests"
451
452         Note: Live-Migraition test will fail (Bug in ODL currently), you can skip this test in the list if you choose to not see the error message, simply uncheck it in the list
453
454     - Allow tests to run and investigate results where appropriate
455
456 40. Verify that the OpenDaylight GUI is accessible
457
458 Point your browser to the following URL: http://{Controller-VIP}:8181/index.html> and login:
459
460     - Username: admin
461     - Password: admin
462
463 References
464 ==========
465
466 OPNFV
467 -----
468
469 `OPNFV Home Page <www.opnfv.org>`_
470
471 `OPNFV Genesis project page <https://wiki.opnfv.org/get_started>`_
472
473 OpenStack
474 ---------
475
476 `OpenStack Juno Release artifacts <http://www.openstack.org/software/juno>`_
477
478 `OpenStack documentation <http://docs.openstack.org>`_
479
480 OpenDaylight
481 ------------
482
483 `OpenDaylight artifacts <http://www.opendaylight.org/software/downloads>`_
484
485 Fuel
486 ----
487
488 `Fuel documentation <https://wiki.openstack.org/wiki/Fuel>`_
489
490 :Authors: Daniel Smith (Ericsson AB)
491 :Version: 1.1.0
492
493 **Documentation tracking**
494
495 Revision: _sha1_
496
497 Build date: _date