<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic EXOS configuration scripting tool in ExtremeSwitching (EXOS/Switch Engine)</title>
    <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55966#M16264</link>
    <description>Hi,&lt;BR /&gt;
&lt;BR /&gt;
Going to throw this out there in the hope the community has some ideas.&lt;BR /&gt;
&lt;BR /&gt;
I often find myself building configs with a lot of repative configuration statements, so was looking for a means of automating this.&lt;BR /&gt;
&lt;BR /&gt;
Have played a little with python, but I'm very new to it so can't quit adopt it for use.&lt;BR /&gt;
&lt;BR /&gt;
Found this article &lt;A href="https://codingnetworker.com/2015/09/configuration-generator-with-python-and-jinja2/" target="_blank" rel="nofollow noreferrer noopener"&gt;https://codingnetworker.com/2015/09/configuration-generator-with-python-and-jinja2/&lt;/A&gt; where I changed the config to match EXOS and used a CSV file to fill in the parameters:&lt;BR /&gt;
&lt;BR /&gt;
create vlan "{{ vlan-name }}"&lt;BR /&gt;
configure vlan {{ vlan-name }} tag {{ vlan-number }}&lt;BR /&gt;
configure vlan {{ vlan-name }} add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan {{ vlan-name }} ipaddress {{ vlan-ip }} 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan {{ vlan-name }}&lt;BR /&gt;
configure elrp-client periodic {{ vlan-name }} ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan {{ vlan-name }}&lt;BR /&gt;
create vrrp vlan {{ vlan-name }} vrid 1&lt;BR /&gt;
configure vrrp vlan {{ vlan-name }} vrid 1 add {{ vlan-vip }}&lt;BR /&gt;
configure vrrp vlan {{ vlan-name }} vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan {{ vlan-name }} vrid 1&lt;BR /&gt;
configure ospf vlan {{ vlan-name }} priority 0&lt;BR /&gt;
configure ospf add vlan {{ vlan-name }} area 0.0.0.0 passive&lt;BR /&gt;
This worked fine, except the elements above I need to repeat for every parameter listed. For example I might have 100 'vlan-name', 'vlan-number', 'vlan-ip' etc&lt;BR /&gt;
&lt;BR /&gt;
So I need it to cyclic through each of the parameters and stop when finished. Although the article details the use of JSON which might do the trick, the preparation of that file would take too long. Whereas the creation of a CSV file with all the details in would be much easier and quicker to create.&lt;BR /&gt;
&lt;BR /&gt;
Perhaps there is an easier way to do it, or something that already exits?&lt;BR /&gt;
&lt;BR /&gt;
Look forward to any answers.&lt;BR /&gt;
&lt;BR /&gt;
Thanks in advance&lt;BR /&gt;
&lt;BR /&gt;</description>
    <pubDate>Tue, 15 Aug 2017 04:21:00 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2017-08-15T04:21:00Z</dc:date>
    <item>
      <title>EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55966#M16264</link>
      <description>Hi,&lt;BR /&gt;
&lt;BR /&gt;
Going to throw this out there in the hope the community has some ideas.&lt;BR /&gt;
&lt;BR /&gt;
I often find myself building configs with a lot of repative configuration statements, so was looking for a means of automating this.&lt;BR /&gt;
&lt;BR /&gt;
Have played a little with python, but I'm very new to it so can't quit adopt it for use.&lt;BR /&gt;
&lt;BR /&gt;
Found this article &lt;A href="https://codingnetworker.com/2015/09/configuration-generator-with-python-and-jinja2/" target="_blank" rel="nofollow noreferrer noopener"&gt;https://codingnetworker.com/2015/09/configuration-generator-with-python-and-jinja2/&lt;/A&gt; where I changed the config to match EXOS and used a CSV file to fill in the parameters:&lt;BR /&gt;
&lt;BR /&gt;
create vlan "{{ vlan-name }}"&lt;BR /&gt;
configure vlan {{ vlan-name }} tag {{ vlan-number }}&lt;BR /&gt;
configure vlan {{ vlan-name }} add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan {{ vlan-name }} ipaddress {{ vlan-ip }} 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan {{ vlan-name }}&lt;BR /&gt;
configure elrp-client periodic {{ vlan-name }} ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan {{ vlan-name }}&lt;BR /&gt;
create vrrp vlan {{ vlan-name }} vrid 1&lt;BR /&gt;
configure vrrp vlan {{ vlan-name }} vrid 1 add {{ vlan-vip }}&lt;BR /&gt;
configure vrrp vlan {{ vlan-name }} vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan {{ vlan-name }} vrid 1&lt;BR /&gt;
configure ospf vlan {{ vlan-name }} priority 0&lt;BR /&gt;
configure ospf add vlan {{ vlan-name }} area 0.0.0.0 passive&lt;BR /&gt;
This worked fine, except the elements above I need to repeat for every parameter listed. For example I might have 100 'vlan-name', 'vlan-number', 'vlan-ip' etc&lt;BR /&gt;
&lt;BR /&gt;
So I need it to cyclic through each of the parameters and stop when finished. Although the article details the use of JSON which might do the trick, the preparation of that file would take too long. Whereas the creation of a CSV file with all the details in would be much easier and quicker to create.&lt;BR /&gt;
&lt;BR /&gt;
Perhaps there is an easier way to do it, or something that already exits?&lt;BR /&gt;
&lt;BR /&gt;
Look forward to any answers.&lt;BR /&gt;
&lt;BR /&gt;
Thanks in advance&lt;BR /&gt;
&lt;BR /&gt;</description>
      <pubDate>Tue, 15 Aug 2017 04:21:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55966#M16264</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-08-15T04:21:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55967#M16265</link>
      <description>Martin,&lt;BR /&gt;
