0

Our company manages over one hundred servers and we would like to "ask" these servers for basic usage info once or twice a day using http. The usage info can be easily found with a perl cgi script and we would like to have an http interface to ease the creation of scripts and testing them. It seems an overkill to have apache, or even nginx+fcgiwrap, to serve one or two requests per day. We were thinking of using openbsd-inetd (which is already installed in all the servers) to launch a web server that could easily pass the request to the perl cgi script. What are good alternatives to do this?

  • 1
    I use thttpd for ultralight cases, there's probably a package available from your distro. – Chris S Feb 14 '14 at 15:14
  • busybox has a httpd as well - it is what a lot of home routers use to provide a web interface – Brian Feb 14 '14 at 15:34
2

Have you considered using central web server executing via SSH custom scripts on the queried servers?

In many environments SSH is used anyway for remote management. SSH offers option to auto-execute specific local command for connection authenticated with specified key.

IMHO it is an option worth to seriously consider if SSH is deployed anyway.

1

If you write a perl script, just have a look to Catalyst, or Mojolicious, or Dancer. They are micro framework able to listen on a port to serve few HTTP requests. So you will not be forced to install a web server in front of your script.

  • These frameworks seem very good for developing applications. We need only be able to remote run a cgi script via http. We won't have css, or js, or images. This will be used mainly for system administration and for machine to machine communications. – Ricardo Marimon Feb 14 '14 at 15:45
  • All in all, you have to call a script via a web interface, so it's an application. Small application but an application. There's nothing lighter than a micro framework to build a tiny app. – DrGkill Feb 14 '14 at 15:53
  • I was just hoping that since this will get two or three hits per day, nothing will be running on the server for the rest of the time. – Ricardo Marimon Feb 14 '14 at 15:56
  • Maybe you can do it through an ssh command or inetd but your client will be ssh or telnet, not an http client. – DrGkill Feb 14 '14 at 16:00
0

I used script to collect data, zip it and send archive via scp (pub key ssh auth) to log server.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.