Gurobi Remote Services and Compute Server Administration


Gurobi Remote Services and Compute Server Administration

The command-line tool can also be used to administer Gurobi Remote Services and Gurobi Compute Server. The format of an administrative command is simply:

gurobi_cl [--command]*
Available administrative commands are:
--status
Obtain a list of running and queued jobs.
--killjob=
Kill a job. The argument identifies the job to kill. You specify a job by giving the client hostname, followed by a comma, followed by the process ID (PID) of the job. You typically obtain this information from the output of gurobi_cl --status.
--joblimit=
Change the server job limit. The argument gives the new limit. Note that this command is useful for taking a Compute Server off-line: setting the job limit to zero allows currently running jobs to finish, but prevents new ones from starting.
--newadminpassword
Change the administrator password.

Administrative commands can be run from any machine on the same network as the server. All except --status prompt you for the administrator password. Alternatively, you can provide the password on the command line using the --adminpassword= command. For security reasons, if no initial administrator password is specified (via the grb_rs.cnf file), server administration is disabled.

One additional command-line argument that you may need in conjunction with these commands is --server= (--servers= is also accepted). This argument specifies the machine where the requested command should be performed. If you omit this argument, the machine name will be pulled from the COMPUTESERVER= line of your client license file.

Note that the --joblimit and --newadminpassword commands can only be applied to a single server at a time. If you specify multiple servers (either through the --servers switch or through your client license file), the command will only be applied to the first member of the list.

The following shows sample output from gurobi_cl --status...

------------------------------------------------------------------
Checking status of Gurobi Remote Services on server 'server1'...
------------------------------------------------------------------

Gurobi Remote Services (version 6.5.0) functioning normally
Available services: Distributed Worker, Compute Server
Job limit: 2, currently running: 2

Jobs currently running: 2 ...

Client HostName    Client IP Address    UserName        PID
-----------------------------------------------------------
client1            192.168.1.101        smith           7416
client2            192.168.1.102        jones           1536

Jobs currently queued: 1 ...

Client HostName    Client IP Address    UserName        PID     Priority
------------------------------------------------------------------------
client3            192.168.1.103        jim             2620    5
The report shows two jobs currently running (one from user smith on client machine client1, and one from user jones on client machine client2), and one job queued (from user jim on client machine client3).

Here are a few more example administrator commands:

> gurobi_cl --killjob=client1,7416
> gurobi_cl --newadminpassword --server=gurobiserver1
> gurobi_cl --joblimit=0 --server=gurobiserver1