JIRA: BGS-46
[genesis.git] / fuel / docs / src / installation-instructions.rst
1 :Authors: Jonas Bjurel (Ericsson AB)
2 :Version: 0.0.4
3
4 ==================================================================================================
5 OPNFV Installation instructions for the Arno release of OPNFV when using Fuel as a deployment tool
6 ==================================================================================================
7
8 Abstract
9 ========
10
11 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.
12
13 License
14 =======
15 Arno release of OPNFV when using Fuel as a deployment tool Docs (c) by Jonas Bjurel (Ericsson AB)
16
17 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/>.
18
19 Version history
20 ===============
21
22 +--------------------+--------------------+--------------------+--------------------+
23 | **Date**           | **Ver.**           | **Author**         | **Comment**        |
24 |                    |                    |                    |                    |
25 +--------------------+--------------------+--------------------+--------------------+
26 | 2015-04-15         | 0.0.1              | Jonas Bjurel       | First draft        |
27 |                    |                    | (Ericsson AB)      |                    |
28 +--------------------+--------------------+--------------------+--------------------+
29 | 2015-04-23         | 0.0.2              | Jonas Bjurel       | Minor changes      |
30 |                    |                    | (Ericsson AB)      |                    |
31 +--------------------+--------------------+--------------------+--------------------+
32 | 2015-05-16         | 0.0.3              | Christopher Price  | Minor changes      |
33 |                    |                    | (Ericsson AB)      |                    |
34 +--------------------+--------------------+--------------------+--------------------+
35 | 2015-05-27         | 0.0.4              | Christopher Price  | Minor changes      |
36 |                    |                    | (Ericsson AB)      |                    |
37 +--------------------+--------------------+--------------------+--------------------+
38
39
40 .. contents:: Table of Contents
41    :backlinks: none
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 First of all, the Fuel deployment .iso image needs to be retrieved, the Latest stable Arno release of OPNFV when using Fuel as a deployment tool can be found here: <www.opnfv.org/abc/def>
59
60 Alternatively, you may build the .iso from source by cloning the opnfv/genesis git repository:
61
62 <git clone https://<linux foundation uid>@gerrit.opnf.org/gerrit/genesis>
63
64 Check-out the Arno release:
65
66 <cd genesis; git checkout arno>
67
68 Go to the fuel directory and build the .iso
69
70 <cd fuel/build; make all>
71
72 For more information on how to build, please see "OPNFV Build instructions for - Arno release of OPNFV when using Fuel as a deployment tool <http://www.opnfv.org/xyz>
73
74 Next, familiarize yourself with the Fuel 6.0.1 version by reading the following documents:
75
76 - Fuel planning guide <http://docs.mirantis.com/openstack/fuel/fuel-6.0/planning-guide.html#planning-guide>
77
78 - Fuel user guide <http://docs.mirantis.com/openstack/fuel/fuel-6.0/user-guide.html#user-guide>
79
80 - Fuel operations guide <http://docs.mirantis.com/openstack/fuel/fuel-6.0/operations.html#operations-guide>
81
82
83 A number of deployment specific parameters must be collected, those are:
84
85 1.     Provider sub-net and gateway information
86
87 2.     Provider VLAN information
88
89 3.     Provider DNS addresses
90
91 4.     Provider NTP addresses
92
93 This information will be needed for the configuration procedures provided in this document.
94
95 Hardware requirements
96 =====================
97
98 The following minimum hardware requirements must be met for the installation of Arno using Fuel:
99
100 +--------------------+------------------------------------------------------+
101 | **HW Aspect**      | **Requirement**                                      |
102 |                    |                                                      |
103 +--------------------+------------------------------------------------------+
104 | **# of servers**   | Minimum 5 (3 for non redundant deployment):          |
105 |                    |                                                      |
106 |                    | - 1 Fuel deployment master (may be virtualized)      |
107 |                    |                                                      |
108 |                    | - 3(1) Controllers                                   |
109 |                    |                                                      |
110 |                    | - 1 Compute                                          |
111 +--------------------+------------------------------------------------------+
112 | **CPU**            | Minimum 1 socket x86_AMD64 Ivy bridge 1.6 GHz        |
113 |                    |                                                      |
114 +--------------------+------------------------------------------------------+
115 | **RAM**            | Minimum 16GB/server (Depending on VNF work load)     |
116 |                    |                                                      |
117 +--------------------+------------------------------------------------------+
118 | **Disk**           | Minimum 256GB 10kRPM spinning disks                  |
119 |                    |                                                      |
120 +--------------------+------------------------------------------------------+
121 | **NICs**           | - 2(1)x10GE Niantec for Private/Public (Redundant)   |
122 |                    |                                                      |
123 |                    | - 2(1)x10GE Niantec for SAN (Redundant)              |
124 |                    |                                                      |
125 |                    | - 2(1)x1GE for admin (PXE) and control (RabitMQ,etc) |
126 |                    |                                                      |
127 +--------------------+------------------------------------------------------+
128
129 Top of the rack (TOR) Configuration requirements
130 ================================================
131
132 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.
133
134 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.
135
136 Manual configuration of the Arno hardware platform should be carried out according to the Pharos specification <link>.
137
138
139 OPNFV Software installation and deployment
140 ==========================================
141
142 This section describes the installation of the Fuel@OPNFV installation server (Fuel master) as well as the deployment of the full OPNFV reference platform stack across a server cluster.
143
144 Install Fuel master
145 -------------------
146 1. Mount the built .iso file (release/opnfv-<version>.iso) as a boot device to the jump host server.
147
148 2. Reboot the jump host to establish the Fuel server.
149
150    - The system now boots from the ISO image.
151
152 3. Change the grub boot parameters
153
154    - When the grub boot menu shows up - Press Tab to edit the kernel parameters
155
156    - Change <showmenu=no> to <showmenu=yes>.
157
158    - Change <netmask=255.255.255.0> to <netmask=255.255.0.0>.
159
160    - Press [Enter].
161
162 4. Wait until screen Fuel setup is shown (Note: This can take up to 30 minutes).
163
164 5. Select PXE Setup and change the following fields to appropriate values (example below):
165
166    - Static Pool Start 10.20.0.3
167
168    - Static Pool End 10.20.0.254
169
170    - DHCP Pool Start 10.20.128.3
171
172    - DHCP Pool End 10.20.128.254
173
174 6. Select DNS & Hostname and change the following fields to appropriate values:
175
176    - Hostname <CEE Region name>-fuel
177
178    - Domain <Domain Name>
179
180    - Search Domain <Search Domain Name>
181
182    - Hostname to test DNS <Hostname to test DNS>
183
184 7. Select Time Sync and change the following fields to appropriate values:
185
186    - NTP Server 1 <Customer NTP server 1>
187
188    - NTP Server 2 <Customer NTP server 2>
189
190    - NTP Server 3<Customer NTP server 3>
191
192    **Note: This step is only to pass the network sanity test, the actual ntp parameters will be set with the pre-deploy script.**
193
194 8. Start the installation.
195
196    - Select Quit Setup and press Save and Quit.
197
198    - Installation starts, wait until a screen with logon credentials is shown.
199
200    Note: This will take about 15 minutes.
201
202 Create an OPNFV Environment
203 ---------------------------
204
205 9. Connect to Fuel with a browser towards port 8000
206
207 10. Create and name a new OpenStack environment, to be installed.
208
209 11. Select <Juno on Ubuntu> or <Juno on CentOS> as per your which in the "OpenStack Release" field.
210
211 12. Select deployment mode.
212
213     - Select the Multi-node with HA.
214
215 13. Select compute node mode.
216
217     - Select KVM as hypervisor (unless you're not deploying bare metal or nested KVM/ESXI).
218
219 14. Select network mode.
220
221     - Select Neutron with VLAN segmentation
222
223     ** Note: This will later be overridden to VXLAN by OpenDaylight.**
224
225 15. Select Storage Back-ends.
226
227     - Select Ceph for Cinder and default for glance.
228
229 16. Select additional services.
230
231     - Check option <Install Celiometer (OpenStack Telemetry)>.
232
233 17. Create the new environment.
234
235 Configure the OPNFV environment
236 -------------------------------
237
238 18. Enable PXE booting
239
240     - 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.
241
242 19. Reboot all the control and compute blades.
243
244 20. Wait for the availability of nodes showing up in the Fuel GUI.
245
246     - 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.
247
248 21. Open the environment you previously created.
249
250 22. Open the networks tab.
251
252 23. Update the public network configuration.
253
254     Change the following fields to appropriate values:
255
256     - IP Range Start to <Public IP Address start>
257
258     - IP Range End to <Public IP Address end>
259
260     - CIDR to <CIDR for Public IP Addresses>
261
262     - Gateway to <Gateway for Public IP Addresses>
263
264     - Check VLAN tagging.
265
266     - Set appropriate VLAN id.
267
268 24. Update the management network configuration.
269
270     - Set CIDR to 172.16.255.128/25 (or as per your which).
271
272     - Check VLAN tagging.
273
274     - Set appropriate VLAN id.
275
276 25. Update the Neutron L2 configuration.
277
278     - Set VLAN ID range.
279
280 26. Update the Neutron L3 configuration.
281
282     - Set Internal network CIDR to an appropriate value
283
284     - Set Internal network gateway to an appropriate value
285
286     - Set Floating IP ranges.
287
288     - Set DNS Servers
289
290 27. Save Settings.
291
292 28. Click "verify network" to check the network set-up consistency and connectivity
293
294 29. Update the storage configuration.
295
296 30. Open the nodes tab.
297
298 31. Assign roles.
299
300     - Check <Controller and Telemetry MongoDB>.
301
302     - Check the three servers you want to be installed as Controllers in pane <Assign Role>.
303
304     - Click <Apply Changes>.
305
306     - Check <Compute>.
307
308     - Check nodes to be installed as compute nodes in pane Assign Role.
309
310     - Click <Apply Changes>.
311
312 32. Configure interfaces.
313
314     - Check Select <All> to select all nodes with Control, Telemetry, MongoDB and Compute node roles.
315
316     - Click <Configure Interfaces>
317
318     - Screen Configure interfaces on number of <number of nodes> nodes is shown.
319
320     - Assign interfaces (bonded) for mgmt-, admin-, private-, public- and storage networks
321
322 Deploy the OPNFV environment
323 ----------------------------
324 **NOTE: Before the deployment is performed, the OPNFV pre-deploy script must be run**
325
326 35. Run the pre-deploy script.
327     Log on as root to the Fuel node.
328     Print Fuel environment Id (fuel env)
329     #> id | status | name | mode | release_id | changes <id>| new | <CEE Region name>| ha_compact | 2 | <ite specific information>
330
331 36. Run the pre-deployment script (/opt/opnfv/pre-deploy.sh <id>)
332     As prompted for-, set the DNS servers to go into /etc/resolv.conf.
333     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.
334     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.
335
336 37. Deploy the environment.
337     In the Fuel GUI, click Deploy Changes.
338
339 Installation health-check
340 =========================
341
342 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:
343
344 - Select the “Health check” TAB.
345 - Select all test cases
346 - And click “Run tests”
347
348 All test cases except the following should pass:
349
350 Post installation and deployment actions
351 ========================================
352 **-**
353
354 References
355 ==========
356
357 OPNFV
358 -----
359
360 OpenStack
361 ---------
362
363 OpenDaylight
364 ------------
365
366 Fuel
367 ----