accessing multiple devices via a script

Hi fellows,
I am supporting a big service provider and sometimes I face this problem.
Sometimes I want to access my customer network and want to extract some
verification output "show commands" from a large number of devices.

What kind of scripting solutions you guys are using this case.

Appreciate the feedback,
Abdullah

Abdullah Al-Malki (a.almalki1402) writes:

Hi fellows,
I am supporting a big service provider and sometimes I face this problem.
Sometimes I want to access my customer network and want to extract some
verification output "show commands" from a large number of devices.

What kind of scripting solutions you guys are using this case.

  Hi Abdullah,

  rancid ?

  Shrubbery Networks, Inc. - RANCID

  Cheers,
  Phil

Abdullah Al-Malki (a.almalki1402) writes:

Hi fellows,
I am supporting a big service provider and sometimes I face this problem.
Sometimes I want to access my customer network and want to extract some
verification output "show commands" from a large number of devices.

What kind of scripting solutions you guys are using this case.

  Hi Abdullah,

  rancid ?

  Shrubbery Networks, Inc. - RANCID

clogin from rancid features prominently in a lot of our network level
automation...

so does pdsh...

http://code.google.com/p/pdsh/

Particularly when it involves hosts.

Back in the day (~2001 era) I used expect to do a lot of tasks across
(in that day) telnet.

http://www.linuxjournal.com/article/3065

Good Luck,
~k

I do this with cluster-ssh, as in some networks I have a generic
script-daemon login that use to log into them all simultaneously. cssh
uses tk and xterm, so its a bit long in the tooth.

New hotness to do this is something like keyboardcast, which can
broadcast keyboard input to however many windows you want. Its currently
broken on Ubuntu 11.10, but I think it works in .04.

Hi Abdullah - Have you seen the new Resource Manager product from
QualiSystems? It has this capability built into it and out of the box to
support large numbers of devices.

Let me know off line where you are located and I can hook you up.

Regards,

Chuck

Is "full disclosure" expected on NANOG, or is it just polite? Like
mentioning that Chuck Reynolds is a salesman for QualiSystems, and not
just another network operator passing on what they might think will help?

I think it's reasonable to expect that sales people identify themselves as such - including what vendor or re-seller they represent - on technical mailing lists. If sales solicitations are not permitted on the list, then it's also reasonable to expect that sales people respect that rule, same as everyone else on the list.

jms

Like Rhys Rhaven.

Pseudonyms and declaring conflicts of interest are two separate things.

clogin which is part of the RANCID suite. I've even done wrapper front ends that give operations device lists and configlets they can push with it. Or you can feed it command line options for one off pushes, etc.

I have been using PLINK (putty's lesser known sibling) scripts for some of our smaller customers to execute information gathering before a project in case of "excellent" documentation. I can usually whip up a script in a few minutes to get sh ru, sh ver and sh diag from 20 devices. Also been using it for a couple of small customers for config backup from webservers, switches, routers, firewalls and anything else with a telnet/ssh login.

Blake

Hi Abdullah,

If your looking for something interactive, check out Mr. CLI

Thank you all for your recommendations.
I will sit this weekend and evaluate what fits into my requirements.

Thanks all

Hello,

You can use also rancid.

Regards

Fabien

Hey did anyone mention Rancid..., just kidding....
I've used ciscocmd in the past, a little outdated but worth looking at (http://sourceforge.net/projects/cosi-nms/files/ciscocmd/)
You might also have some fun writing your own expect scripts.

Like many others on here, I utilize rancid's set of scripts to handle
all the different platform's quirks for access. I then wrap that
inside a perl script that can do things in parallel. I'm no developer
by any stretch of the imagination but I can poke around in perl badly
enough to write some tools. One perl module I've come across is
Parallel::Fork::BossWorkerAsync. Using this module makes it
incredibly easily to run many instances in parallel while each
instance is just a bit different and then can gather data back from
each session. Using some form of parallelization can significantly
decrease the amount of time things take. I hope you find it as useful
as I have.

http://search.cpan.org/~jvannucci/Parallel-Fork-BossWorkerAsync-0.06/lib/Parallel/Fork/BossWorkerAsync.pm

Good Luck!

--chip