&lt;BR /&gt;
A few questions.  Are you trying to automate configurations for multiple switches or a single switch?  &lt;BR /&gt;
&lt;BR /&gt;
If a single switch, then are you trying to create a script that will run directly on the switch and configure it live or something that will build a .xsf file that can later be executed on a switch?</description>
      <pubDate>Tue, 15 Aug 2017 20:29:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55967#M16265</guid>
      <dc:creator>Chad_Smith1</dc:creator>
      <dc:date>2017-08-15T20:29:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55968#M16266</link>
      <description>Hi Chad,&lt;BR /&gt;
&lt;BR /&gt;
Thanks for getting back.&lt;BR /&gt;
&lt;BR /&gt;
Generally I just create a config in a text editor, then just squirt it in (easier to see any errors then). In this instance it would be for just one switch and hopefully an easier option than configuring directly on the switch or creating an .xsf.&lt;BR /&gt;
&lt;BR /&gt;
It would be handy to have some kind of templating tool, that I could (take for example the config above) and get it to repeat over for all the entries I might have in a spreadsheet - that would be perfect!&lt;BR /&gt;
&lt;BR /&gt;
95% bulk of the config would then be created, and I can just add the common elements I use in all my configs to fill the rest out - which wouldn't take long.&lt;BR /&gt;
&lt;BR /&gt;
Its hours of work I could save by automating the repetitive commands with just the unique elements like VLAN name, Number, IP etc, that could be many hundreds of lines of code.&lt;BR /&gt;
&lt;BR /&gt;
Thanks.</description>
      <pubDate>Tue, 15 Aug 2017 21:16:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55968#M16266</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-08-15T21:16:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55969#M16267</link>
      <description>Hi, Martin. Chapter 8&lt;B&gt; &lt;/B&gt;of the &lt;I&gt;EXOS User Gui&lt;/I&gt;&lt;I&gt;de  &lt;/I&gt;describes how to do CLI scripting&lt;B&gt;. &lt;/B&gt;Here's a link to the &lt;A href="http://documentation.extremenetworks.com/exos_22.3/EXOS_21_1/CLI_Scripting/using-cli-scripting.shtml" target="_blank" rel="nofollow noreferrer noopener"&gt;first page of the chapter&lt;/A&gt;. Perhaps you'll find it helpful.&lt;BR /&gt;
&lt;BR /&gt;
Larry Kunz&lt;BR /&gt;
Information Development&lt;BR /&gt;
Extreme Networks</description>
      <pubDate>Tue, 15 Aug 2017 23:00:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55969#M16267</guid>
      <dc:creator>Larry_Kunz</dc:creator>
      <dc:date>2017-08-15T23:00:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55970#M16268</link>
      <description>Hi Larry,&lt;BR /&gt;
&lt;BR /&gt;
Thanks for the information.&lt;BR /&gt;
&lt;BR /&gt;
Had seen this previously, and I can see its value but not in what I want to achieve - although admittedly some of it goes over my head.&lt;BR /&gt;
&lt;BR /&gt;
To take an example from the section you gave, this piece of code is given:&lt;BR /&gt;
&lt;BR /&gt;
enable cli scripting  Set var count 1  while ($count &amp;lt; 101) do  Create vlan v$count  configure vlan v$count ipaddress 10.$(count).1.1/16  set var count ($count + 1)  endwhile  show vlan  &lt;BR /&gt;
This is useful in creating a 100 VLANs should the IP address used be uniform to (count), but this is rarely the case, and the method couldn't be used to supplement a Name that could be anything, and a tag number that also wouldn't be uniform to a count.&lt;BR /&gt;
&lt;BR /&gt;
The information I need to enter though I already have in a spreadsheet that I used to create a schema, so I can extrapolate any of that information in any form, but I need to be able to add it on mass to make the config generator of any use, as it could be hundreds of different lines.&lt;BR /&gt;
&lt;BR /&gt;
Do yo know anyway to do that with anything that exists within Extreme or any tool that might be good at the job?&lt;BR /&gt;
&lt;BR /&gt;
Many thanks&lt;BR /&gt;
&lt;BR /&gt;</description>
      <pubDate>Tue, 15 Aug 2017 23:39:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55970#M16268</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-08-15T23:39:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55971#M16269</link>
      <description>What you are asking about is built into Netsight.  There are many canned scripts that can be run on single or groups of switches ... Port groups ect.  The power of scripting is being able to create a command and make configuration changes in the switches with less chance of human error.. We for example have a unique script for each of our EAPS rings that anytime we need to create and add a new vlan to a ring all the engineers need to do is go to the correct port group map for that ring and run the script.  It prompts them for the the vlan tag and name... the rest is built into the script.  &lt;BR /&gt;
