Appendix B: grb_rs - Configuration Properties#

The following list of properties can also be displayed using the grb_rs properties command.

ADMINPASSWORD

Type string. Client password for administrator access. The password can be sent in the clear or can be hashed using the ’grb_rs hash’ command for better security.

AWS

Type bool, use —-aws to override on the command line. Enables AWS configuration using ec2 user-data.

AWS_HOSTNAME_MODE

Type string. Indicates how to get the node name - DEPRECATED. See CLOUD_HOSTNAME_MODE.

AZURE

Type bool, use —-azure to override on the command line. Enables Azure configuration using user-data.

CLIENT_DETAILS_ADMIN

Type bool. Indicates that client details such as hostname and IP address are only accessible as an admin user. When a job is submitted, the client hostname, IP, and process ID are recorded. By default, this information can be displayed by any user through the grbcluster command-line tool or the REST API. If this property is set to true, only the administrator can access this information.

CLOUDKEY

Type string. Cloud license key.

CLOUD_HOSTNAME_MODE

Type string. Indicates how to get the node name on the AWS or Azure: ’public’ or ’private’. The public mode will assign the public DNS name or IP, whereas the private mode will assign the base name of the private DNS name. The private mode is used with a Gurobi router.

CLUSTER_ADMINPASSWORD

Type string. Client password to administer the cluster. The password can be stored in the clear or can be hashed using ’grb_rs hash’ command for better security.

CLUSTER_TOKEN

Type string. Unique cluster identifier. The token is an encrypted key used to secure communication between nodes. All nodes of a cluster must have the same token. Use ’grb_rs token’ command to generate a new token.

CONSOLE_TS

Type bool, use —-console-ts to override on the command line. Add timestamps to console log messages.

DATA_DIR

Type string (default data), use —-data to override on the command line. Root directory to store remote services data.

DEGRADED_TIMEOUT

Type int (default 60). Timeout for evicting a DEGRADED node from the cluster; 0 for no timeout.

FILE_DESCRIPTOR_LIMIT

Type int (default 2048). Maximum number of file descriptors.

FIXED_JOBLIMIT

Type bool. Indicates whether the job limit can be changed once a node has started.

GROUP

Type string. Node grouping for job affinity assignment.

HARDJOBLIMIT

Type int (default 0). A hard limit on the number of simultaneous client jobs. Certain jobs (those with priority 100) are allowed to ignore the JOBLIMIT, but they aren’t allowed to ignore this limit. Client requests beyond this limit are queued. Use 0 to disable.

HELMET

Type bool (default true). Enable Helmet secure HTTP headers request protection If there is connectivity issue please disable Helmet request protection

HOSTNAME

Type string, use —-hostname to override on the command line. Advertised hostname of the cluster node.

IDLESHUTDOWN

Type int (default -1), use —-idle-shutdown to override on the command line. Idle time limit (minutes) to trigger a shutdown of the server, -1 to disable.

IDLESHUTDOWN_COMMAND

Type string. Command to execute when the idle shutdown is reached (typically a command to shut down the machine).

IDLESHUTDOWN_STOPPED

Type int (default -1). Idle time limit (minutes) to trigger a shutdown of the machine once the processing state is STOPPED; -1 to disable.

IDLETIMEOUT

Type int (default 0). Default idle timeout, in seconds. If a job does not send a command for more than the timeout, it will be terminated. Use 0 to disable.

IGNOREPRIORITIES

Type bool. Disables job priority handling.

JOBLIMIT

Type int (default 2). A limit on the number of client jobs that are allowed to run on the server at a time. Client requests beyond this limit are queued.

JOIN

Type string, use —-join to override on the command line. List of other nodes to join.

JOIN_TIMEOUT

Type int (default 20). Timeout for a successful join; use 0 to disable.

KEEPALIVE_TIMEOUT

Type int (default 60). Default keep-alive timeout, in seconds. If a job does not send a keep-alive message within the timeout interval, it will be terminated.

KEEP_BATCH_DATA

Type bool. Indicates if temporary batch files must be kept. When a batch job is executed, input data is first generated in an input directory. Output data is similarly stored in an output directory. By default, these directories are deleted once the batch is completed to save space. However, using this property, the files can be kept until the job is evicted from the recent history (see MAX_RECENT.)

