12
12
- [ Beginning with ` opendaylight ` ] ( #beginning-with-opendaylight )
13
13
4 . [ Usage] ( #usage )
14
14
- [ Karaf Features] ( #karaf-features )
15
- - [ Install Method] ( #install-method )
16
15
- [ RPM Repo] ( #rpm-repo )
16
+ - [ Deb Repo] ( #deb-repo )
17
17
- [ Ports] ( #ports )
18
18
- [ Log Verbosity] ( #log-verbosity )
19
19
- [ Enabling ODL OVSDB HA] ( #enabling-odl-ovsdb-ha )
@@ -29,16 +29,15 @@ Networking (SDN) controller][7].
29
29
30
30
## Module Description
31
31
32
- Deploys OpenDaylight to various OSs either via an RPM or directly from the
33
- ODL tarball release artifact.
32
+ Deploys OpenDaylight to various OSs either via an RPM or a Deb.
34
33
35
34
All OpenDaylight configuration should be handled through the ODL Puppet
36
35
module's [ params] ( #parameters ) . If you need a new knob, [ please raise an
37
36
Issue] [ 8 ] .
38
37
39
- The master branch installs OpenDaylight from the latest testing RPM repository
40
- by default . There are stable/<release > branches that install OpenDaylight
41
- releases and service releases, like Beryllium or Beryllium SR3.
38
+ By default, the master branch installs OpenDaylight from the latest testing RPM repository
39
+ or from the latest stable Deb repository depending on the OS . There are stable/<release >
40
+ branches that install OpenDaylight releases and service releases, like Beryllium or Beryllium SR3.
42
41
43
42
## Setup
44
43
@@ -47,45 +46,59 @@ releases and service releases, like Beryllium or Beryllium SR3.
47
46
- Installs Java, which is required by ODL.
48
47
- Creates ` odl:odl ` user: group if they don't already exist.
49
48
- Installs [ OpenDaylight] [ 7 ] .
50
- - Installs a [ systemd unitfile] [ 9 ] or [ Upstart config file] [ 10 ] for
51
- OpenDaylight.
49
+ - Installs a [ systemd unitfile] [ 9 ] for OpenDaylight.
52
50
- Manipulates OpenDaylight's configuration files according to the params
53
51
passed to the ` ::opendaylight ` class.
54
- - Starts the ` opendaylight ` systemd or Upstart service.
52
+ - Starts the ` opendaylight ` systemd service.
55
53
56
54
### Beginning with ` opendaylight `
57
55
58
56
Getting started with the OpenDaylight Puppet module is as simple as declaring
59
57
the ` ::opendaylight ` class.
60
58
61
59
The [ vagrant-opendaylight] [ 11 ] project provides an easy way to experiment
62
- with [ applying the ODL Puppet module] [ 12 ] to CentOS 7, Fedora 22 and Fedora
63
- 23 Vagrant boxes.
60
+ with [ applying the ODL Puppet module] [ 12 ] to CentOS 7, Fedora 22, Fedora
61
+ 23 and Ubuntu 16.04 Vagrant boxes.
64
62
65
63
```
66
64
[~/vagrant-opendaylight]$ vagrant status
67
65
Current machine states:
68
66
69
- cent7 not created (libvirt)
70
- cent7_rpm_he_sr4 not created (libvirt)
71
- cent7_rpm_li_sr2 not created (libvirt)
72
- cent7_rpm_be not created (libvirt)
73
- cent7_ansible not created (libvirt)
74
- cent7_ansible_be not created (libvirt)
75
- cent7_ansible_path not created (libvirt)
76
- cent7_pup_rpm not created (libvirt)
77
- cent7_pup_custom_logs not created (libvirt)
78
- cent7_pup_tb not created (libvirt)
79
- f22_rpm_li not created (libvirt)
80
- f22_ansible not created (libvirt)
81
- f22_pup_rpm not created (libvirt)
82
- f23_rpm_li not created (libvirt)
83
- f23_rpm_li_sr1 not created (libvirt)
84
- f23_rpm_li_sr2 not created (libvirt)
85
- f23_rpm_li_sr3 not created (libvirt)
86
- f23_rpm_be not created (libvirt)
87
- f23_ansible not created (libvirt)
88
- f23_pup_rpm not created (libvirt)
67
+ cent7_li_sr4 not created (virtualbox)
68
+ cent7_be not created (virtualbox)
69
+ cent7_be_sr1 not created (virtualbox)
70
+ cent7_be_sr2 not created (virtualbox)
71
+ cent7_rpm_he_sr4 not created (virtualbox)
72
+ cent7_rpm_li_sr2 not created (virtualbox)
73
+ cent7_rpm_li_sr3 not created (virtualbox)
74
+ cent7_rpm_be not created (virtualbox)
75
+ cent7_rpm_be_sr1 not created (virtualbox)
76
+ cent7_rpm_be_sr2 not created (virtualbox)
77
+ cent7_rpm_ve_latest not created (virtualbox)
78
+ cent7_ansible not created (virtualbox)
79
+ cent7_ansible_latest not created (virtualbox)
80
+ cent7_ansible_path not created (virtualbox)
81
+ cent7_pup_rpm not created (virtualbox)
82
+ cent7_pup_custom_logs not created (virtualbox)
83
+ cent7_pup_enable_l3 not created (virtualbox)
84
+ cent7_pup_tb not created (virtualbox)
85
+ f22_rpm_li not created (virtualbox)
86
+ f22_ansible not created (virtualbox)
87
+ f22_pup_rpm not created (virtualbox)
88
+ f23_rpm_li not created (virtualbox)
89
+ f23_rpm_li_sr1 not created (virtualbox)
90
+ f23_rpm_li_sr2 not created (virtualbox)
91
+ f23_rpm_li_sr3 not created (virtualbox)
92
+ f23_rpm_be not created (virtualbox)
93
+ f23_rpm_be_rel not created (virtualbox)
94
+ f23_rpm_be_latest not created (virtualbox)
95
+ f23_ansible not created (virtualbox)
96
+ f23_pup_rpm not created (virtualbox)
97
+ debian8_ansible_repo not created (virtualbox)
98
+ debian8_ansible_path not created (virtualbox)
99
+ ubuntu16_ansible_repo not created (virtualbox)
100
+ ubuntu16_ansible_path not created (virtualbox)
101
+ ubuntu16_pup_deb not created (virtualbox)
89
102
90
103
[~/vagrant-opendaylight]$ vagrant up cent7_pup_rpm
91
104
# A CentOS 7 VM is created and configured using the ODL Puppet mod's defaults
@@ -128,30 +141,6 @@ class { 'opendaylight':
128
141
}
129
142
```
130
143
131
- ### Install Method
132
-
133
- The ` install_method ` param, and the associated ` tarball_url ` and ` unitfile_url `
134
- params, are intended for use by developers who need to install a custom-built
135
- version of OpenDaylight, or for automated build processes that need to consume
136
- a tarball build artifact.
137
-
138
- It's recommended that most people use the default RPM-based install.
139
-
140
- If you do need to install from a tarball, simply pass ` tarball ` as the value
141
- for ` install_method ` and optionally pass the URL to your tarball via the
142
- ` tarball_url ` param. The default value for ` tarball_url ` points at
143
- OpenDaylight's latest release. The ` unitfile_url ` param points at the
144
- OpenDaylight systemd .service file used by the RPM and should (very likely)
145
- not need to be overridden.
146
-
147
- ``` puppet
148
- class { 'opendaylight':
149
- install_method => 'tarball',
150
- tarball_url => '<URL to your custom tarball>',
151
- unitfile_url => '<URL to your custom unitfile>',
152
- }
153
- ```
154
-
155
144
### RPM Repo
156
145
157
146
The ` rpm_repo ` param can be used to configure which RPM repository
@@ -178,7 +167,26 @@ Service Releases, like SR2 4.2).
178
167
For a full list of OpenDaylight releases and their CBS repos, see the
179
168
[ OpenDaylight Deployment wiki] [ 19 ] .
180
169
181
- This is only read when ` install_method ` is ` rpm ` .
170
+ This is only read for RedHat based operating systems. For Debian based OSs,
171
+ this values is ` none ` .
172
+
173
+ ### Deb Repo
174
+
175
+ The ` deb_repo ` param can be used to configure which Deb repository
176
+ OpenDaylight is installed from.
177
+
178
+ ``` puppet
179
+ class { 'opendaylight':
180
+ deb_repo => 'ppa:odl-team/boron',
181
+ }
182
+ ```
183
+
184
+ The naming convention is same as the naming convention of Launchpad PPA's,
185
+ which is where ODL .debs are hosted. The ` ppa:odl-team/boron ` example above
186
+ would install OpenDaylight Boron realease from the [ odl-team's boron] [ 20 ] repo.
187
+
188
+ This is only read for Debian based operating systems. For RedHat based OSs,
189
+ this values is ` none ` .
182
190
183
191
### Ports
184
192
@@ -232,7 +240,7 @@ class { 'opendaylight':
232
240
#### Private classes
233
241
234
242
- ` ::opendaylight::params ` : Contains default ` opendaylight ` class param values.
235
- - ` ::opendaylight::install ` : Installs ODL from an RPM or tarball .
243
+ - ` ::opendaylight::install ` : Installs ODL from an RPM or a Deb .
236
244
- ` ::opendaylight::config ` : Manages ODL config, including Karaf features and
237
245
REST port.
238
246
- ` ::opendaylight::service ` : Starts the OpenDaylight service.
@@ -261,17 +269,6 @@ Default: `[]`
261
269
262
270
Valid options: A list of Karaf feature names as strings.
263
271
264
- ##### ` install_method `
265
-
266
- Specifies the install method by which to install OpenDaylight.
267
-
268
- The RPM install method is less complex, more frequently consumed and
269
- recommended.
270
-
271
- Default: ` 'rpm' `
272
-
273
- Valid options: The strings ` 'tarball' ` or ` 'rpm' ` .
274
-
275
272
##### ` odl_rest_port `
276
273
277
274
Specifies the port for the ODL northbound REST interface to listen on.
@@ -280,6 +277,16 @@ Default: `'8080'`
280
277
281
278
Valid options: A valid port number as a string or integer.
282
279
280
+ ##### ` rpm_repo `
281
+
282
+ OpenDaylight CentOS CBS repo to install RPM from (opendaylight-4-testing,
283
+ opendaylight-40-release, ...).
284
+
285
+ ##### ` deb_repo `
286
+
287
+ OpenDaylight Launchpad PPA repo to install .deb from (ppa: odl-team /boron,
288
+ ppa: odl-team /carbon, ...).
289
+
283
290
##### ` log_levels `
284
291
285
292
Custom OpenDaylight logger verbosity configuration.
@@ -350,27 +357,6 @@ Valid options: Index of a member of the array `ha_node_ips`: `0`.
350
357
351
358
Required by: ` enable_ha ` , ` ha_node_ips `
352
359
353
- ##### ` tarball_url `
354
-
355
- Specifies the ODL tarball to use when installing via the tarball install
356
- method.
357
-
358
- Default: ` 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.3.2-Lithium-SR2/distribution-karaf-0.3.2-Lithium-SR2.tar.gz' `
359
-
360
- Valid options: A valid URL to an ODL tarball as a string.
361
-
362
- ##### ` unitfile_url `
363
-
364
- Specifies the ODL systemd .service file to use when installing via the tarball
365
- install method.
366
-
367
- It's very unlikely that you'll need to override this.
368
-
369
- Default: ` 'https://github.com/dfarrell07/opendaylight-systemd/archive/master/opendaylight-unitfile.tar.gz' `
370
-
371
- Valid options: A valid URL to an ODL systemd .service file (archived in a
372
- tarball) as a string.
373
-
374
360
##### ` security_group_mode `
375
361
376
362
Specifies the mode to use for security groups.
@@ -398,10 +384,8 @@ Valid options: A string of valid Java options.
398
384
399
385
## Limitations
400
386
401
- - Tested on Fedora 22, 23, CentOS 7 and Ubuntu 14 .04.
387
+ - Tested on Fedora 22, 23, CentOS 7 and Ubuntu 16 .04.
402
388
- CentOS 7 is currently the most stable OS option.
403
- - The RPM install method is likely more reliable than the tarball install
404
- method.
405
389
406
390
## Development
407
391
@@ -445,5 +429,8 @@ See our [git commit history][17] for contributor information.
445
429
446
430
[ 17 ] : https://github.com/dfarrell07/puppet-opendaylight/commits/master
447
431
448
- [ 18] : ; < http://cbs.centos.org/repos/nfv7-opendaylight-40-release/x86_64/os/Packages/ > OpenDaylight Beryllium CentOS CBS repo
449
- [ 19] : ; < https://wiki.opendaylight.org/view/Deployment#RPM > OpenDaylight RPMs and their repos
432
+ [ 18 ] : < http://cbs.centos.org/repos/nfv7-opendaylight-40-release/x86_64/os/Packages/ > " OpenDaylight Beryllium CentOS CBS repo "
433
+
434
+ [ 19 ] : < https://wiki.opendaylight.org/view/Deployment#RPM > " OpenDaylight RPMs and their repos "
435
+
436
+ [ 20 ] : https://launchpad.net/~odl-team/+archive/ubuntu/boron
0 commit comments