Introduction

High-level architecture

Cisco RADKit consists of three main elements:

RADKit Service

A lightweight application installed on Customer premises that is used as a secure gateway to the Customer’s network devices. It supports many standard management protocols such as SSH, Telnet, Netconf, SNMP, HTTP/REST, Swagger/OpenAPI and SOCKS/HTTP proxying. The Customer retains full control over which devices are accessible by a given Cisco Engineer, using which protocols and for how long.

RADKit Client

A Python-based front-end that enables a Cisco Engineer to remotely query or access a Customer’s network devices through a RADKit Service. The Client enables programmatic troubleshooting and monitoring, automated retrieval and analysis of device outputs using Cisco-internal tools, direct interaction with the devices, and more.

RADKit Cloud

Acts as a transport between the RADKit Client and Service. It provides TLS encryption, CA and OCSP services, and Cisco SSO & certificate-based authentication for Clients and Services (jointly referred to as “Endpoints”).

In addition, RADKit includes the following tools for increased usability and manageability:

RADKit Network Console

A simplified interface to RADKit Client that does not require any knowledge of Python or programming. It gives access to key RADKit features with minimal training.

RADKit Control

A companion to RADKit Service that can be used either as a command-line tool or as a Python API. Control makes it possible to manage one or more RADKit Services remotely over the network (direct IP connectivity is required). Every operation that can be done through the WebUI can be done through Control as well.

RADKit Service GUI

A Tk-based, multi-platform graphical application that lets a user start/stop/configure RADKit Service, read logs and change the logging level.

RADKit Medic

An app that assists the user in supporting, repairing and wiping RADKit installations.

Installation process

Setting up RADKit as an end user involves installing and configuring the Service, the Client, or both. This typically involves the following high-level steps:

  • Service:

    • install the Service using the pip package manager or an installer;

    • bootstrap and create a superadmin user;

    • enroll the Service and retrieve an identity certificate by logging in with Cisco SSO.

  • Client:

    • install the Client using the pip package manager or an installer;

    • authenticate using Cisco SSO.

Installation options

First-time users are encouraged to follow the Quick start guide.

To install RADKit with a built-in Python run-time environment on the most common platforms:

To install RADKit within an existing Python environment (choose this if you are a developer), see pip installation.

For details on supported platforms and Python versions, see Compatibility.