LICENSEID

Type string. Cloud license ID.

LOGFILE

Type string, use —-logfile to override on the command line. Enables logging to a rotating log file.

LOGFILE_MAX_AGE

Type int (default 5), use —-logfile-max-age to override on the command line. Limits the rotating log file to a number of days.

LOGFILE_MAX_SIZE

Type int (default 500), use —-logfile-max-size to override on the command line. Limits the size of each file to a size in MB.

MANAGER

Type string, use —-manager to override on the command line. Cluster Manager URL.

MANAGER_INSECURE

Type bool. Indicates whether the connection to the manager should use TLS insecure.

MAX_QUEUE

Type int (default 1000). Maximum number of jobs in the queue.

MAX_RECENT

Type int (default 50). Maximum number of executed jobs in the recent history.

MEMLIMIT

Type float64 (default -1). Limits the total amount of memory of a job (in GB, i.e., \(10^9\) bytes). If more is needed, Gurobi will fail with an OUT_OF_MEMORY error. Note that it is not possible to retrieve solution information after a termination error.

NOQUEUE

Type bool. Disables job queueing.

NO_CONSOLE

Type bool, use —-no-console to override on the command line. Disables the console log.

NO_LOCAL_DISK

Type bool (default true). Indicates that local disk may not be used by workers (to store node files, solution files, etc.). You can set this to false to permit local files if you are confident that local disk space won’t be exhausted.

PASSWORD

Type string. Client password to access the cluster. The password can be in clear or can be hashed using ’grb_rs hash’ command for better security.

PORT

Type int, use —-port to override on the command line. Port number for the REST API.

REGISTRATION_PORT

Type int. Port used to register worker, 0 means a dynamic port.

SOFTMEMLIMIT

Type float64 (default -1). Limits the total amount of memory of a job (in GB, i.e., \(10^9\) bytes) available to Gurobi. If more is needed, Gurobi will terminate with a MEM_LIMIT status code, leading to a graceful exit of the optimization, such that it is possible to retrieve solution information afterward or (in the case of a MIP solve) resume the optimization.

STRICT_RUNTIME_MATCHING

Type bool (default true). Indicates whether matching of client and runtime version is strict. When the matching is strict, the runtime having the same technical release will be selected. When it is not strict, the runtime having the latest technical release will be selected.

SYSLOG

Type bool, use —-syslog to override on the command line. Log to syslog or Windows event log.

THREADLIMIT

Type int (default -1). Maximum number of threads used by a worker, as opposed to the total number of threads used by the server. Furthermore, the maximum number of threads for each individual job will be the minimum of the THREADLIMIT parameter and the Threads parameter. If the THREADLIMIT parameter is left at its default of -1, the value specified by the Threads parameter will determine the number of worker threads.

TIMELIMIT

Type float64 (default -1). Limits the total time expended during optimizationr (in seconds). If the limit is reached, the Optimization will return the TIME_LIMIT status.

TLS

Type bool, use —-tls to override on the command line. Enables TLS encryption protocol.

TLS_CERT

Type string, use —-tlscert to override on the command line. Path to TLS certificate file. If not specified, a self-signed certificate will be generated.

TLS_CIPHERS

Type string, use —-tls-ciphers to override on the command line. A comma-separated list of supported cipher policies or suites used for TLS secure communication. Use grb_rs ciphers to list the supported policies and ciphers for this release. If not specified, the Default Policy of secure cipher suites is used.

TLS_INSECURE

Type bool, use —-tls-insecure to override on the command line. Enables TLS encryption protocol but skips certificate verification. This mode can be used with self-signed certificate so that data is encrypted.

TLS_KEY

Type string, use —-tlskey to override on the command line. Path to TLS key file. If not specified, a key will be generated to self-sign a certificate.

USERNAME_ADMIN

Type bool. Indicates that job username is only accessible as an admin user. When a job is submitted, the username for the client process is recorded. By default, this information can be displayed by any user through the grbcluster command-line tool or the REST API. If this property is set to true, only the administrator can access this information.

VERBOSE

Type bool, use —-verbose to override on the command line. Enables verbose logging.

WORKER

Type bool, use —-worker to override on the command line. Declare the node as a distributed worker.