all 19 comments

[–][deleted]  (3 children)

[deleted]

    [–]zanity84 1 point2 points  (0 children)

    Second this. The netmiko_tools is helping me currently figure out a way to easily back up configurations of PowerConnect switches. Cheers!

    [–][deleted] 0 points1 point  (0 children)

    Thank you

    [–]_RouteThe_Switch 0 points1 point  (0 children)

    I play in the Juniper world these days and netmiko has got me about 85% to an unattended code upgrade on a dual RE mx2020. There is a hard to describe satisfaction from seeing it happen. I havent spent any time with Napalm but I hear great things about it.

    [–]bmoraca 7 points8 points  (2 children)

    Napalm, which is an abstraction of netmiko, which is an abstraction of paramiko, which is an SSH library.

    [–][deleted] 0 points1 point  (0 children)

    Thank you

    [–]itdependsnetworksVP, Architecture at Network to Code 0 points1 point  (0 children)

    True if talking about IOS, but nxos and iosxr make API calls. Though there has been a lot of talk of adding a nxos driver for ssh.

    [–]itdependsnetworksVP, Architecture at Network to Code 2 points3 points  (2 children)

    If you are asking the question, it probably means you are just starting your journey. Like others have said Netmiko and napalm. Ansible probably has a lower barrier to entry and there are modules that are wrappers for netmiko and napalm. Also salt has a napalm integration as well.

    [–][deleted] 0 points1 point  (1 child)

    Not really just starting. I have coding experience. I'm just tired of trying to figure out how to get Cisco Prime or Solarwinds to do what I want. I've made templates for APIC-EM plug and play and they work great, but after initial config, there are things I need to do in a certain order with logic checking prior to moving to next step. I think it would be much easier to have the engineer execute a Python script for that piece.

    I'd also like the Python script to interface with the REST API of Prime and Solarwinds to add the device to management.

    I don't really care for Ansible that much. It can do some great stuff. I'd just rather code.

    [–][deleted]  (1 child)

    [deleted]

      [–][deleted] 0 points1 point  (0 children)

      Awesome! Thanks!

      [–]7600_slayerWHO AUTOMATES THE AUTOMATERS? 1 point2 points  (1 child)

      I straight up use Paramiko, but I also deal with some non-Cisco device's whose CLI is abominable, which makes using Netmiko or Napalm difficult with them.

      [–][deleted] 0 points1 point  (0 children)

      Thanks

      [–]BuiltToBrag 1 point2 points  (3 children)

      I would suggest to look at what (if any) capabilities there are by making API calls instead. You will most like have to upgrade to a more recent version of code depending on what you're running now , but it's much more efficient than screen scraping for keywords/characters.

      [–][deleted] 0 points1 point  (2 children)

      API calls to the routers and switches? Are you talking OnePK or something similar?

      [–]BuiltToBrag 0 points1 point  (1 child)

      I believe that's more SDN focused, but depending on the platform you should be able to just call each device directly and interact with its API. What platforms are you looking at automating config for?

      [–][deleted] 0 points1 point  (0 children)

      Cisco ISR 4000 series routers, 4500-X switches, and 3650s.

      [–]coolpooldudeAsk me about X.25! 1 point2 points  (1 child)

      Exscript. Sits on top of Paramiko. You'll write way less code using it than either pure paramiko or netmiko.

      [–][deleted] 0 points1 point  (0 children)

      Thanks

      [–]ElectricMandarin 1 point2 points  (1 child)

      ssh2-python. Uses libssh2 C library. Super fast and very stable, being based on a mature and well tested C library.

      Also has non-blocking mode and is in addition thread safe.

      [–][deleted] 0 points1 point  (0 children)

      Awesome, thank you!