&lt;BR /&gt;
Same thing would apply if you need to say change something in all your devices ... single script run on hundreds of switches 10 or 20 at a time till it's done... If you dont have Netsight then get a demo key up and running and you can see how the scripts are triigger and used and over time you build your own library of scripts unique to you&lt;BR /&gt;
&lt;BR /&gt;</description>
      <pubDate>Wed, 16 Aug 2017 00:09:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55971#M16269</guid>
      <dc:creator>EtherMAN</dc:creator>
      <dc:date>2017-08-16T00:09:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55972#M16270</link>
      <description>Thanks all for you help, but managed to manipulate the python script to give what I want. I'll try and figure out a way to share how it works, but I'll explain a little here.&lt;BR /&gt;
&lt;BR /&gt;
Have created three files:&lt;BR /&gt;
&lt;BR /&gt;
&lt;UL&gt; 
&lt;LI&gt;EXOS_json_based_config_generator.py 
&lt;/LI&gt;&lt;LI&gt;EXOS_parameters.json 
&lt;/LI&gt;&lt;LI&gt;EXOS_with_vlan.j2&lt;/LI&gt;&lt;/UL&gt;The file EXOS_with_vlan.j2 holds the config I want to replicate \ repeat, and looks like the following:&lt;BR /&gt;
&lt;BR /&gt;
{% for vlan in vlans %}&lt;BR /&gt;
create vlan "{{ vlan.name }}"&lt;BR /&gt;
configure vlan {{ vlan.name }} tag {{ vlan.number }}&lt;BR /&gt;
configure vlan {{ vlan.name }} add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan {{ vlan.name }} ipaddress {{ vlan.ip }} 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan {{ vlan.name }}&lt;BR /&gt;
configure elrp-client periodic {{ vlan.name }} ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan {{ vlan.name }}&lt;BR /&gt;
create vrrp vlan {{ vlan.name }} vrid 1&lt;BR /&gt;
configure vrrp vlan {{ vlan.name }} vrid 1 add {{ vlan.vip }}&lt;BR /&gt;
configure vrrp vlan {{ vlan.name }} vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan {{ vlan.name }} vrid 1&lt;BR /&gt;
configure ospf vlan {{ vlan.name }} priority 0&lt;BR /&gt;
configure ospf add vlan {{ vlan.name }} area 0.0.0.0 passive&lt;BR /&gt;
{% endfor %}&lt;BR /&gt;
The EXOS_parameters.json file contains the dictionary elements I want to repeat in the config above. Now to create that file I simply take a CSV format of my details, which look like the following:&lt;BR /&gt;
&lt;BR /&gt;
name number ip vip&lt;BR /&gt;
Hyper-V 100 10.0.0.253 10.0.0.254&lt;BR /&gt;
DC-Controllers 10 10.0.1.253 10.0.1.254&lt;BR /&gt;
SQL-Database 20 10.0.2.253 10.0.2.254&lt;BR /&gt;
App-Servers 30 10.0.3.253 10.0.3.254&lt;BR /&gt;
Web-Servers 40 10.0.4.253 10.0.4.254&lt;BR /&gt;
Print-Servers 50 10.0.5.253 10.0.5.254&lt;BR /&gt;
Email-Services 60 10.0.6.253 10.0.6.254&lt;BR /&gt;
Citrix-Server 70 10.0.7.253 10.0.7.254&lt;BR /&gt;
File-Server 80 10.0.8.253 10.0.8.254&lt;BR /&gt;
Security-Apps 90 10.0.9.253 10.0.9.254&lt;BR /&gt;
Firewall 106 10.0.10.253 10.0.10.254&lt;BR /&gt;
Remote-VPN 110 10.0.11.253 10.0.11.254&lt;BR /&gt;
Wireless 150 10.0.15.253 10.0.15.254&lt;BR /&gt;
VoIP -servers 120 10.0.20.253 10.0.20.254&lt;BR /&gt;
Building Services 160 10.0.60.253 10.0.60.254&lt;BR /&gt;
SwipeCard 170 10.0.70.253 10.0.70.254&lt;BR /&gt;
CCTV 180 10.0.80.253 10.0.80.254&lt;BR /&gt;
BEMS 190 10.0.90.253 10.0.90.254&lt;BR /&gt;
iSCSI 1240 10.0.240.253 10.0.240.254&lt;BR /&gt;
Point-to-Point 1254 10.0.254.253 10.0.254.254&lt;BR /&gt;
Core-MGMT 1255 10.0.255.253 10.0.255.254&lt;BR /&gt;
And then just run it through an online CSV to JSON converter like the following:&lt;BR /&gt;
&lt;BR /&gt;
&lt;A href="http://www.csvjson.com/csv2json" target="_blank" rel="nofollow noreferrer noopener"&gt;http://www.csvjson.com/csv2json&lt;/A&gt;&lt;BR /&gt;
&lt;BR /&gt;
The output I save to the EXOS_parameters.json file.&lt;BR /&gt;
&lt;BR /&gt;
When done I just run the following script "EXOS_json_based_config_generator.py", and wallah!!!&lt;BR /&gt;
&lt;BR /&gt;
You get the config output below in a text file, and all I had to do was input the parameters - will save me a whole bunch of time &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;BR /&gt;
&lt;BR /&gt;
create vlan "Hyper-V"&lt;BR /&gt;
configure vlan Hyper-V tag 100&lt;BR /&gt;
configure vlan Hyper-V add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Hyper-V ipaddress 10.0.0.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Hyper-V&lt;BR /&gt;
configure elrp-client periodic Hyper-V ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Hyper-V&lt;BR /&gt;
create vrrp vlan Hyper-V vrid 1&lt;BR /&gt;
configure vrrp vlan Hyper-V vrid 1 add 10.0.0.254&lt;BR /&gt;
configure vrrp vlan Hyper-V vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Hyper-V vrid 1&lt;BR /&gt;
configure ospf vlan Hyper-V priority 0&lt;BR /&gt;
configure ospf add vlan Hyper-V area 0.0.0.0 passive&lt;BR /&gt;
create vlan "DC-Controllers"&lt;BR /&gt;
configure vlan DC-Controllers tag 10&lt;BR /&gt;
configure vlan DC-Controllers add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan DC-Controllers ipaddress 10.0.1.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan DC-Controllers&lt;BR /&gt;
configure elrp-client periodic DC-Controllers ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan DC-Controllers&lt;BR /&gt;
create vrrp vlan DC-Controllers vrid 1&lt;BR /&gt;
configure vrrp vlan DC-Controllers vrid 1 add 10.0.1.254&lt;BR /&gt;
configure vrrp vlan DC-Controllers vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan DC-Controllers vrid 1&lt;BR /&gt;
configure ospf vlan DC-Controllers priority 0&lt;BR /&gt;
configure ospf add vlan DC-Controllers area 0.0.0.0 passive&lt;BR /&gt;
create vlan "SQL-Database"&lt;BR /&gt;
configure vlan SQL-Database tag 20&lt;BR /&gt;
configure vlan SQL-Database add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan SQL-Database ipaddress 10.0.2.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan SQL-Database&lt;BR /&gt;
configure elrp-client periodic SQL-Database ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan SQL-Database&lt;BR /&gt;
create vrrp vlan SQL-Database vrid 1&lt;BR /&gt;
configure vrrp vlan SQL-Database vrid 1 add 10.0.2.254&lt;BR /&gt;
configure vrrp vlan SQL-Database vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan SQL-Database vrid 1&lt;BR /&gt;
configure ospf vlan SQL-Database priority 0&lt;BR /&gt;
configure ospf add vlan SQL-Database area 0.0.0.0 passive&lt;BR /&gt;
create vlan "App-Servers"&lt;BR /&gt;
configure vlan App-Servers tag 30&lt;BR /&gt;
configure vlan App-Servers add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan App-Servers ipaddress 10.0.3.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan App-Servers&lt;BR /&gt;
configure elrp-client periodic App-Servers ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan App-Servers&lt;BR /&gt;
create vrrp vlan App-Servers vrid 1&lt;BR /&gt;
configure vrrp vlan App-Servers vrid 1 add 10.0.3.254&lt;BR /&gt;
configure vrrp vlan App-Servers vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan App-Servers vrid 1&lt;BR /&gt;
configure ospf vlan App-Servers priority 0&lt;BR /&gt;
configure ospf add vlan App-Servers area 0.0.0.0 passive&lt;BR /&gt;
create vlan "Web-Servers"&lt;BR /&gt;
configure vlan Web-Servers tag 40&lt;BR /&gt;
configure vlan Web-Servers add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Web-Servers ipaddress 10.0.4.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Web-Servers&lt;BR /&gt;
configure elrp-client periodic Web-Servers ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Web-Servers&lt;BR /&gt;
create vrrp vlan Web-Servers vrid 1&lt;BR /&gt;
configure vrrp vlan Web-Servers vrid 1 add 10.0.4.254&lt;BR /&gt;
configure vrrp vlan Web-Servers vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Web-Servers vrid 1&lt;BR /&gt;
configure ospf vlan Web-Servers priority 0&lt;BR /&gt;
configure ospf add vlan Web-Servers area 0.0.0.0 passive&lt;BR /&gt;
create vlan "Print-Servers"&lt;BR /&gt;
configure vlan Print-Servers tag 50&lt;BR /&gt;
configure vlan Print-Servers add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Print-Servers ipaddress 10.0.5.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Print-Servers&lt;BR /&gt;
configure elrp-client periodic Print-Servers ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Print-Servers&lt;BR /&gt;
create vrrp vlan Print-Servers vrid 1&lt;BR /&gt;
configure vrrp vlan Print-Servers vrid 1 add 10.0.5.254&lt;BR /&gt;
configure vrrp vlan Print-Servers vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Print-Servers vrid 1&lt;BR /&gt;
configure ospf vlan Print-Servers priority 0&lt;BR /&gt;
configure ospf add vlan Print-Servers area 0.0.0.0 passive&lt;BR /&gt;
create vlan "Email-Services"&lt;BR /&gt;
configure vlan Email-Services tag 60&lt;BR /&gt;
configure vlan Email-Services add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Email-Services ipaddress 10.0.6.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Email-Services&lt;BR /&gt;
configure elrp-client periodic Email-Services ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Email-Services&lt;BR /&gt;
create vrrp vlan Email-Services vrid 1&lt;BR /&gt;
configure vrrp vlan Email-Services vrid 1 add 10.0.6.254&lt;BR /&gt;
configure vrrp vlan Email-Services vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Email-Services vrid 1&lt;BR /&gt;
configure ospf vlan Email-Services priority 0&lt;BR /&gt;
configure ospf add vlan Email-Services area 0.0.0.0 passive&lt;BR /&gt;
create vlan "Citrix-Server"&lt;BR /&gt;
configure vlan Citrix-Server tag 70&lt;BR /&gt;
configure vlan Citrix-Server add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Citrix-Server ipaddress 10.0.7.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Citrix-Server&lt;BR /&gt;
configure elrp-client periodic Citrix-Server ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Citrix-Server&lt;BR /&gt;
create vrrp vlan Citrix-Server vrid 1&lt;BR /&gt;
configure vrrp vlan Citrix-Server vrid 1 add 10.0.7.254&lt;BR /&gt;
configure vrrp vlan Citrix-Server vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Citrix-Server vrid 1&lt;BR /&gt;
configure ospf vlan Citrix-Server priority 0&lt;BR /&gt;
configure ospf add vlan Citrix-Server area 0.0.0.0 passive&lt;BR /&gt;
create vlan "File-Server"&lt;BR /&gt;
configure vlan File-Server tag 80&lt;BR /&gt;
configure vlan File-Server add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan File-Server ipaddress 10.0.8.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan File-Server&lt;BR /&gt;
configure elrp-client periodic File-Server ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan File-Server&lt;BR /&gt;
create vrrp vlan File-Server vrid 1&lt;BR /&gt;
configure vrrp vlan File-Server vrid 1 add 10.0.8.254&lt;BR /&gt;
configure vrrp vlan File-Server vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan File-Server vrid 1&lt;BR /&gt;
configure ospf vlan File-Server priority 0&lt;BR /&gt;
configure ospf add vlan File-Server area 0.0.0.0 passive&lt;BR /&gt;
create vlan "Security-Apps"&lt;BR /&gt;
configure vlan Security-Apps tag 90&lt;BR /&gt;
configure vlan Security-Apps add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Security-Apps ipaddress 10.0.9.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Security-Apps&lt;BR /&gt;
configure elrp-client periodic Security-Apps ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Security-Apps&lt;BR /&gt;
create vrrp vlan Security-Apps vrid 1&lt;BR /&gt;
configure vrrp vlan Security-Apps vrid 1 add 10.0.9.254&lt;BR /&gt;
configure vrrp vlan Security-Apps vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Security-Apps vrid 1&lt;BR /&gt;
configure ospf vlan Security-Apps priority 0&lt;BR /&gt;
configure ospf add vlan Security-Apps area 0.0.0.0 passive&lt;BR /&gt;
create vlan "Firewall"&lt;BR /&gt;
configure vlan Firewall tag 106&lt;BR /&gt;
configure vlan Firewall add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Firewall ipaddress 10.0.10.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Firewall&lt;BR /&gt;
configure elrp-client periodic Firewall ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Firewall&lt;BR /&gt;
create vrrp vlan Firewall vrid 1&lt;BR /&gt;
configure vrrp vlan Firewall vrid 1 add 10.0.10.254&lt;BR /&gt;
configure vrrp vlan Firewall vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Firewall vrid 1&lt;BR /&gt;
configure ospf vlan Firewall priority 0&lt;BR /&gt;
configure ospf add vlan Firewall area 0.0.0.0 passive&lt;BR /&gt;
create vlan "Remote-VPN"&lt;BR /&gt;
configure vlan Remote-VPN tag 110&lt;BR /&gt;
configure vlan Remote-VPN add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Remote-VPN ipaddress 10.0.11.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Remote-VPN&lt;BR /&gt;
configure elrp-client periodic Remote-VPN ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Remote-VPN&lt;BR /&gt;
create vrrp vlan Remote-VPN vrid 1&lt;BR /&gt;
configure vrrp vlan Remote-VPN vrid 1 add 10.0.11.254&lt;BR /&gt;
configure vrrp vlan Remote-VPN vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Remote-VPN vrid 1&lt;BR /&gt;
configure ospf vlan Remote-VPN priority 0&lt;BR /&gt;
configure ospf add vlan Remote-VPN area 0.0.0.0 passive&lt;BR /&gt;
create vlan "Wireless"&lt;BR /&gt;
configure vlan Wireless tag 150&lt;BR /&gt;
configure vlan Wireless add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Wireless ipaddress 10.0.15.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Wireless&lt;BR /&gt;
configure elrp-client periodic Wireless ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Wireless&lt;BR /&gt;
create vrrp vlan Wireless vrid 1&lt;BR /&gt;
configure vrrp vlan Wireless vrid 1 add 10.0.15.254&lt;BR /&gt;
configure vrrp vlan Wireless vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Wireless vrid 1&lt;BR /&gt;
configure ospf vlan Wireless priority 0&lt;BR /&gt;
configure ospf add vlan Wireless area 0.0.0.0 passive&lt;BR /&gt;
create vlan "VoIP -servers"&lt;BR /&gt;
configure vlan VoIP -servers tag 120&lt;BR /&gt;
configure vlan VoIP -servers add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan VoIP -servers ipaddress 10.0.20.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan VoIP -servers&lt;BR /&gt;
configure elrp-client periodic VoIP -servers ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan VoIP -servers&lt;BR /&gt;
create vrrp vlan VoIP -servers vrid 1&lt;BR /&gt;
configure vrrp vlan VoIP -servers vrid 1 add 10.0.20.254&lt;BR /&gt;
configure vrrp vlan VoIP -servers vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan VoIP -servers vrid 1&lt;BR /&gt;
configure ospf vlan VoIP -servers priority 0&lt;BR /&gt;
configure ospf add vlan VoIP -servers area 0.0.0.0 passive&lt;BR /&gt;
create vlan "Building Services"&lt;BR /&gt;
configure vlan Building Services tag 160&lt;BR /&gt;
configure vlan Building Services add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Building Services ipaddress 10.0.60.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Building Services&lt;BR /&gt;
configure elrp-client periodic Building Services ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Building Services&lt;BR /&gt;
create vrrp vlan Building Services vrid 1&lt;BR /&gt;
configure vrrp vlan Building Services vrid 1 add 10.0.60.254&lt;BR /&gt;
configure vrrp vlan Building Services vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Building Services vrid 1&lt;BR /&gt;
configure ospf vlan Building Services priority 0&lt;BR /&gt;
configure ospf add vlan Building Services area 0.0.0.0 passive&lt;BR /&gt;
create vlan "SwipeCard"&lt;BR /&gt;
configure vlan SwipeCard tag 170&lt;BR /&gt;
configure vlan SwipeCard add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan SwipeCard ipaddress 10.0.70.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan SwipeCard&lt;BR /&gt;
configure elrp-client periodic SwipeCard ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan SwipeCard&lt;BR /&gt;
create vrrp vlan SwipeCard vrid 1&lt;BR /&gt;
configure vrrp vlan SwipeCard vrid 1 add 10.0.70.254&lt;BR /&gt;
configure vrrp vlan SwipeCard vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan SwipeCard vrid 1&lt;BR /&gt;
configure ospf vlan SwipeCard priority 0&lt;BR /&gt;
configure ospf add vlan SwipeCard area 0.0.0.0 passive&lt;BR /&gt;
create vlan "CCTV"&lt;BR /&gt;
configure vlan CCTV tag 180&lt;BR /&gt;
configure vlan CCTV add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan CCTV ipaddress 10.0.80.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan CCTV&lt;BR /&gt;
configure elrp-client periodic CCTV ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan CCTV&lt;BR /&gt;
create vrrp vlan CCTV vrid 1&lt;BR /&gt;
configure vrrp vlan CCTV vrid 1 add 10.0.80.254&lt;BR /&gt;
configure vrrp vlan CCTV vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan CCTV vrid 1&lt;BR /&gt;
configure ospf vlan CCTV priority 0&lt;BR /&gt;
configure ospf add vlan CCTV area 0.0.0.0 passive&lt;BR /&gt;
create vlan "BEMS"&lt;BR /&gt;
configure vlan BEMS tag 190&lt;BR /&gt;
configure vlan BEMS add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan BEMS ipaddress 10.0.90.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan BEMS&lt;BR /&gt;
configure elrp-client periodic BEMS ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan BEMS&lt;BR /&gt;
create vrrp vlan BEMS vrid 1&lt;BR /&gt;
configure vrrp vlan BEMS vrid 1 add 10.0.90.254&lt;BR /&gt;
configure vrrp vlan BEMS vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan BEMS vrid 1&lt;BR /&gt;
configure ospf vlan BEMS priority 0&lt;BR /&gt;
configure ospf add vlan BEMS area 0.0.0.0 passive&lt;BR /&gt;
create vlan "iSCSI"&lt;BR /&gt;
configure vlan iSCSI tag 1240&lt;BR /&gt;
configure vlan iSCSI add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan iSCSI ipaddress 10.0.240.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan iSCSI&lt;BR /&gt;
configure elrp-client periodic iSCSI ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan iSCSI&lt;BR /&gt;
create vrrp vlan iSCSI vrid 1&lt;BR /&gt;
configure vrrp vlan iSCSI vrid 1 add 10.0.240.254&lt;BR /&gt;
configure vrrp vlan iSCSI vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan iSCSI vrid 1&lt;BR /&gt;
configure ospf vlan iSCSI priority 0&lt;BR /&gt;
configure ospf add vlan iSCSI area 0.0.0.0 passive&lt;BR /&gt;
create vlan "Point-to-Point"&lt;BR /&gt;
configure vlan Point-to-Point tag 1254&lt;BR /&gt;
configure vlan Point-to-Point add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Point-to-Point ipaddress 10.0.254.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Point-to-Point&lt;BR /&gt;
configure elrp-client periodic Point-to-Point ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Point-to-Point&lt;BR /&gt;
create vrrp vlan Point-to-Point vrid 1&lt;BR /&gt;
configure vrrp vlan Point-to-Point vrid 1 add 10.0.254.254&lt;BR /&gt;
configure vrrp vlan Point-to-Point vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Point-to-Point vrid 1&lt;BR /&gt;
configure ospf vlan Point-to-Point priority 0&lt;BR /&gt;
configure ospf add vlan Point-to-Point area 0.0.0.0 passive&lt;BR /&gt;
create vlan "Core-MGMT"&lt;BR /&gt;
configure vlan Core-MGMT tag 1255&lt;BR /&gt;
configure vlan Core-MGMT add ports 1:29,1:34 tagged&lt;BR /&gt;
configure vlan Core-MGMT ipaddress 10.0.255.253 255.255.255.0&lt;BR /&gt;
enable ipforwarding vlan Core-MGMT&lt;BR /&gt;
configure elrp-client periodic Core-MGMT ports 61,1 interval 1 log-and-trap disable-port ingress permanent&lt;BR /&gt;
enable bootprelay ipv4 vlan Core-MGMT&lt;BR /&gt;
create vrrp vlan Core-MGMT vrid 1&lt;BR /&gt;
configure vrrp vlan Core-MGMT vrid 1 add 10.0.255.254&lt;BR /&gt;
configure vrrp vlan Core-MGMT vrid 1 priority 150&lt;BR /&gt;
enable vrrp vlan Core-MGMT vrid 1&lt;BR /&gt;
configure ospf vlan Core-MGMT priority 0&lt;BR /&gt;
configure ospf add vlan Core-MGMT area 0.0.0.0 passive&lt;BR /&gt;
&lt;BR /&gt;</description>
      <pubDate>Wed, 16 Aug 2017 02:20:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55972#M16270</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-08-16T02:20:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55973#M16271</link>
      <description>I've built something similiar, very basic with YAML files instead of JSON for easier readability:&lt;BR /&gt;
