Command Line Arguments for On-Premises Servers

The list below includes useful Command Line arguments to be used for the On-Premises server:

sudo /opt/takipi-server/bin/takipi-server.sh install --help
Usage: ./takipi-server.sh [start/stop/restart/oneliner/config/admin-cli/cleanup/install] [options]
  -v --verbose                 Enable verbose logging
  -h --help                    Print this usage
     --skip-resource-validation Skip minimal resources validation (disk space, etc.)
     --validate                Validate the server started successfully before returning (default: false)
     --no-forever              Avoid forever process - useful when running as a systemd daemon (default: false)
  Server configuration:
     --debug                   Log extensive debug information to log files
  -u --host-url                The host name or IP address of the server
     --proxy-url               The proxy name or IP address witn explicit URL (example: http://server-name:8080)
     --frontend-url            Server name to be used for WEB UI
     --api-url                 Sets the internal API endpoint used by Grafana. Defaults to http://localhost:8080
     --external-storage-url    External storage URL, usually used for multi-node or TLS proxy support
     --catalina-opts           JVM arguments for Tomcat
     --master-port             The port number for the main server                (default: 8080)
     --thread-pool-size        The number of threads used for event processing    (default: Calculated)
     --db-connection-pool-size Connection pool size of the DB component           (default: Calculated)
  Dynalite options: [DEPRECATED]
     --dynalite-on             Force using Dynalite                               (default: false)
     --dynalite-off            Force using RDS instead of Dynalite                (default: true)
     --dynalite-opts           Command line options for Dynalite
     --dynalite-port           The port number for Dynalite                       (default: 4567)
     --dynamite-count          Number of Dynamite processes                       (default: Calculated)
  Setup configurations:
     --storage-path            Create the symlink to an external storage folder
     --log-path                Create the symlink to an external log folder
     --temp-path               Create the symlink to an external temp folder
     --user                    Run the server as user
     --group                   Run the server as group
     --daemon-name             Systemd daemon name                                (default: takipi-server)
     --validate                Validate the server started successfully before 'systemd start ..' return (default: false)
  Memory configurations:
     --skip-heap-calc          Skip Java heap calculation for all processes
     --memory-usage-percent    Total memory to be used by the Server (default: 60% of the RAM)
  DB configuration
     --db-type            RDBMS type (mysql, h2, postgresql or oracle)       (default: h2 unless --db-url specified)
  H2 parameters: (used if --db-type h2 specified)
     --h2-stats-port      The port number for the stats server               (default: 5000)
     --h2-db-port         The port number for the db server                  (default: 5001)
     --h2-queue-port      The port number for Queue DB backend               (default: 5002)
     --h2-pds-port        The port number for PDS DB backend                 (default: 5003)
  Postgres/Mysql/Oracle parameters: (used if --db-type mysql/postgresql/oracle specified)
     --db-url             JDBC URL of rds server                             (default: )
  	Oracle Example:      jdbc:oracle:thin:@//<host_name>/orcl
  	MySQL Example:       jdbc:mysql://<host_name>
  	Postgres Example:    jdbc:postgresql://<host_name>
     --db-user            User for rds server                                (default: )
     --db-password        Password for rds server                            (default: )
     --db-ssl             Enable ssl for database communication              (default: true)
     --no-db-ssl          Disable ssl for database communication             (default: false)
     --db-auth-type       RDBMS auth type (kerberos)                         (default: user/pass if not specified.)
     --kerb-cache-file    Full file location of Kerberos cache file          (default: )
     --kerb-conf-file     Full file location of Kerberos configuration file (krb5.conf) (default: )
  Grafana configurations:
     --skip-grafana            Skip running grafana
  Redis configurations:
     --redis-nodes             The redis nodes. Multiple nodes can be configured with redis-nodes parameter
  	Nodes example:            "redis://domain-name1:6379 redis://domain-name2:6379"
     --redis-type              Redis cluster type (SINGLE, CLUSTER, ELASTICACHE or MASTER_SLAVE)  (default: SINGLE)
     --no-redis                Remove redis configurations
Examples:
  Starting the server
	./takipi-server.sh -u 123.456.789.0 start
  Stopping the server
	./takipi-server.sh stop
  Print the daemons install command
	./takipi-server.sh oneliner

Memory Configurations

The internal memory recommended allocation is calculated on each run into opt/takipi-server/bin/server-memory-config.sh. This file can be edited and modified to set different values for each process.

When running the takipi-server.sh script with the config command it performs all the same functions as the start command but without actually starting the server.

Admin-cli Commands for Super Admins

The list below includes additional set of admin-cli commands to manage assignments of Super Admins:

🚧

Using the admin-cli SUPER_ADMIN Commands

When using these commands it may take up to an hour for the change to take place. Alternatively, restarting the takipi-server after applying these commands will apply them immediately.

Usage: ./takipi-server.sh admin-cli [COMMAND] [user]
	LIST_SUPER_ADMINS``
	SET_SUPER_ADMIN [email protected]
	UNSET_SUPER_ADMIN [email protected]

-Dtakipi.loader.limited.inst

If you're using several logging frameworks for different applications within the same web containers, add this flag to CATALINA_OPTS in /bin/catalina.sh or to CATALINA_OPTS / JAVA_TOOL_OPTIONS.

Note that this flag should be used with caution and only when the default behavior doesn’t work - the flag is not intended as a best practice. Before using the flag, make sure an engineer looks at the Micro-Agent logs to validate that this is indeed the issue.

Validate Parameter

The --validate parameter causes the takipi-server.sh to wait until the server is fully up and running. If the server fails to start the script will hang for up to 5 minutes. The parameter is disabled by default.

User and Group Parameters

The following parameters let you install run the server with a user and group.

ParameterDescriptionComments
--userLets you install and run the server with a user.When installing with a user with root permissions (sudo) but the actual owner could be another user - this parameter doesn't limit the install and server running to the user who does the installation.

Move to https://doc.overops.com/docs/on-premises-advanced-command-line-non-docker
--groupRun the server as groupThis is the same as for the user, but usually the parameters will be a combination of user + group (often the same name) - see example below.

Move to https://doc.overops.com/docs/on-premises-advanced-command-line-non-docker

Installing with the User/Group Parameter

Using the user/group parameters affects the permissions of files under /opt/takipi-server, since the
Systemd Linux Service Manager daemon runs the process with this user/group.

This doesn't guarantee, however, that manually running ./takipi-server start ... will then be run from this user/group.

Here's an example of how these parameters are used:

$JAQEN_HOME/bin/takipi-server.sh install --user david --group david --storage-path /mnt/external-storage

Adjusting URLs used to access the Reliability Dashboards

When accessing the Reliability Dashboards when the backend is running behind a load balancer or with strict firewall rules you can use the --api-url flag to set the internal API endpoint used by Grafana. The default will be: http://localhost:8080.
The corresponding environment variable for this setting is TAKIPI_API_URL.