Is there a way to script a reboot on the R700

  • 3
  • Question
  • Updated 6 months ago
  • Answered
Is there a way to script a reboot on the R700?s like a cronjob that resets them at a given time, or every 24 hours, i find the double in performance after a reboot. I have 8 R700's on a zone director 3000 and one standalone (elsewhere)

thanks
Photo of charlie wallace

charlie wallace

  • 3 Posts
  • 0 Reply Likes

Posted 3 years ago

  • 3
Photo of Daniel M

Daniel M

  • 43 Posts
  • 9 Reply Likes
You should work with support to resolve the performance issues—rebooting all your APs regularly is kind of ridiculous.
Photo of charlie wallace

charlie wallace

  • 3 Posts
  • 0 Reply Likes
i've worked with support for so much time and different issues on these ap's that i've more or less just given up with them, at some point the money spent troubleshooting them just diminishes , this is just yet another issue.
Photo of Michael Brado

Michael Brado, Official Rep

  • 2109 Posts
  • 297 Reply Likes
APs can be manually rebooted from the ZD's WebUI Monitor/Access Points page,
using the icon to the right, with two blue revolving arrows. We have updated bug
fixes and radio performance issues in our 9.8.2.0.15 firmware just posted, to use
for further evaluation.
Photo of charlie wallace

charlie wallace

  • 3 Posts
  • 0 Reply Likes
i'll give it a go, thanks.
Photo of Sean McBride

Sean McBride

  • 4 Posts
  • 0 Reply Likes
I too am in need of the ability to script scheduled reboots of specific groups of AP's due to connection issues that users are experiencing that are resolved with a reboot of the AP. I do not want to spend hours clicking one by one in the controller to accomplish this task.
Photo of Michael Brado

Michael Brado, Official Rep

  • 2109 Posts
  • 297 Reply Likes
Sean, we have a ZD feature request pending to allow AP commands to an AP-Group rather than single AP or all connected APs (FR-1094).  If you determine the IP address of the APs you wish to reboot by whatever scripting method, the AP CLI command to do so is 'reboot'.

rkscli: reboot

Rebooting... please wait.

Photo of Sean McBride

Sean McBride

  • 4 Posts
  • 0 Reply Likes
I have a RuckusZD3000 controller, from the controller is there a way to reboot multiple AP's at the same time and schedule the reboot for off hours?

Also with the devices requirement of needing to know what to login as BEFORE the login credentials how can any of this be scripted?
(Edited)
Photo of Hector Vargas

Hector Vargas

  • 3 Posts
  • 0 Reply Likes
Hi Michael, Any news about running commands to an AP-Group rather than a single AP or all connected APs?
Photo of Bill Burns

Bill Burns, AlphaDog

  • 203 Posts
  • 38 Reply Likes
Yes. There is a way to do this via a cron job on a linux machine.
See this link:
https://github.com/bot779/ruckusconf

I don't know who else uses this (if anyone) but it works well for me.
Let me know if/what issues you have once you install it.
Photo of Majestic Steel

Majestic Steel

  • 3 Posts
  • 0 Reply Likes
Can you post an example script for:
https://github.com/bot779/ruckusconf
Photo of Bill Burns

Bill Burns, AlphaDog

  • 203 Posts
  • 38 Reply Likes
If you look at the ruckusconf script here:
https://github.com/bot779/ruckusconf/blob/master/ruckusconf
You'll see a few examples embedded in the "source" of the script itself.

If you're specifically looking for an example of rebooting an individual AP though the controller, here it is:
./ruckusconf --debug --command 'rksap_cli -a 24:c9:a1:29:47:a0 "reboot"' 192.168.3.180

In this example, the IP refers to your controller and the MAC address refers to your AP.

The commandline would be very different if you wanted to use ruckusconf to contact the AP directly. (as opposed to going through the controller)
That (I believe) would be:
./ruckusconf --ap --command "reboot" 192.168.3.99
where the IP refers to the AP and not the controller.

Also, I've got some new code that allows me to schedule commands on the controller without using cron, so I don't have to embed passwords into a cron job.
If there's interest in that, I could post it as well.
Photo of Sean McBride

Sean McBride

  • 4 Posts
  • 0 Reply Likes
Thank you for all your assistance. I would be very interested in your new code. Thanks again.
Photo of Majestic Steel

Majestic Steel

  • 3 Posts
  • 0 Reply Likes
Yes, I would like to see the new code that would allow to schedule commands on the controller without using cron. Thanks!
Photo of Bill Burns

Bill Burns, AlphaDog

  • 203 Posts
  • 38 Reply Likes
OK. There's a new version of the ruckusconf script to support that capability.
(and a new script that calls it)
So if (for some reason) you want the old version of ruckusconf, you should download that now before I upload new revisions.
Photo of Bill Burns

Bill Burns, AlphaDog

  • 203 Posts
  • 38 Reply Likes
