Linux installer

Installation type

There are currently two ways to install RADKit on Linux using the installer:

System-wide
  • install RADKit under /opt/radkit (cannot be changed);

  • set up RADKit Service as a systemd service;

  • recommended for:

    • production deploymwents;

    • installing RADKit on Cisco CSPC.

Custom and single-user
  • install RADKit under $HOME/.local/radkit by default (can be changed);

  • start RADKit Service manually as a user process (if needed);

  • recommended for:

    • evaluation purposes;

    • environments without root or sudo access;

    • very customized RADKit setups.

Warning

If you have an existing RADKit installation and you are switching to the “system-wide” installation type using the installer, you will have to move your Service data files to the appropriate location. It is a one-time manual operation that will be described further in the installation instructions.

In both cases, the RADKit installer will set up a complete, dedicated Python environment with the appropriate interpreter version and all required packages.

Warning

Please do not alter the Python environment deployed by the installer in any way. Installing new packages or upgrading existing ones could break your RADKit installation. In order to add packages and/or do advanced scripting, please use a pip based installation method instead.

Downloading RADKit

Please visit the downloads area and get the latest RADKit installer for Linux. The installer is named cisco_radkit_<VERSION>_linux_x86_64.sh and the signature file is named cisco_radkit_<VERSION>.sig256, where <VERSION> is the RADKit version that you are downloading.

Danger

All RADKit releases available externally are cryptographically signed by Cisco. Unlike the Windows and macOS installers, the Linux installer signature must be verified manually (please refer to Code signing for more information). Never install unsigned or unverified software !

Installing RADKit

At this point, you must select the appropriate installation instructions based on your requirements.

Please click on one of the following links:

After your chosen type of installation is complete, the subsequent steps to configure, update and uninstall RADKit are the same regardless of the installation method and are described further in this document.

Bootstrapping RADKit Service

Here are a few examples of bootstrapping RADKit Service on Linux. These are valid for both system-wide and custom/single-user installations. For a more general overview of bootstrapping, please see Service bootstrap.

Using the Service WebUI

Point your browser to https://localhost:8081/ and create the superadmin account.

Using RADKit Control (interactive)

Run radkit-control system bootstrap in a terminal. RADKit Control will connect to RADKit Service and prompt you for the superadmin password.

Using RADKit Control (non-interactive)

Create a file without group/other permissions and store the desired password in it, then export and set the RADKIT_CONTROL_ADMIN_PASSWORD_FILE environment variable to the path to the password file, and run radkit-control system bootstrap in a terminal.

Updating RADKit

You can install a newer version on top on an existing older installation for upgrade, as the directory layout created by the Linux installer allows for installation of different versions of RADKit alongside one another (the user is responsible for cleaning up old versions).

Note

Since RADKit’s environment can occupy a significant amount of disk space it is advised to monitor the size of the RADKit installation directory and uninstall unused versions as needed.

Uninstalling RADKit

In order to uninstall a specific version, open a terminal and run the uninstall script located within that version’s directory, for example:

$ sudo /opt/radkit/versions/1.7.0/uninstall

This will remove the chosen version from your system and clear all related symlinks if applicable. If the active symlinks are currently pointing to another version they will not be removed. Symlinks to previous installations cannot be restored other than manually.

Warning

Currently the uninstaller will not remove the RADKit systemd service if it exists. This may or may not be added in a future version.

Customizing the installation

The installer provides flags and options to help with customization and automation. There are two sets of options: one for the self-extractor (the outer .sh script) and one for the actual RADKit installer program contained within. The two sets of options must be separated by a double dash --:

$ ./cisco_radkit_<VERSION>_linux_x86_64.sh (EXTRACTOR_OPTIONS) -- (INSTALLER_OPTIONS)

The self-extractor accepts the standard Makeself options, notably:

  • --target DIR: specify where to extract the archive (default: temporary directory under /tmp).

The RADKit installer accepts the following options (after the -- separator):

  • --accept-eula: automatically accept the RADKit End User License Agreement;

  • --[no-]systemd: specify whether to install RADKit system-wide as a systemd service;

  • --installation-path PATH: specify the installation path when --no-systemd is specified;

  • --default-install: automatically accept the EULA and proceed with default installation options.

Example:

$ ./cisco_radkit_<VERSION>_linux_x86_64.sh -- --default-install

Troubleshooting

On some Linux distributions, the installer may fail with an error like:

702: ./radkit-installer-entrypoint.sh: Permission denied

This typically occurs on systems where the /tmp directory is mounted with the noexec option. The RADKit Linux installer extracts itself into a temporary directory, and if /tmp is marked as noexec, the installation process cannot proceed because the next installation stage cannot be started. A simple workaround is to extract into a different location, for example:

# Extract into a new directory "tmpdir" and proceed with the installation
$ ./cisco_radkit_<VERSION>_linux_x86_64.sh --target ./tmpdir

Note that you may need to manually delete ./tmpdir and its contents after installation.