arista-eos 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (131) hide show
  1. data/.gitignore +41 -0
  2. data/.rubocop.yml +21 -0
  3. data/Gemfile +57 -0
  4. data/Guardfile +21 -0
  5. data/LICENSE +28 -0
  6. data/README.md +178 -0
  7. data/Rakefile +46 -0
  8. data/eos.gemspec +36 -0
  9. data/guide/.gitignore +2 -0
  10. data/guide/Makefile +177 -0
  11. data/guide/_static/arista_logo_jpg-11.jpg +0 -0
  12. data/guide/_static/favicon.ico +0 -0
  13. data/guide/conf.py +282 -0
  14. data/guide/cookbook.rst +135 -0
  15. data/guide/developing.rst +55 -0
  16. data/guide/faq.rst +30 -0
  17. data/guide/index.rst +25 -0
  18. data/guide/installation.rst +174 -0
  19. data/guide/license.rst +5 -0
  20. data/guide/overview.rst +35 -0
  21. data/guide/quickstart.rst +184 -0
  22. data/guide/release-notes-1.0.rst +37 -0
  23. data/guide/release-notes-1.1.rst +25 -0
  24. data/guide/release-notes.rst +10 -0
  25. data/guide/testing.rst +8 -0
  26. data/guide/troubleshooting.rst +26 -0
  27. data/guide/typedoc.rst +928 -0
  28. data/guide/types.rst +44 -0
  29. data/lib/eos.rb +8 -0
  30. data/lib/eos/version.rb +5 -0
  31. data/lib/puppet/provider/eos_acl_entry/default.rb +122 -0
  32. data/lib/puppet/provider/eos_command/default.rb +61 -0
  33. data/lib/puppet/provider/eos_ethernet/default.rb +96 -0
  34. data/lib/puppet/provider/eos_interface/default.rb +89 -0
  35. data/lib/puppet/provider/eos_ipinterface/default.rb +89 -0
  36. data/lib/puppet/provider/eos_mlag/default.rb +86 -0
  37. data/lib/puppet/provider/eos_mlag_interface/default.rb +90 -0
  38. data/lib/puppet/provider/eos_ntp_config/default.rb +68 -0
  39. data/lib/puppet/provider/eos_ntp_server/default.rb +69 -0
  40. data/lib/puppet/provider/eos_portchannel/default.rb +117 -0
  41. data/lib/puppet/provider/eos_snmp/default.rb +77 -0
  42. data/lib/puppet/provider/eos_stp_interface/default.rb +73 -0
  43. data/lib/puppet/provider/eos_switchport/default.rb +100 -0
  44. data/lib/puppet/provider/eos_system/default.rb +63 -0
  45. data/lib/puppet/provider/eos_vlan/default.rb +93 -0
  46. data/lib/puppet/provider/eos_vxlan/default.rb +104 -0
  47. data/lib/puppet/provider/eos_vxlan_vlan/default.rb +89 -0
  48. data/lib/puppet/provider/eos_vxlan_vtep/default.rb +70 -0
  49. data/lib/puppet/type/eos_acl_entry.rb +126 -0
  50. data/lib/puppet/type/eos_command.rb +75 -0
  51. data/lib/puppet/type/eos_ethernet.rb +101 -0
  52. data/lib/puppet/type/eos_interface.rb +79 -0
  53. data/lib/puppet/type/eos_ipinterface.rb +116 -0
  54. data/lib/puppet/type/eos_mlag.rb +133 -0
  55. data/lib/puppet/type/eos_mlag_interface.rb +85 -0
  56. data/lib/puppet/type/eos_ntp_config.rb +70 -0
  57. data/lib/puppet/type/eos_ntp_server.rb +52 -0
  58. data/lib/puppet/type/eos_portchannel.rb +189 -0
  59. data/lib/puppet/type/eos_snmp.rb +127 -0
  60. data/lib/puppet/type/eos_stp_interface.rb +94 -0
  61. data/lib/puppet/type/eos_switchport.rb +150 -0
  62. data/lib/puppet/type/eos_system.rb +69 -0
  63. data/lib/puppet/type/eos_vlan.rb +130 -0
  64. data/lib/puppet/type/eos_vxlan.rb +150 -0
  65. data/lib/puppet/type/eos_vxlan_vlan.rb +78 -0
  66. data/lib/puppet/type/eos_vxlan_vtep.rb +62 -0
  67. data/lib/puppet_x/eos/provider.rb +86 -0
  68. data/lib/puppet_x/eos/utils/helpers.rb +34 -0
  69. data/metadata.json +20 -0
  70. data/spec/fixtures/README +61 -0
  71. data/spec/fixtures/ethernet.json +9 -0
  72. data/spec/fixtures/fixture_stp.yaml +11 -0
  73. data/spec/fixtures/fixture_vxlan_get.yaml +11 -0
  74. data/spec/fixtures/ospf.json +13 -0
  75. data/spec/fixtures/snmp.json +6 -0
  76. data/spec/fixtures/varp.json +11 -0
  77. data/spec/spec_helper.rb +27 -0
  78. data/spec/support/fixtures.rb +74 -0
  79. data/spec/support/shared_examples_for_providers.rb +7 -0
  80. data/spec/support/shared_examples_for_types.rb +451 -0
  81. data/spec/unit/puppet/provider/eos_acl_entry/default_spec.rb +226 -0
  82. data/spec/unit/puppet/provider/eos_acl_entry/fixture_acl_entry.yaml +20 -0
  83. data/spec/unit/puppet/provider/eos_ethernet/default_spec.rb +226 -0
  84. data/spec/unit/puppet/provider/eos_ethernet/fixture_ethernet.yaml +8 -0
  85. data/spec/unit/puppet/provider/eos_interface/default_spec.rb +176 -0
  86. data/spec/unit/puppet/provider/eos_interface/fixture_interfaces.yaml +5 -0
  87. data/spec/unit/puppet/provider/eos_ipinterface/default_spec.rb +223 -0
  88. data/spec/unit/puppet/provider/eos_ipinterface/fixture_ipinterfaces.yaml +5 -0
  89. data/spec/unit/puppet/provider/eos_mlag/default_spec.rb +203 -0
  90. data/spec/unit/puppet/provider/eos_mlag/fixture_mlag.yaml +11 -0
  91. data/spec/unit/puppet/provider/eos_mlag_interface/default_spec.rb +177 -0
  92. data/spec/unit/puppet/provider/eos_mlag_interface/fixture_mlag.yaml +11 -0
  93. data/spec/unit/puppet/provider/eos_ntp_config/default_spec.rb +150 -0
  94. data/spec/unit/puppet/provider/eos_ntp_config/fixture_ntp.yaml +3 -0
  95. data/spec/unit/puppet/provider/eos_ntp_server/default_spec.rb +152 -0
  96. data/spec/unit/puppet/provider/eos_ntp_server/fixture_ntp.yaml +3 -0
  97. data/spec/unit/puppet/provider/eos_portchannel/default_spec.rb +271 -0
  98. data/spec/unit/puppet/provider/eos_portchannel/fixture_portchannels.yaml +10 -0
  99. data/spec/unit/puppet/provider/eos_snmp/default_spec.rb +193 -0
  100. data/spec/unit/puppet/provider/eos_snmp/fixture_snmp.yaml +6 -0
  101. data/spec/unit/puppet/provider/eos_stp_interface/default_spec.rb +138 -0
  102. data/spec/unit/puppet/provider/eos_switchport/default_spec.rb +250 -0
  103. data/spec/unit/puppet/provider/eos_switchport/fixture_switchports.yaml +7 -0
  104. data/spec/unit/puppet/provider/eos_system/default_spec.rb +129 -0
  105. data/spec/unit/puppet/provider/eos_system/fixture_system.yaml +2 -0
  106. data/spec/unit/puppet/provider/eos_vlan/default_spec.rb +228 -0
  107. data/spec/unit/puppet/provider/eos_vlan/fixture_vlans.yaml +6 -0
  108. data/spec/unit/puppet/provider/eos_vxlan/default_spec.rb +229 -0
  109. data/spec/unit/puppet/provider/eos_vxlan/fixture_vxlan.yaml +9 -0
  110. data/spec/unit/puppet/provider/eos_vxlan_vlan/default_spec.rb +148 -0
  111. data/spec/unit/puppet/provider/eos_vxlan_vtep/default_spec.rb +140 -0
  112. data/spec/unit/puppet/type/eos_acl_entry_spec.rb +103 -0
  113. data/spec/unit/puppet/type/eos_command_spec.rb +67 -0
  114. data/spec/unit/puppet/type/eos_ethernet_spec.rb +87 -0
  115. data/spec/unit/puppet/type/eos_interface_spec.rb +67 -0
  116. data/spec/unit/puppet/type/eos_ipinterface_spec.rb +84 -0
  117. data/spec/unit/puppet/type/eos_mlag_interface_spec.rb +62 -0
  118. data/spec/unit/puppet/type/eos_mlag_spec.rb +98 -0
  119. data/spec/unit/puppet/type/eos_ntp_config_spec.rb +58 -0
  120. data/spec/unit/puppet/type/eos_ntp_server_spec.rb +51 -0
  121. data/spec/unit/puppet/type/eos_portchannel_spec.rb +99 -0
  122. data/spec/unit/puppet/type/eos_snmp_spec.rb +87 -0
  123. data/spec/unit/puppet/type/eos_stp_interface_spec.rb +77 -0
  124. data/spec/unit/puppet/type/eos_switchport_spec.rb +88 -0
  125. data/spec/unit/puppet/type/eos_system_spec.rb +57 -0
  126. data/spec/unit/puppet/type/eos_vlan_spec.rb +86 -0
  127. data/spec/unit/puppet/type/eos_vxlan_spec.rb +100 -0
  128. data/spec/unit/puppet/type/eos_vxlan_vlan_spec.rb +73 -0
  129. data/spec/unit/puppet/type/eos_vxlan_vtep_spec.rb +52 -0
  130. data/tests/init.pp +12 -0
  131. metadata +437 -0
@@ -0,0 +1,37 @@
1
+ Release 1.0 - May 2015
2
+ ========================
3
+
4
+ .. contents:: :local:
5
+
6
+ * Initial public release to Puppet Forge
7
+
8
+ See `GitHub issues <https://github.com/arista-eosplus/puppet-eos/issues>`_ for the current state of any known issues.
9
+
10
+ New Types
11
+ ---------
12
+
13
+ * eos_ethernet
14
+ * eos_interface
15
+ * eos_ipinterface
16
+ * eos_mlag
17
+ * eos_mlag_interface
18
+ * eos_ntp_config
19
+ * eos_ntp_server
20
+ * eos_portchannel
21
+ * eos_snmp
22
+ * eos_switchport
23
+ * eos_system
24
+ * eos_vlan
25
+ * eos_vxlan
26
+ * eos_vxlan_vlan
27
+ * eos_vxlan_vtep
28
+
29
+ Enhancements
30
+ ------------
31
+
32
+ Resolved Issues
33
+ ---------------
34
+
35
+ Known Issues
36
+ ------------
37
+
@@ -0,0 +1,25 @@
1
+ Release 1.1 - July 2015
2
+ ========================
3
+
4
+ .. contents:: :local:
5
+
6
+ * Adds 3 new types
7
+
8
+ See `GitHub issues <https://github.com/arista-eosplus/puppet-eos/issues>`_ for the current state of any known issues.
9
+
10
+ New Types
11
+ ---------
12
+
13
+ * eos_acl_entry
14
+ * eos_stp_interface
15
+ * eos_command
16
+
17
+ Enhancements
18
+ ------------
19
+
20
+ Resolved Issues
21
+ ---------------
22
+
23
+ Known Issues
24
+ ------------
25
+
@@ -0,0 +1,10 @@
1
+ Release Notes
2
+ =============
3
+
4
+ .. toctree::
5
+ :maxdepth: 2
6
+ :titlesonly:
7
+
8
+ release-notes-1.1
9
+ release-notes-1.0
10
+
@@ -0,0 +1,8 @@
1
+ Testing Modules
2
+ ===============
3
+
4
+ .. contents:: :local:
5
+
6
+ Step 1
7
+ ------
8
+
@@ -0,0 +1,26 @@
1
+ .. _troubleshooting:
2
+
3
+ Troubleshooting
4
+ ===============
5
+
6
+ .. contents:: :local:
7
+
8
+ Introduction
9
+ ------------
10
+
11
+ The Puppet-EOS module is developed by Arista EOS+ CS and supported by the Arista EOS+ community. Support for the module as well as using Puppet with Arista EOS nodes is provided on a best effort basis by the Arista EOS+ CS team and the community. Support for the puppet-enterprise agent extension is provided by PuppetLabs.
12
+
13
+ For customers looking for a premium level of support, please contact your local Arista account team or email `eosplus@arista.com <mailto://eosplus@arista.com>`_ for assistance.
14
+
15
+ Submitting Issues
16
+ -----------------
17
+
18
+ The Arista EOS+ CS development team uses `Github Issues <https://github.com/arista-eosplus/puppet-eos/issues>`_ to track discovered bugs and enhancement request to the Puppet-EOS module.
19
+
20
+ For defect issues, please provide as much relevant data as possible as to what is causing the issue, if and how it is reproducible, the version of EOS and Puppet being run.
21
+
22
+ For enhancement requests, please provide a brief description of the enhancement request, a use case, and the version of EOS to be supported.
23
+
24
+ The issue tracker is monitored by Arista EOS+ CS and issues submitted are categorized and scheduled for inclusion in upcoming Puppet-EOS versions.
25
+
26
+
@@ -0,0 +1,928 @@
1
+ **This page is autogenerated; any changes will get overwritten** *(last
2
+ generated on 2015-07-07 06:31:27 -0400)*
3
+
4
+ Resource Types
5
+ --------------
6
+
7
+ - The *namevar* is the parameter used to uniquely identify a type
8
+ instance. This is the parameter that gets assigned when a string is
9
+ provided before the colon in a type declaration. In general, only
10
+ developers will need to worry about which parameter is the
11
+ ``namevar``.
12
+
13
+ In the following code:
14
+
15
+ ::
16
+
17
+ file { "/etc/passwd":
18
+ owner => root,
19
+ group => root,
20
+ mode => 644
21
+ }
22
+
23
+ ``/etc/passwd`` is considered the title of the file object (used for
24
+ things like dependency handling), and because ``path`` is the namevar
25
+ for ``file``, that string is assigned to the ``path`` parameter.
26
+
27
+ - *Parameters* determine the specific configuration of the instance.
28
+ They either directly modify the system (internally, these are called
29
+ properties) or they affect how the instance behaves (e.g., adding a
30
+ search path for ``exec`` instances or determining recursion on
31
+ ``file`` instances).
32
+
33
+ - *Providers* provide low-level functionality for a given resource
34
+ type. This is usually in the form of calling out to external
35
+ commands.
36
+
37
+ When required binaries are specified for providers, fully qualifed paths
38
+ indicate that the binary must exist at that specific path and
39
+ unqualified binaries indicate that Puppet will search for the binary
40
+ using the shell path.
41
+
42
+ - *Features* are abilities that some providers might not support. You
43
+ can use the list of supported features to determine how a given
44
+ provider can be used.
45
+
46
+ Resource types define features they can use, and providers can be tested
47
+ to see which features they provide.
48
+
49
+ --------------
50
+
51
+ eos\_acl\_entry
52
+ ~~~~~~~~~~~~~~~
53
+
54
+ This type provides management of ACLs on the Arista EOS node from within
55
+ Puppet.
56
+
57
+ Parameters
58
+ ^^^^^^^^^^
59
+
60
+ acltype : The ACL type which is either standard and extended. Standard
61
+ ACLs filter only on the source IP address. Extended ACLs allow
62
+ specification of source and destination IP addresses.
63
+
64
+ Valid values are ``standard``, ``extended``.
65
+
66
+ action : The action for the rule can be either permit or deny. Deny is
67
+ the default value. Packets filtered by a permit rule are accepted by
68
+ interfaces to which the ACL is applied. Packets filtered by a deny rule
69
+ are dropped by interfaces to which the ACL is applied.
70
+
71
+ Valid values are ``permit``, ``deny``.
72
+
73
+ ensure : The basic property that the resource should be in.
74
+
75
+ Valid values are ``present``, ``absent``.
76
+
77
+ log : When set to true, triggers an informational log message to the
78
+ console about hte matching packet.
79
+
80
+ Valid values are ``true``, ``false``.
81
+
82
+ name : The name parameter is a composite namevar that combines the
83
+ access-list name and the sequence number delimited by the colon (:)
84
+ character
85
+
86
+ For example, if the access-list name is foo and the sequence number for
87
+ this rule is 10 the namvar would be constructed as "foo:10"
88
+
89
+ The composite namevar is required to uniquely identify the specific list
90
+ and rule to configure
91
+
92
+ provider : The specific backend to use for this ``eos_acl_entry``
93
+ resource. You will seldom need to specify this --- Puppet will usually
94
+ discover the appropriate provider for your platform.Available providers
95
+ are:
96
+
97
+ eos :
98
+
99
+ srcaddr : The source IP address. The following options are supported:
100
+
101
+ network\_address - subnet address where srcprefixlen defines mask any -
102
+ Packets from all addresses are filtered. host ip\_addr - IP address
103
+ (dotted decimal notation)
104
+
105
+ srcprefixlen : The source address prefix len used when srcaddr is a
106
+ network address to define the subnet. Values range from 0 to 32.
107
+
108
+ --------------
109
+
110
+ eos\_command
111
+ ~~~~~~~~~~~~
112
+
113
+ Execute commands on the EOS node. Commands can be either priviledged
114
+ mode (enable) commands or configuration commands.
115
+
116
+ Parameters
117
+ ^^^^^^^^^^
118
+
119
+ commands : The specific backend to use for this ``eos_command``
120
+ resource. You will seldom need to specify this --- Puppet will usually
121
+ discover the appropriate provider for your platform.Available providers
122
+ are:
123
+
124
+ eos :
125
+
126
+ --------------
127
+
128
+ eos\_ethernet
129
+ ~~~~~~~~~~~~~
130
+
131
+ This type provides management of physical Ethernet interfaces on Arista
132
+ EOS nodes from within Puppet. Physical Ethernet interfaces include the
133
+ physical characteristics of front panel data plane ports with but does
134
+ not include the out-of-band Management interface.
135
+
136
+ Parameters
137
+ ^^^^^^^^^^
138
+
139
+ description : The one line description to configure for the interface.
140
+ The description can be any valid alphanumeric string including symbols
141
+ and spaces.
142
+
143
+ enable : The enable value configures the administrative state of the
144
+ physical Ethernet interfaces. Valid values for enable are:
145
+
146
+ - true - Administratively enables the Ethernet interface
147
+ - false - Administratively disables the Ethernet interface
148
+
149
+ Valid values are ``true``, ``false``.
150
+
151
+ flowcontrol\_receive : This property configures the flowcontrol receive
152
+ value for the specified Ethernet interface. Valid values for flowcontrol
153
+ are:
154
+
155
+ - on - Configures flowcontrol receive on
156
+ - off - Configures flowcontrol receive off
157
+
158
+ Valid values are ``on``, ``off``.
159
+
160
+ flowcontrol\_send : This property configures the flowcontrol send value
161
+ for the specified Ethernet interface. Valid values for flowcontrol are:
162
+
163
+ - on - Configures flowcontrol send on
164
+ - off - Configures flowcontrol send off
165
+
166
+ Valid values are ``on``, ``off``.
167
+
168
+ name : The name of the physical interface to configure. The interface
169
+ name must coorelate to the full physical interface identifier in EOS.
170
+
171
+ provider : The specific backend to use for this ``eos_ethernet``
172
+ resource. You will seldom need to specify this --- Puppet will usually
173
+ discover the appropriate provider for your platform.Available providers
174
+ are:
175
+
176
+ eos :
177
+
178
+ --------------
179
+
180
+ eos\_interface
181
+ ~~~~~~~~~~~~~~
182
+
183
+ This type provides management of Arista EOS interfaces. The type is used
184
+ as a basis type for any interface available in EOS and therefore the
185
+ properties are common across all interface types
186
+
187
+ Parameters
188
+ ^^^^^^^^^^
189
+
190
+ description : The one line description to configure for the interface.
191
+ The description can be any valid alphanumeric string including symbols
192
+ and spaces.
193
+
194
+ enable : The enable value configures the administrative state of the
195
+ specified interface. Valid values for enable are:
196
+
197
+ - true - Administratively enables the interface
198
+ - false - Administratively disables the interface
199
+
200
+ Valid values are ``true``, ``false``.
201
+
202
+ ensure : The basic property that the resource should be in.
203
+
204
+ Valid values are ``present``, ``absent``.
205
+
206
+ name : The name parameter specifies the full interface identifier of the
207
+ Arista EOS interface to manage. This value must correspond to a valid
208
+ interface identifier in EOS.
209
+
210
+ provider : The specific backend to use for this ``eos_interface``
211
+ resource. You will seldom need to specify this --- Puppet will usually
212
+ discover the appropriate provider for your platform.Available providers
213
+ are:
214
+
215
+ eos :
216
+
217
+ --------------
218
+
219
+ eos\_ipinterface
220
+ ~~~~~~~~~~~~~~~~
221
+
222
+ This type provides management of logical IP interfaces configured in
223
+ EOS. It provides configuration of IPv4 properties on physical interfaces
224
+ and logical virtual interfaces.
225
+
226
+ Parameters
227
+ ^^^^^^^^^^
228
+
229
+ address : The address property configures the IPv4 address on the
230
+ specified interface. The address value is configured using address/mask
231
+ format.
232
+
233
+ For example
234
+
235
+ ::
236
+
237
+ address => 192.168.10.16/24
238
+
239
+ ensure : The basic property that the resource should be in.
240
+
241
+ Valid values are ``present``, ``absent``.
242
+
243
+ helper\_addresses : The helper\_addresses property configures the list
244
+ of IP helper addresses on the specified interface. IP helper addresses
245
+ configure a list of forwarding address to send send broadcast traffic to
246
+ as unicast, typically used to assist DHCP relay.
247
+
248
+ Helper addresses are configured using dotted decimal notation. For
249
+ example
250
+
251
+ ::
252
+
253
+ helper_addresses => ['192.168.10.254', '192.168.11.254']
254
+
255
+ mtu : The mtu property configures the IP interface MTU value which
256
+ specifies the largest IP datagram that can pass over the interface
257
+ without fragementation. The MTU value is specified in bytes and accepts
258
+ an integer in the range of 68 to 9214.
259
+
260
+ name : The name parameter specifies the full interface identifier of the
261
+ Arista EOS interface to manage. This value must correspond to a valid
262
+ interface identifier in EOS.
263
+
264
+ provider : The specific backend to use for this ``eos_ipinterface``
265
+ resource. You will seldom need to specify this --- Puppet will usually
266
+ discover the appropriate provider for your platform.Available providers
267
+ are:
268
+
269
+ eos :
270
+
271
+ --------------
272
+
273
+ eos\_mlag
274
+ ~~~~~~~~~
275
+
276
+ This type manages the global MLAG instance on EOS nodes. It provides
277
+ configuration for global MLAG configuration parameters.
278
+
279
+ Parameters
280
+ ^^^^^^^^^^
281
+
282
+ domain\_id : The domain\_id property configures the MLAG domain-id value
283
+ for the global MLAG configuration instance. The domain-id setting
284
+ identifies the domain name for the MLAG domain. Valid values include
285
+ alphanumeric characters
286
+
287
+ enable : The enable property configures the admininstrative state of the
288
+ global MLAG configuration. Valid values for enable are:
289
+
290
+ - true - globally enables the MLAG configuration
291
+ - false - glboally disables the MLAG configuration
292
+
293
+ Valid values are ``true``, ``false``.
294
+
295
+ local\_interface : The local\_interface property configures the MLAG
296
+ local-interface value for the global MLAG configuration instance. The
297
+ local-interface setting specifies the VLAN SVI to send MLAG control
298
+ traffic on.
299
+
300
+ Valid values must be a VLAN SVI identifier
301
+
302
+ name : The name parameter identifies the global MLAG instance for
303
+ configuration and should be configured as 'settings'. All other values
304
+ for name will be siliently ignored by the eos\_mlag provider.
305
+
306
+ peer\_address : The peer\_address property configures the MLAG
307
+ peer-address value for the global MLAG configuration instance. The
308
+ peer-address setting specifieds the MLAG peer control endpoint IP
309
+ address.
310
+
311
+ The specified value must be a valid IP address
312
+
313
+ peer\_link : The peer\_link property configures the MLAG peer-link value
314
+ for the glboal MLAG configuration instance. The peer-link setting
315
+ specifies the interface used to communicate control traffic to the MLAG
316
+ peer
317
+
318
+ The provided value must be a valid Ethernet or Port-Channel interface
319
+ identifer
320
+
321
+ provider : The specific backend to use for this ``eos_mlag`` resource.
322
+ You will seldom need to specify this --- Puppet will usually discover
323
+ the appropriate provider for your platform.Available providers are:
324
+
325
+ eos :
326
+
327
+ --------------
328
+
329
+ eos\_mlag\_interface
330
+ ~~~~~~~~~~~~~~~~~~~~
331
+
332
+ This type manages MLAG interfaces on the node used to establish a valid
333
+ MLAG with a peer switch. The mlag\_id parameter is required for this
334
+ type.
335
+
336
+ Parameters
337
+ ^^^^^^^^^^
338
+
339
+ ensure : The basic property that the resource should be in.
340
+
341
+ Valid values are ``present``, ``absent``.
342
+
343
+ mlag\_id : The mlag\_id property assigns a MLAG ID to a Port-Channel
344
+ interface used for forming a MLAG with a peer switch. Only one MLAG ID
345
+ can be associated with an interface.
346
+
347
+ Valid values are in the range of 1 to 2000
348
+
349
+ **Note** Changing this value on an operational link will cause traffic
350
+ distruption
351
+
352
+ name : The name property identifies the interface to be present or
353
+ absent from the MLAG interface list. The interface must be of type
354
+ portchannel.
355
+
356
+ This property expectes the full interface identifier
357
+
358
+ provider : The specific backend to use for this ``eos_mlag_interface``
359
+ resource. You will seldom need to specify this --- Puppet will usually
360
+ discover the appropriate provider for your platform.Available providers
361
+ are:
362
+
363
+ eos :
364
+
365
+ --------------
366
+
367
+ eos\_ntp\_config
368
+ ~~~~~~~~~~~~~~~~
369
+
370
+ This type manages the nodes global NTP configuration settings. It
371
+ provides a configuration resource for setting global NTP values
372
+
373
+ Parameters
374
+ ^^^^^^^^^^
375
+
376
+ name : The name parameter identifies the global NTP instance for
377
+ configuration and should be configured as 'settings'. All other values
378
+ for name will be siliently ignored by the provider.
379
+
380
+ provider : The specific backend to use for this ``eos_ntp_config``
381
+ resource. You will seldom need to specify this --- Puppet will usually
382
+ discover the appropriate provider for your platform.Available providers
383
+ are:
384
+
385
+ eos :
386
+
387
+ source\_interface : The source interface property provides configuration
388
+ management of the NTP source-interface value. The source interface value
389
+ configures the interface address to use as the source address when
390
+ sending NTP packets on the network.
391
+
392
+ The default value for source\_interface is ''
393
+
394
+ --------------
395
+
396
+ eos\_ntp\_server
397
+ ~~~~~~~~~~~~~~~~
398
+
399
+ This type manages the list of NTP servers. It provides a configuration
400
+ resource for managing the list of NTP servers used by the node.
401
+
402
+ Parameters
403
+ ^^^^^^^^^^
404
+
405
+ ensure : The basic property that the resource should be in.
406
+
407
+ Valid values are ``present``, ``absent``.
408
+
409
+ name : The name parameter configures the NTP server list by adding or
410
+ removing NTP server entries. The value can be configured as either the
411
+ host IP address or the fully qualified domain name of the desired NTP
412
+ server.
413
+
414
+ provider : The specific backend to use for this ``eos_ntp_server``
415
+ resource. You will seldom need to specify this --- Puppet will usually
416
+ discover the appropriate provider for your platform.Available providers
417
+ are:
418
+
419
+ eos :
420
+
421
+ --------------
422
+
423
+ eos\_portchannel
424
+ ~~~~~~~~~~~~~~~~
425
+
426
+ This type manages Port-Channel interface instances on Arista EOS nodes.
427
+ It provides configuration resources for logical Port-Channel instances
428
+ and settings
429
+
430
+ Parameters
431
+ ^^^^^^^^^^
432
+
433
+ description : The one line description to configure for the interface.
434
+ The description can be any valid alphanumeric string including symbols
435
+ and spaces.
436
+
437
+ The default value for description is ''
438
+
439
+ enable : The enable value configures the administrative state of the
440
+ specified interface. Valid values for enable are:
441
+
442
+ ::
443
+
444
+ * true - Administratively enables the interface
445
+ * false - Administratively disables the interface
446
+
447
+ The default value for enable is :true
448
+
449
+ Valid values are ``true``, ``false``.
450
+
451
+ ensure : The basic property that the resource should be in.
452
+
453
+ Valid values are ``present``, ``absent``.
454
+
455
+ lacp\_fallback : The lacp\_fallback property configures the port-channel
456
+ lacp fallback setting in EOS for the specified interface. This setting
457
+ accepts the following values
458
+
459
+ ::
460
+
461
+ * static - Fallback to static LAG mode
462
+ * individual - Fallback to individual ports
463
+ * disabled - Disable LACP fallback
464
+
465
+ The default value for lacp\_fallback is :disabled
466
+
467
+ Valid values are ``static``, ``individual``, ``disabled``.
468
+
469
+ lacp\_mode : The lacp\_mode property configures the LACP operating mode
470
+ of the Port-Channel interface. The LACP mode supports the following
471
+ valid values
472
+
473
+ ::
474
+
475
+ * active - Interface is an active LACP port that transmits and
476
+ receives LACP negotiation packets.
477
+ * passive - Interface is a passive LACP port that only responds
478
+ to LACP negotiation packets.
479
+ * on - Interface is a static port channel, LACP disabled.
480
+
481
+ The default value for lacp\_mode is :on
482
+
483
+ Valid values are ``active``, ``passive``, ``on``.
484
+
485
+ lacp\_timeout : The lacp\_timeout property configures the port-channel
486
+ lacp timeout value in EOS for the specified interface. The fallback
487
+ timeout configures the period an interface in fallback mode remains in
488
+ LACP mode without receiving a PDU.
489
+
490
+ The lacp\_timeout value is configured in seconds with a valid range
491
+ betwee 1 and 100.
492
+
493
+ The default value is 90
494
+
495
+ members : The members property manages the Array of physical interfaces
496
+ that comprise the logical Port-Channel interface. Each entry in the
497
+ members Array must be the full interface identifer of a physical
498
+ interface name.
499
+
500
+ The default value for members is []
501
+
502
+ minimum\_links : The minimum links property configures the port-channel
503
+ min-links value. This setting specifies the minimum number of physical
504
+ interfaces that must be operationally up for the Port-Channel interface
505
+ to be considered operationally up.
506
+
507
+ Valid range of values for the minimum\_links property are from 0 to 16.
508
+
509
+ The default value for minimum\_links is 0
510
+
511
+ name : The name parameter specifies the name of the Port-Channel
512
+ interface to configure. The value must be the full interface name
513
+ identifier that corresponds to a valid interface name in EOS.
514
+
515
+ provider : The specific backend to use for this ``eos_portchannel``
516
+ resource. You will seldom need to specify this --- Puppet will usually
517
+ discover the appropriate provider for your platform.Available providers
518
+ are:
519
+
520
+ eos :
521
+
522
+ --------------
523
+
524
+ eos\_snmp
525
+ ~~~~~~~~~
526
+
527
+ This type manages the global SNMP configuration instance on EOS nodes.
528
+ It provides configuration resources for global SNMP settings.
529
+
530
+ Parameters
531
+ ^^^^^^^^^^
532
+
533
+ chassis\_id : The chassis id propperty provides configuration management
534
+ of the SNMP chassis-id value. This setting typically provides
535
+ information to uniquely identify the SNMP agent host.
536
+
537
+ The default value for chassis\_id is ''
538
+
539
+ contact : The contact property provides configuration management of the
540
+ SNMP contact value. This setting provides informative text that
541
+ typically displays the name of a person or organization associated with
542
+ the SNMP agent.
543
+
544
+ The default value for contact is ''
545
+
546
+ location : The location property provides configuration management of
547
+ the SNMP location value. This setting typcially provides information
548
+ about the physical lcoation of the SNMP agent.
549
+
550
+ The default value for location is ''
551
+
552
+ name : The name parameter identifis the global SNMP instance for
553
+ configuration and should be configured as 'settings'. All other values
554
+ for name will be silently ignored by the eos\_snmp provider.
555
+
556
+ provider : The specific backend to use for this ``eos_snmp`` resource.
557
+ You will seldom need to specify this --- Puppet will usually discover
558
+ the appropriate provider for your platform.Available providers are:
559
+
560
+ eos :
561
+
562
+ source\_interface : The source interface property provides configuration
563
+ management of the SNMP source-interface value. The source interface
564
+ value configures the interface address to use as the source address when
565
+ sending SNMP packets on the network.
566
+
567
+ The default value for source\_interface is ''
568
+
569
+ --------------
570
+
571
+ eos\_stp\_config
572
+ ~~~~~~~~~~~~~~~~
573
+
574
+ Configure global STP settings in EOS
575
+
576
+ Parameters
577
+ ^^^^^^^^^^
578
+
579
+ mode : Specifies STP mode of operation
580
+
581
+ Valid values are ``mstp``, ``none``.
582
+
583
+ name : The resource name for the STP instance
584
+
585
+ provider : The specific backend to use for this ``eos_stp_config``
586
+ resource. You will seldom need to specify this --- Puppet will usually
587
+ discover the appropriate provider for your platform.Available providers
588
+ are:
589
+
590
+ eos :
591
+
592
+ --------------
593
+
594
+ eos\_stp\_interface
595
+ ~~~~~~~~~~~~~~~~~~~
596
+
597
+ Manage Spanning Tree Protocol interface configuration.
598
+
599
+ Parameters
600
+ ^^^^^^^^^^
601
+
602
+ bpduguard : Enable or disable the BPDU guard on a port. A BPDU
603
+ guard-enabled port is disabled when it receives a BPDU packet. Disabled
604
+ ports differ from blocked ports in that they are re-enabled only through
605
+ manual intervention. Valid BPDU guard values:
606
+
607
+ - true - Enable the BPDU guard for the interface
608
+ - false - Disable the BPDU guard for the interface (default value)
609
+
610
+ Valid values are ``true``, ``false``.
611
+
612
+ name : The name parameter specifies the full interface identifier of the
613
+ Arista EOS interface to manage. This value must correspond to a valid
614
+ interface identifier in EOS and must be either an Ethernet or Port
615
+ Channel interface.
616
+
617
+ portfast : The portfast property programs an STP port to immediately
618
+ enter forwarding state when they establish a link. PortFast ports are
619
+ included in spanning tree topology calculations and can enter blocking
620
+ state. Valid portfast values:
621
+
622
+ - true - Enable portfast for the interface
623
+ - false - Disable portfast for the interface (default value)
624
+
625
+ Valid values are ``true``, ``false``.
626
+
627
+ portfast\_type : Specifies the STP portfast mode type for the interface.
628
+ A port with edge type connect to hosts and transition to the forwarding
629
+ state when the link is established. An edge port that receives a BPDU
630
+ becomes a normal port. A port with network type connect only to switches
631
+ or bridges and support bridge assurance. Network ports that connect to
632
+ hosts or other edge devices transition ot the blocking state. Valid
633
+ portfast mode types:
634
+
635
+ - edge - Set STP port mode type to edge.
636
+ - network - Set STP port mode type to network.
637
+ - normal - Set STP port mode type to normal (default value)
638
+
639
+ Valid values are ``edge``, ``network``, ``normal``.
640
+
641
+ provider : The specific backend to use for this ``eos_stp_interface``
642
+ resource. You will seldom need to specify this --- Puppet will usually
643
+ discover the appropriate provider for your platform.Available providers
644
+ are:
645
+
646
+ eos :
647
+
648
+ --------------
649
+
650
+ eos\_switchport
651
+ ~~~~~~~~~~~~~~~
652
+
653
+ This type provides a resource for configuring logical layer 2
654
+ switchports in EOS. The resource provides configuration for both access
655
+ and trunk operating modes.
656
+
657
+ When creating a logical switchport interface, if the specified physical
658
+ interface was previously configured with an IP interface, the logical IP
659
+ interface will be removed.
660
+
661
+ Parameters
662
+ ^^^^^^^^^^
663
+
664
+ access\_vlan : The access\_vlan property specifies the VLAN ID to be
665
+ used for untagged traffic that enters the switchport when configured in
666
+ access mode. If the switchport is configured for trunk mode, this value
667
+ is configured but has no effect. The value must be an integer in the
668
+ valid VLAN ID range of 1 to 4094.
669
+
670
+ The default value for the access\_vlan is 1
671
+
672
+ ensure : The basic property that the resource should be in.
673
+
674
+ Valid values are ``present``, ``absent``.
675
+
676
+ mode : The mode property configures the operating mode of the logical
677
+ switchport. Suppport modes of operation include access port or trunk
678
+ port. The default value for a new switchport is access
679
+
680
+ - access - Configures the switchport mode to access
681
+ - trunk - Configures the switchport mode to trunk
682
+
683
+ Valid values are ``access``, ``trunk``.
684
+
685
+ name : The name parameter specifies the full interface identifier of the
686
+ Arista EOS interface to manage. This value must correspond to a valid
687
+ interface identifier in EOS.
688
+
689
+ Only Ethernet and Port-Channel interfaces can be configured as
690
+ switchports.
691
+
692
+ provider : The specific backend to use for this ``eos_switchport``
693
+ resource. You will seldom need to specify this --- Puppet will usually
694
+ discover the appropriate provider for your platform.Available providers
695
+ are:
696
+
697
+ eos :
698
+
699
+ trunk\_allowed\_vlans : The trunk\_allowed\_vlans property configures
700
+ the list of VLAN IDs that are allowed to pass on the switchport operting
701
+ in trunk mode. If the switchport is configured for access mode, this
702
+ property is configured but has no effect.
703
+
704
+ The list of allowed VLANs must be configured as an Array with each entry
705
+ in the valid VLAN range of 1 to 4094.
706
+
707
+ The default value for a new switchport is to allow all valid VLAN IDs
708
+ (1-4094).
709
+
710
+ trunk\_native\_vlan : The trunk\_native\_vlan property specifies the
711
+ VLAN ID to be used for untagged traffic that enters the switchport in
712
+ trunk mode. If the switchport is configured for access mode, this value
713
+ is configured but has no effect. The value must be an integer in the
714
+ valid VLAN ID range of 1 to 4094.
715
+
716
+ The default value for the trunk\_natve\_vlan is 1
717
+
718
+ --------------
719
+
720
+ eos\_system
721
+ ~~~~~~~~~~~
722
+
723
+ This type manages the global EOS node settings. It provides
724
+ configuration of global node attributes.
725
+
726
+ Parameters
727
+ ^^^^^^^^^^
728
+
729
+ hostname : The global system hostname is a locally significant value
730
+ that identifies the host portion of the nodes fully qualified domain
731
+ name (FQDN).
732
+
733
+ The default hostname for a new system is localhost'
734
+
735
+ name : The name parameter identifies the global node instance for
736
+ configuration and should be configured as 'settings'. All other values
737
+ for name will be siliently ignored by the eos\_system provider.
738
+
739
+ provider : The specific backend to use for this ``eos_system`` resource.
740
+ You will seldom need to specify this --- Puppet will usually discover
741
+ the appropriate provider for your platform.Available providers are:
742
+
743
+ eos :
744
+
745
+ --------------
746
+
747
+ eos\_vlan
748
+ ~~~~~~~~~
749
+
750
+ This type provides management of VLANs on the Arista EOS node from
751
+ within Puppet.
752
+
753
+ Parameters
754
+ ^^^^^^^^^^
755
+
756
+ enable : The enable property configures the administrative state of the
757
+ VLAN ID. When enable is configured as true, the ports forward traffic
758
+ configured with the specified VLAN and when enable is false, the
759
+ specified VLAN ID is blocked. Valid VLAN ID values:
760
+
761
+ - true - Administratively enable (active) the VLAN
762
+ - false - Administratively disable (suspend) the VLAN
763
+
764
+ Valid values are ``true``, ``false``.
765
+
766
+ ensure : The basic property that the resource should be in.
767
+
768
+ Valid values are ``present``, ``absent``.
769
+
770
+ provider : The specific backend to use for this ``eos_vlan`` resource.
771
+ You will seldom need to specify this --- Puppet will usually discover
772
+ the appropriate provider for your platform.Available providers are:
773
+
774
+ eos :
775
+
776
+ trunk\_groups : The trunk\_groups property assigns an array of trunk
777
+ group names to the specified VLANs. A trunk group is the set of physical
778
+ interfaces that comprise the trunk and the collection of VLANs whose
779
+ traffic is carried only on ports that are members of the trunk gorups to
780
+ which the VLAN belongs
781
+
782
+ Example configuration
783
+
784
+ ::
785
+
786
+ trunk_groups => ['group1', 'group2']
787
+
788
+ The default configure is an empty list
789
+
790
+ vlan\_name : The vlan\_name property configures the alphanumber VLAN
791
+ name setting in EOS. TThe name consists of up to 32 characters. The
792
+ system will automatically truncate any value larger than 32 characters.
793
+
794
+ vlanid : (**Namevar:** If omitted, this parameter's value defaults to
795
+ the resource's title.)
796
+
797
+ The name parameter specifies the VLAN ID to manage on the node. The VLAN
798
+ ID parameter must be in the valid VLAN ID range of 1 to 4094 expressed
799
+ as a String.
800
+
801
+ --------------
802
+
803
+ eos\_vxlan
804
+ ~~~~~~~~~~
805
+
806
+ This type mananges VXLAN interface configuration on Arista EOS nodes. It
807
+ provides configuration of logical Vxlan interface instances and settings
808
+
809
+ Parameters
810
+ ^^^^^^^^^^
811
+
812
+ description : The one line description to configure for the interface.
813
+ The description can be any valid alphanumeric string including symbols
814
+ and spaces.
815
+
816
+ The default value for description is ''
817
+
818
+ enable : The enable value configures the administrative state of the
819
+ specified interface. Valid values for enable are:
820
+
821
+ ::
822
+
823
+ * true - Administratively enables the interface
824
+ * false - Administratively disables the interface
825
+
826
+ The default value for enable is :true
827
+
828
+ Valid values are ``true``, ``false``.
829
+
830
+ ensure : The basic property that the resource should be in.
831
+
832
+ Valid values are ``present``, ``absent``.
833
+
834
+ multicast\_group : The multicast group property specifies the multicast
835
+ group address to use for VTEP communication. This value configures the
836
+ vxlan multicast-group value in EOS. The configured value must be a valid
837
+ multicast address in the range of 224/8.
838
+
839
+ The default value for multicast\_group is ''
840
+
841
+ name : The name parameter specifies the name of the Vxlan interface to
842
+ configure. The value must be the full interface name identifier that
843
+ corresponds to a valid interface name in EOS.
844
+
845
+ provider : The specific backend to use for this ``eos_vxlan`` resource.
846
+ You will seldom need to specify this --- Puppet will usually discover
847
+ the appropriate provider for your platform.Available providers are:
848
+
849
+ eos :
850
+
851
+ source\_interface : The source interface property specifies the
852
+ interface address to use to source Vxlan packets from. This value
853
+ configures the vxlan source-interface value in EOS
854
+
855
+ The default value for source\_interface is ''
856
+
857
+ udp\_port : The udp\_port property specifies the VXLAN UDP port
858
+ associated with sending and receiveing VXLAN traffic. This value
859
+ configures the vxlan udp-port value in EOS. The configured value must be
860
+ an integer in the range of 1024 to 65535.
861
+
862
+ The default value for the udp\_port setting is 4789
863
+
864
+ --------------
865
+
866
+ eos\_vxlan\_vlan
867
+ ~~~~~~~~~~~~~~~~
868
+
869
+ This type manages the VXLAN VLAN to VNI mappings in the nodes current
870
+ running configuration. It provides a resources for ensuring specific
871
+ mappings are present or absent
872
+
873
+ Parameters
874
+ ^^^^^^^^^^
875
+
876
+ ensure : The basic property that the resource should be in.
877
+
878
+ Valid values are ``present``, ``absent``.
879
+
880
+ name : The VLAN ID that is associated with this mapping in the valid
881
+ VLAN ID range of 1 to 4094. The VLAN ID is configured on the VXLAN VTI
882
+ with a one-to-one mapping to VNI.
883
+
884
+ provider : The specific backend to use for this ``eos_vxlan_vlan``
885
+ resource. You will seldom need to specify this --- Puppet will usually
886
+ discover the appropriate provider for your platform.Available providers
887
+ are:
888
+
889
+ eos :
890
+
891
+ vni : The VNI associate with the VLAN ID mapping on the VXLAN VTI
892
+ interface. The VNI value is an integer value in the range of 1 to
893
+ 16777215.
894
+
895
+ --------------
896
+
897
+ eos\_vxlan\_vtep
898
+ ~~~~~~~~~~~~~~~~
899
+
900
+ This type provides management of the global Vxlan VTEP flood list.
901
+
902
+ Parameters
903
+ ^^^^^^^^^^
904
+
905
+ ensure : The basic property that the resource should be in.
906
+
907
+ Valid values are ``present``, ``absent``.
908
+
909
+ name : The name property associates the IPv4 flood address on the
910
+ specified VXLAN VNI interface. The address value is configured using
911
+ address format.
912
+
913
+ For example
914
+
915
+ ::
916
+
917
+ name => 192.168.10.16
918
+
919
+ provider : The specific backend to use for this ``eos_vxlan_vtep``
920
+ resource. You will seldom need to specify this --- Puppet will usually
921
+ discover the appropriate provider for your platform.Available providers
922
+ are:
923
+
924
+ eos :
925
+
926
+ --------------
927
+
928
+ *This page autogenerated on 2015-07-07 06:31:31 -0400*