Scrip Arrancar y Parar vServer remoto linux


([N1] finanplan) #1

Buenas noches

Estoy intentando generar un script para arrancar o parar un vserver que se encuentra en un servidor remoto ubuntu 12.04, para ejecutarlo desde mi página web (que está en otro servidor remoto linux ubuntu 12.04 distinto). Al estilo de como lo hace velneo en “mi cloud”.
He probado muchas, muchas cosas, php, ssh, ssh2, … pero no lo consigo.
¿Alguna pista de como enfocar este tema?.

Un saludo. Daniel.


([N4] innovadb) #2

Hola Daniel

Si no me equivoco necesitas un servidor web en la misma máquina donde está el vserver.

Si tienes una web remota, tendrás que llamar a una url que ejecute el script de arranque o parada.

Un saludo


([N1] cristianvg2003) #3

Un pequeño script en Ruby para iniciar o parar un vServer a traves de ssh a cualquier servidor remoto:

https://gist.github.com/Heavyblade/6937697

espero te sirva,

pdta: es adaptable para usar con llaves ssh, pero eso si ya es consultoría jejeje

un Saludo,


([N1] finanplan) #4

Gracias por vuestras aportaciones

Cristian: al ejecutar me da el siguiente error
from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in require' from /home/ubuntu/vserver.rb:4:in<main>’

El script lo ejecuto desde consola, para probar, con la siguiente instrucción:
sudo ruby /home/ubuntu/vserver.rb IP=54.xxx.xx.xx USUARIO=yyyy PASSWORD=zzzz SET_STATUS=start

Para ejecutarlo desde mi web supongo que lo he de lanzar con PHP.

¿tienes idea a que se debe el error?

Respecto a la consultoría en breve te preparo un escrito detallando lo que quiero exactamente, para ver si llegamos a un acuerdo económico y me lo haces tu. Todo este tema me supera un poco.

Un saludo. Daniel.


([N1] cristianvg2003) #5

@Daniel script corregido, lo corri en maquina ubuntu 12.04 limpia y lo ensaye contra un par de vServers:

https://gist.github.com/6944458

y si la idea es que desde el lado del servidor lances el script en este caso con php.

un saludo,


([N1] cristianvg2003) #6

Pensándolo mejor si solo deseas para o arrancar el vServer en otro servidor simplemente:

<?php
$output = shell_exec(“ssh -i /paht_a_tu_key/ssh_key user@tudominio.com ‘cd /path_a_tu_vserver/VelneoV7-vServer; sudo ./vServer.sh -s’”);
echo “

$output
”;
?>

Más simple y directo, el anterior lo uso para otras cosas por eso más complejo.

Un saludo,