&lt;BR /&gt;
&lt;A href="https://github.com/joxz/yml2xos" target="_blank" rel="nofollow noreferrer noopener"&gt;https://github.com/joxz/yml2xos&lt;/A&gt;&lt;BR /&gt;
&lt;BR /&gt;
It's configured to my needs but easy to make it fit to other needs.&lt;BR /&gt;
&lt;BR /&gt;
Ignore the deploy.py it doesn't work </description>
      <pubDate>Wed, 16 Aug 2017 22:26:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55973#M16271</guid>
      <dc:creator>Johannes_Dennin</dc:creator>
      <dc:date>2017-08-16T22:26:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55974#M16272</link>
      <description>I'm not sure if this will do what you want.&lt;BR /&gt;
In EXOS 22.3 is the USBZTP feature.&lt;BR /&gt;
As part of that capability, you can clone an entire switch to a USB memory module, including any configuration and then use that to initialize another switch.&lt;BR /&gt;
&lt;BR /&gt;
The way this might help your needs is if you had a base configuration and EXOS release version you wanted to start with on each switch,&lt;BR /&gt;
&lt;UL&gt; 
&lt;LI&gt;Start with your reference switch 
&lt;/LI&gt;&lt;LI&gt;configure the base configuration you want on all switches 
&lt;/LI&gt;&lt;LI&gt;save 
&lt;/LI&gt;&lt;LI&gt;clone to USB 
&lt;/LI&gt;&lt;LI&gt;insert that USB in a new switch 
&lt;/LI&gt;&lt;LI&gt;clone from USB&lt;/LI&gt;&lt;/UL&gt;the new switch is now a copy of your reference switch.&lt;BR /&gt;
&lt;UL&gt; 
&lt;LI&gt;both EXOS partitions 
&lt;/LI&gt;&lt;LI&gt;The entire /usr/local/cfg directory 
&lt;/LI&gt;&lt;LI&gt;licenses are not copied&lt;/LI&gt;&lt;/UL&gt;Some things to keep in mind:&lt;BR /&gt;
&lt;UL&gt; 
&lt;LI&gt;the entire configuration directory is cloned, including any scripts, policy files etc. 
&lt;/LI&gt;&lt;LI&gt;if the reference configuration has IP addresses, they will also be cloned and may need to be changed on the new switch.&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Mon, 28 Aug 2017 02:36:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55974#M16272</guid>
      <dc:creator>Dave_Hammers</dc:creator>
      <dc:date>2017-08-28T02:36:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55975#M16273</link>
      <description>Martin, I wonder if you've since considered using the relatively new support for EXOS switches in Ansible. Currently, Ansible 2.6 includes only &lt;A href="https://docs.ansible.com/ansible/devel/modules/exos_command_module.html" target="_blank" rel="nofollow noreferrer noopener"&gt;the exos_command module&lt;/A&gt;, but it looks like an exos_config module will soon follow, which is exactly what you were asking for, since Ansible uses jinja2 templates. For now, I am choosing to use the more mature and versatile JSONRPC interface to do the same thing.</description>
      <pubDate>Tue, 09 Oct 2018 04:01:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55975#M16273</guid>
      <dc:creator>Tim_Black</dc:creator>
      <dc:date>2018-10-09T04:01:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55976#M16274</link>
      <description>FYI, exos_command, exos_config and exos_facts are now all in the current shipping GA version of Ansible (2.7). It was published earlier this month.</description>
      <pubDate>Tue, 09 Oct 2018 04:01:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55976#M16274</guid>
      <dc:creator>Lindsay_Hill</dc:creator>
      <dc:date>2018-10-09T04:01:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55977#M16275</link>
      <description>Hi Tim,&lt;BR /&gt;
