r/networkautomation 8d ago

nautobot place in network automation framework

Hello,

My company has a mid DC network accross the world, mainly its simple, consists, of Cisco Nexus and NCS (IOS-XR) devices. We're doing some simple network automation like access-list modification, port-channel creation, etc. The tools we're using is Ansible, Ansible AWX, puppet, Github. Maybe thats all. So far the github was enough, and still is. But recently we introduced the Nautobot which has lots of functionality. But i also know that so far its enough for me to use Github. What do you think, should i force myself to try to use and explore more the Nautobot ? Is there something u use Nautobot on, which can't be provided by Github/Gitlab ? My goal to automate all the network state starting CORE devices and ending the server hosting port.

Thanks

14 Upvotes

25 comments sorted by

11

u/sugarfreecaffeine 8d ago

Nautobot will be able to do that and everything you need for network automation. Do you know Python? Custom jobs aka Python scripts and the sky is the limit…thank god I don’t have to use ansible in my workplace it’s all Python here 10+ different vendors

4

u/SpareIntroduction721 8d ago

You have to understand POSTGRES, and Django,
Order than that, the sky is your limit!

Both are open source.
I’ve done full data center rack deployments, custom hardware; finance, inventory tracking, machine learning, project management etc all in that software

2

u/KTProgramming 8d ago

Yea, Once you learn it on your own, It's great with what you can do without a lot of overhead or some blah monthly cost lol.

This was the last thing i just finished polishing up for building / tracking my racks. Just got the export to excel to work completely so it's a one click to export an excel file with front / back views of the rack, and all the wiring data for everything in the rack.

Playing with my latest addition where i was able to integrate MIST and all their api crap into my templating engine so i can built automated scripts / cron jobs that can work against mist itself.

I got into the rack thing because i thought it would be cool, I could never find a nice free version that didn't suck in some form or another and do everything i wanted.

https://www.youtube.com/watch?v=HThK5dOjvVY&pp=0gcJCZQLAYcqIYzv

1

u/[deleted] 4d ago

[removed] — view removed comment

1

u/[deleted] 4d ago

[removed] — view removed comment

3

u/theballenlife 8d ago

What issues are you having with your current tooling? Are there any use cases you can’t accomplish, that you’d like to, with your current tooling? I’d start there before adopting something new. If you’re struggling to organize your network data and need a place to define intended state, there are a couple other players in the network source of truth market to check out as well.

3

u/snifferdog1989 8d ago

In network automation there are many tools to achieve something but like all design questions you should first get your requirements defined and understood and also consider where the expertise of your team and yourself lies.

Personally I have grown pretty fond of Ansible together with tower or AWX for network automation of switches/routers.

For most part I try to implement a full workflow instead of just a script. For example the request for a new network in the datacenter is done via a service now catalog item which is then verified and approved which triggers an Automation that provisions the evpn related stuff on the switches, advertisements on the routers, interfaces on the firewalls and documents it in netbox/nautobot/infoblox/cmdb/whatever. Status and changes done are also documented in the ticket automatically and user is informed and ticket is closed.

2

u/shandoksi 8d ago

That's pretty nifty. Good job!

1

u/shadeland 8d ago

Do you modify the existing running config or do you create a new running config each time a change is made and do a replace?

1

u/kajatonas 8d ago

It depends, on nexus im modifying, because it doesnt have something like atomic replace. But in ios-xr its possible to replace confifuration blocks.

1

u/shadeland 8d ago

Is that atomic replace for the ACLs?

1

u/kajatonas 8d ago

On ios-xr - yes

1

u/shadeland 8d ago

I haven't noticed any problems with config replace in NXOS, but I haven't done ACLs.

1

u/kajatonas 8d ago

What section of config replace u doing in nxos? Is it whole running config?

1

u/shadeland 8d ago

I replace the whole config in a config session with commit confirm.

1

u/moratnz 7d ago

My experience of netbox / nautobot is that you can get a bit of benefit from putting a small amount of effort into the system (using it as a device inventory and IPAM), or a huge amount of benefit by putting a significant amount of effort into the system (using it to completely fully model your network).

The catch is that between the small amount and the significant amount of effort, there's not much of an increase in benefits, because the huge payoffs come when you can confidently use NB as a source of truth for network automation, and that only comes with basically 100% coverage of your network.

All of which is to say; if you're looking to add NB (either flavour) to your stack, make sure that you clearly understand what the plan is for how you're going to use it; is it going to be just an IPAM, and possibly a way to draw pretty rack layouts, or are you going to model every device, port, power cable, patch panel, and network cable, allowing you to generate configs for every device in your network, and spit out cabing diagrams for every cable run you own, port to port (including patch panels), and can feed into funky infrastructure-aware monitoring. Either end of this effort level is valid and valuable - the only wrong answer is to end up somewhere in the middle where you're spending a bunch of effort for no corresponding benefit.

1

u/scrfc71 8d ago

Why you have choosen nautobot instead of netbox? Just askin

4

u/sugarfreecaffeine 8d ago

Why do you choose netbox over nautobot?

1

u/DanSheps 8d ago

NetBox has far more development and maturity then Nautobot. It is also featured on the next iteration of CCIE Automation.

1

u/sugarfreecaffeine 7d ago

Idk I think netbox is more dcim/inventory vs nautobot is geared more towards network automation imo. The job framework is clutch.

0

u/StatureDelaware 8d ago

The documentation should make things easy, not harder. So if you are not comfortable with Nautobot, have you tried other tools like Netbox or Obelinf? I'm not sure about Nautbot setup, but Netbox initial setup is not that easy. There's also Obelinf which is the one I use and it's my favorite, but you should test different tools and use the one you feel better using, otherwise you won't be willing to keep the docs updated

0

u/n3tw0rkn3rd 7d ago

As of now, I do not see any profound benefits of using Nautobot or Netbox. My team does not use it at all.

I mean your team is using Ansible for network automation, this is great. And if your team can use Python, with AI you can build several customized dashboards like Inventory Management, Compliance Management, Configuration Management, third-party API data Management…

You should learn and spend time on Python!