KOTS is a kubectl plugin to help manage Kubernetes Off-The-Shelf software.
The KOTS plugin runs locally, on any computer that has kubectl installed.
KOTS doesn’t run in a cluster, but it helps manage the preflight, install, support, and upgrade process of third party software in Kubernetes.
KOTS includes an Admin Console that runs alongside the application.
The Admin Console is installed in the cluster and provides a web-based UI to manage the lifecycle of a KOTS application.
The KOTS plugin will install and configure the Admin Console during installation and upgrade of a KOTS application.
How To Install
All installation methods assume you already have kubectl installed on your machine.
If you’re using an embedded Kubernetes cluster), both tools will already be pre-installed.
Easy installation script
To start, install KOTS using the Krew plugin manager:
curl https://kots.io/install | bash
This will give you a new kubectl command.
Installing without root access
For computers without root access or cannot write to the
/usr/local/bin directory, the
kots plugin can be downloaded using the following steps:
- Download the release for your Operating System from https://github.com/replicatedhq/kots/releases/latest (Linux and MacOS are supported)
- Unpack the release
- Rename the
kots executable to
- Copy the renamed
kubectl-kots to anywhere on the
The install subcommand will install the application directly to a cluster.
By default, kots install will include the admin console to provide a web based management console.
If you’d rather use kubectl or another workflow to deploy to your cluster, you can run kots pull to create a directory on your workstation with the Kots application
Once an application is running and has the Admin Console deployed with it, you can run kots download to retreive a copy of the application manifests from the cluster, and store them in a specific directory structure on your workstation.
If you have a copy of an application that was created with kots pull or kots download, you can upload it back to the Admin Console using the kots upload command.
If you’ve deployed an application with the admin console, the kots admin-console command will open a proxy so you can connect to the admin console from your machine.
kots admin-console upgrade
If you’ve deployed an application with the admin console, the kots admin-admin console upgrade command will upgrade just the admin console to the latest version.
The application can be updated from the admin console, not this command.
If you’ve lost the password to the admin console but still have kubectl access, the kots reset-password command will prompt for a new password and upload it to the cluster.
Provides wrapper functionality to interface with the upstream source.
Prints the current version of the kots Kubectl plugin and provides a command for updating if a new version is available.
To give KOTS a try, head over to the KOTS Helm guide.
If you want to see what it’s like to distribute a KOTS application, head to the KOTS Vendor guide.