Sean:
You mentioned the need to reboot "specific groups" of APs.
I had an issue where some APs (always the same 2 models of AP) would have their 5-Gig radios stop working.
Do you need something that would detect a fault like this and only reboot those APs or did you want to create a static list of APs and always reboot only those APs?

I've got a script called "rebootat3am" that will wait 'till 3:30am the next morning and then reboot all APs.

I only ran that script briefly because it seemed to increase the behavior where the APs would all "guess" the same channel (after the reboot) and then spend time "detecting interference" and jumping between channels.

If "rebootat3am" is what you guys want, I'll upload that.
(but beware of the consequences)

Then (If that works for you) I should be able to tweak things to make it reboot all APs at every 3:30am.

If you want to reboot just a few APs, I should probably modify the script to do that.
Photo of Bill Burns

Bill Burns, AlphaDog

  • 203 Posts
  • 38 Reply Likes
Here is the scheduled AP reboot script.
https://github.com/bot779/ruckusconf/blob/master/rebootat3am
It requires the latest version of the ruckusconf script.
https://github.com/bot779/ruckusconf/blob/master/ruckusconf

"rebootat3am" should prompt you for your ruckus password, test the password by logging into your controller, wait 'till 3:30am the next day and then run the "reboot" command.

WARNING:
It is intended to reboot all of the APs connected to your controller.
This will disrupt your wifi connectivity.
Test it at a non-critical time.

In order for it to work, you will have to change the hard-coded IP address (at the end of the script) to the IP of your controller.
If you want the reboot to be scheduled at a different time, that will require editing the script.
You will need to leave this script running in a window 'till the scheduled time.

If you have any questions, let me know.
Photo of Michael Brado

Michael Brado, Official Rep

  • 2074 Posts
  • 289 Reply Likes
Thanks for sharing Bill.
Photo of Majestic Steel

Majestic Steel

  • 3 Posts
  • 0 Reply Likes
Thanks Bill!
Photo of Bill Burns

Bill Burns, AlphaDog

  • 203 Posts
  • 38 Reply Likes
Let me know if that worked for you.
Photo of Sean McBride

Sean McBride

  • 4 Posts
  • 0 Reply Likes
Unfortunately I am not a Linux guy, so my bumbling through trying to get these to work is a real headache. But I do appreciate your help and sharing your code.
Photo of Bill Burns

Bill Burns, AlphaDog

  • 203 Posts
  • 38 Reply Likes
If you want me to walk you through it, go to:
http://webchat.freenode.net/
and join the "ruckus" channel.
Photo of Matti

Matti

  • 3 Posts
  • 0 Reply Likes
I know that I'm a couple years late on this. But, in case someone comes looking for this or similar information in the future...

In reference to the "ruckusconf" scripts (https://github.com/bot779/ruckusconf), if you prefer to use a "Windows" based system, you have a few options since the "ruckusconf" scripts appear to be written using a combination of "Linux Shell" (sh) Commands ("rebootat3am" & "buildclientos" files) and TCL (Tool Command Language) Scripts w/ the "Expect" Automation Module ("ruckusconf" file), etc.

1.) Use "Cygwin" to run the Linux based scripts (https://cygwin.com), which comes w/ the "Linux Shell" (sh). You will also need to install the "TCL", "Expect" & "SSH Client" Packages/Components, using the "Cygwin Package Manager".
(Edited)
Photo of Matti

Matti

  • 3 Posts
  • 0 Reply Likes
2.) Use the "Active TCL" (https://www.activestate.com/activetcl) and the included "Teapot" (TCL Package Manager) to install the "Expect" Module, via the Command Line Interface (cmd).

You will also need an "SSH Client" to Remotely Connect to your "Ruckus" Device. a couple options are "OpenSSH" (http://www.mls-software.com/opensshd.html) and/or the "Putty" SSH/Telnet Client Suite (http://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html). Download the "Putty" .zip file, which contains all of the "Putty" applications, as you're going to need "Plink" to Automate the SSH Connection. 

You can then replace the "Linux Shell" (sh) Commands w/ "Windows/DOS" Commands or use a Scripting Language, such as the previously installed "TCL" or perhaps "Perl/Python". Both "Perl" & "Python" have their own variations of the "Expect" Module (Expect, WinExpect, wExpect, pExpect, etc).

In my opinion, the simplest route is likely to go w/ option #1 (Cygwin), since everything can be installed using the "Cygwin Package Manager" (TCL, Expect, SSH, etc). However, I personally use option #2 (TCL w/ Expect Module, OpenSSH & Putty/Plink, along w/ cmd/vbscript & occasionally Python/pExpect or Perl/Expect).

Hope I was able to offer some additional insight!
(Edited)
Photo of Matti

Matti

  • 3 Posts
  • 0 Reply Likes
Anyways, if I have some time, I might just re-write the "ruckusconf" scripts for Windows usage, myself.
If I get to it, I'll be sure to create a Repository on Github and to post a URL/Link here.