04-05-2019 05:51 PM
I presently have an ACI automation environment, Ansible-based, where new config data starts out as rows in a spreadsheet. I wrote a tool that converts the data to JSON and ships it off to be processed by Ansible. It's designed this way because that's what I heard from my customers: we like spreadsheets. It makes a certain amount of sense, because when they do changes, they are often configuring a lot all at once. Spreadsheets do scale well.
I'm having trouble expressing why I don't like this. I suppose it just doesn't seem very elegant. I would also prefer it if our Production configuration data did not have to first pass through a home-grown app to be useful.
How are other people getting configuration data out of the brains of the network engineers and into their automation systems? The answer I usually get is to use some kind of survey tool, but does one exist that can take in data efficiently at large scale? I once explained my use case to a ServiceNow rep and they basically told me it was too complex...
08-26-2020 07:59 AM
I still do a lot of work in spreadsheets. Specifically, I like google sheets so I can have collaboration and just pull data from the API without worrying about files and versions. I think most engineers still like to be able to review the data before pushing a ton of objects and spreadsheets are really good for that.
08-26-2020 08:21 AM
Hi @zjpeterson
Very interesting topic!
I had to automate the configuration of ACI fabric (tenant-related objects) and for the sake of brevity I used postman and a spreadsheet.
Why did I opt for a spreadsheet you might ask? Simply because it was easier for me to show it to my customers - engineers which did not emerged yet in the world of automation. For them it is much simpler to look over a spreadsheet, then trying to read a JSON-formatted file.
If I would work just by myself without the need to show or receive the input data from any customers, would I use spreadsheet? Obviously no, because of so many reasons.
But as long as I have to present something to one of my customers, I will always prefer a "User Inetrface" which they understand, over my own personal preferences.
Cheers,
Sergiu
08-26-2020 08:57 AM
Ahh. @zjpeterson .. a topic near and dear to my heart!
First, I too am firmly in your camp and started with an Excel workbook with tabs fore each workflow in ACI to automate the build out of a fabric. Exactly to your point, it is the lowest common denominator, which, with Clients often already nervous about the ACI learning curve works well because its very familiar and non-threatening.
My hope was that data models would help with this and while I think they will, it's just not there yet. Adoption, tooling, etc still need alot of work for it to be comfortably consumed by the your typical network engineer in the trenches trying to keep his or her network operational.
I'm making some inroads with YAML. As Clients get a bit more automation savvy, and in particular those that are using Ansible, they tend to be a bit more comfortable with serialization protocols and YAML in particular.
Below you can see a JSON payload file used to push tenant creation to an APIC and the source YAML which is not too threatening. Everyone's firs reaction is...hey..I can do that in excel but then I start talking about keeping their design data under revision control and how this sets them up for future automation efforts and sometimes they get it.
It is an uphill battle to be sure.
So today, I start with YAML and the revision control argument, but I still wind up falling back to Excel more often than not so my clients' heads don't explode.
So I would say, don't embrace spreadsheets, but start with something that sets you or your client up for automation and an automated workflow pipeline, and fall back only if you have to.
Only if you want to to see an expanded whine about this!
The Struggle with Structure
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide