Configure the Process Launcher Service

To see the available commands and options, run the rep-launcher-service executable with the --help argument. For example:

rep-launcher-service-default --help

Consistent with the other services there are three commands available: run, show, and write.

To see the help for a specific command, run the command with the --help argument.

To write a configuration:

  1. As the user running the service (root user unless changed in the systemd file), run the rep-launcher-service executable's write command. For example:

    rep-launcher-service-default write

  2. Use the show command to view the configuration. The “data_directory” property tells you where the scaling service configuration is located. The configuration is specified in the launcher_service.json file.

  3. Edit the launcher_service.json file. Configurable properties are highlighted in bold in the following sample and described below.

{
  "host": "0.0.0.0",
  "port": 4911,
  "debug": false,
  "disable_ssl": false,
  "use_otel": false,
  "root_path": "",
  "origins": [
    "*"
  ],
  "verbosity": 1,
  "data_directory": "C:\\Users\\user\\AppData\\Local\\Ansys\\REP\\launcher_service",
  "services": {
    "auth_url": "http://localhost:8080/rep/auth/realms/rep",
    "external_auth_hostname": null,
    "external_auth_port": null,
    "external_auth_protocol": null,
    "otel_exporter_url": "http://localhost:4317/",
    "monitor_url": "grpcs://localhost:8443",
    "admin_keys": [
      "groups.admin",
      "roles.admin"
    ],
    "otel_exporter_type": null
  },
  "allowed_users": [],
  "disallowed_users": [
    "root"
  ],
  "user_mapping": {},
  "timeout_sec": 30,
  "use_sudo": false,
  "getuid_method": "id_command",
  "min_uid": 1000,
  "min_gid": 1000,
  "grpc_headers": [
    "application-path=rep/monitor_sink"
  ],
  "logs": [
    "file",
    "console"
  ],
  "monitors": [
    "otel"
  ],
  "enable_config_watcher": true
}
PropertyDescription
"host"This is the network interface on which the Process Launcher runs. Defaults to 0.0.0.0.
"port"This is the port on which the Process Launcher runs. Defaults to 4911.
"debug"Debug toggle for extra debugging information.
"disable_ssl"Disables ssl checking. Defaults to false due to extra setup requirements.
"data_directory"

Default directory for configuration files and logs. The default is:

<serviceuser>/.ansys/rep/launcher_service/

"auth_url"Path to Keycloak Realm. Defaults to https://localhost:8443/rep/auth/realms/rep.
"allowed_users"List of usernames that are allowed to contact the system. If this list is empty, it is assumed all users are allowed. By default this is empty.
"disallowed_users"List of usernames that are not allowed to contact the service. The default is root.
"user_mapping"

This property has two roles:

  • Used to add mappings from userA to userB when the username used on the corporate network is not the same as the username used on the HPC network.

  • Used to add the service user for running tasks that are not user-based, such as querying the job scheduler for queues and hardware. The user "service-account-rep-impersonation" should be mapped to a user who can query the job scheduler.

To define mappings, specify a comma-separated list using the following format: "userA": "userX", "userB": "userY".

"getuid_method"

Method to get the UID (user identifier). A UID is a number assigned to each Linux user.

The default method is "getpwnam", which gets user information using inbuilt functions. If an alternate method is needed, the "id_command" method can be used to get the same information using the id command line utility in Linux.

"min_uid"Minimum user account ID allowed to contact the system. Default is 1000.
"min_gid"Minimum group ID allowed to contact the system. Default is 1000.