&lt;BR /&gt;
Thanks for posting and no, I hadn't! That is a very intriguing idea!&lt;BR /&gt;
&lt;BR /&gt;
Not seen or used Ansible before but going to start looking into now. &lt;BR /&gt;
&lt;BR /&gt;
The python scripting I use works extremely well, and probably shaves days of large projects. This issue with it, is that its not very user friendly i.e. I've gotten to understand it well, but when I pass it on other engineers they don't bother using it because setting it up and interfacing is a little complicated - and it would seem Ansible could have the answer to this.&lt;BR /&gt;
&lt;BR /&gt;
If I do get to use it I'll post back my experience.&lt;BR /&gt;
&lt;BR /&gt;
Thanks,&lt;BR /&gt;
&lt;BR /&gt;
Martin</description>
      <pubDate>Tue, 09 Oct 2018 04:01:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55977#M16275</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2018-10-09T04:01:00Z</dc:date>
    </item>
    <item>
      <title>RE: EXOS configuration scripting tool</title>
      <link>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55978#M16276</link>
      <description>Hi Martin, I've been working towards introducing Ansible at my company for machine configuration management, where machine typically has meant &lt;I&gt;development workstations&lt;/I&gt; and &lt;I&gt;servers&lt;/I&gt;, &lt;I&gt;native&lt;/I&gt;/&lt;I&gt;bare-metal&lt;/I&gt;, &lt;I&gt;virtual&lt;/I&gt;, or &lt;I&gt;containerized&lt;/I&gt;. But from Ansible's perspective, it can work on anythings with ssh and python. I've not used Ansible for switch provisioning, but am intrigued by it, moving forward. &lt;BR /&gt;
&lt;BR /&gt;
Others at my company have used telnet CLI via python to control these, and I'm now more interested in JSONRPC bc of all the IO handling/parsing it does automatically. We are not a data center type application - we are doing product testing and I'm adding the ability to our test infrastructure to set up, use, and tear down various network topologies via python. You can call Ansible from python application (since Ansible itself is python code) but for our purpose I feel the integration with JSONRPC will be much simpler and can achieve the same things. &lt;BR /&gt;
&lt;BR /&gt;
The main thing Ansible can do that JSONRPC approach does not (out of the box, anyway) is parallelism and idempotency for you so you can run the same playbook on 100 switches and it will be fast and will only do anything if it determines it needs to. Depending on what you're using these switches for, this may/may not be useful. Cheers!</description>
      <pubDate>Tue, 09 Oct 2018 04:01:00 GMT</pubDate>
      <guid>https://community.extremenetworks.com/t5/extremeswitching-exos-switch/exos-configuration-scripting-tool/m-p/55978#M16276</guid>
      <dc:creator>Tim_Black</dc:creator>
      <dc:date>2018-10-09T04:01:00Z</dc:date>
    </item>
  </channel>
</rss>

