KOTS Terminology and FAQs
This topic lists key terminology and frequently-asked questions (FAQs) for the Replicated KOTS installer that are helpful to understand before getting started.
Key Terminology
Air Gap
Air gap refers to customer environments that do not have outbound internet access. Air gap environments are common for enterprise users that require high security.
Embedded Kubernetes
Embedded Kubernetes refers to delivering a Kubernetes distribution alongside an application, so that both Kubernetes and the application are deployed in the customer environment. Embedding Kubernetes allows software vendors to install their Kubernetes application in non-Kubernetes customer-controlled environments, such as virtual machines (VMs) or bare metal servers. Additionally, software vendors that embed Kubernetes with their application have greater control over the charactersitics of the cluster where their application is installed. This allows vendors to deliver a cluster that meets their application's requirements, which can help reduce errors during installation.
Both the Replicated Embedded Cluster and Replicated kURL installers can be used to embed Kubernetes with your application. For more information, see Using Embedded Cluster or Introduction to kURL.
KOTS Custom Resources
KOTS provides several Kubernetes custom resources in the kots.io
API group. KOTS custom resources are consumed by KOTS or other kubectl plugins and are not deployed to the cluster.
Software vendors can configure KOTS custom resources to provide installation instructions and control the application experience in the KOTS Admin Console.
For more information, see About Custom Resources.
KOTS Template Functions
KOTS provides a set of custom template functions based on the Go text/template library that can be used in any Kubernetes manifests for applications deployed with KOTS.
KOTS template functions can be used to generate values specific to the customer environment that can be useful during installation. For example, customer entitlement information, user-provided configuration values, or the number of nodes detected in the Kubernetes cluster where the application is installed.
For more information, see About Template Functions.
FAQs
What is KOTS?
Replicated KOTS is an open source kubectl plugin maintained by Replicated. KOTS provides highly successful installations of Kubernetes applications into diverse environments (including on-prem and air gap environments).
For more information, see Introduction to KOTS.
What do I have to do to enable KOTS installations for my application?
Enabling KOTS installations requires that the Replicated KOTS entitlement is assigned to your Vendor Portal team.
Teams with the KOTS entitlement can create KOTS-enabled releases by configuring the custom resources required by KOTS to install the application. For a checklist of the required and optional custom resources for KOTS, see Onboarding with KOTS.
How do KOTS installations in existing clusters work?
Enterprise users installing an application with KOTS first run the kubectl kots install
command to install KOTS in the target cluster. KOTS deploys the Admin Console, where users can log in to provide their license file, define application-specific configuration values, run preflight checks, and install the application.
For detailed installation steps, see Installing in Existing Clusters.
How do KOTS installations on VMs or bare metal servers work?
In installations on VMs or bare metal servers, users run an installation command that provisions a cluster on a VM or bare metal server. Clusters can be provisioned with Replicated Embedded Cluster or with Replicated kURL.
KOTS then deploys the Admin Console in the cluster, where users can log in to provide their license file, define application-specific configuration values, run preflight checks, and install the application.
For more information, see Using Embedded Cluster or Introduction to kURL.
What's the difference between Replicated Embedded Cluster and kURL?
Replicated Embedded Cluster is a successor to Replicated kURL. Compared to kURL, Embedded Cluster feature offers significantly faster installation, updates, and node joins, a redesigned Admin Console UI, improved support for multi-node clusters, one-click updates that update the application and the cluster at the same time, and more.
For more information, see Using Embedded Cluster or Introduction to kURL.
Can I use my own branding for KOTS installations?
The KOTS Admin Console and the download portal support the use of a custom logo. Additionally, software vendors can use custom domains for Replicated services to avoid exposing the default Replicated domains to enterprise users.
For more information, see Customizing the Admin Console and Download Portal and About Custom Domains.
Does KOTS support installations into air gap environments?
Yes. Software vendors can use KOTS to generate air gap bundles for installation into air gap environments. KOTS also provides customer-specific download portals where air gap bundles and license files can be shared with enterprise users.
Air gap installations are supported for existing and embedded clusters.
Can I deploy Helm charts with KOTS?
Yes. An application deployed with KOTS can use one or more Helm charts, can include Helm charts as components, and can use more than a single instance of any Helm chart. Each Helm chart deployed by KOTS requires a unique HelmChart custom resource (apiVersion: kots.io/v1beta2
) in the release.
For more information, see About Distributing Helm Charts with KOTS.
What are the use cases for installing applications with KOTS versus Helm?
Helm is a popular package manager for Kubernetes applications. Many enterprise users that have experience with Kubernetes and Helm will expect to be able to install an application with the Helm CLI.
The UI-based installation experience of KOTS can provide an easier installation experience for enterprise users that do not have experience with Kubernetes or Helm. Additionally, KOTS provides support for installations into air gap environments, which is not directly supported by Helm.
Can I support both Helm CLI and KOTS installations for my application?
Yes. Software vendors that distribute their application as one or more Helm charts can support installations with both the Helm CLI and with KOTS from the same release.
For a tutorial that demonstrates how to add the Bitnami Gitea Helm chart to a release in the Replicated Vendor Portal and then install with both KOTS and the Helm CLI, see Install a Helm Chart with KOTS and Helm CLI.
How does the Replicated SDK work with KOTS?
The Replicated SDK is a Helm chart that can be installed as a small service alongside an application, or as a standalone component. The SDK can be installed using the Helm CLI or KOTS.
Replicated recommends that all applications include the SDK because it provides access to key functionality not available through KOTS, such as support for sending custom metrics from application instances. When both the SDK and KOTS are installed in a cluster alongside an application, both send instance telemetry to the Vendor Portal.
For more information, see Installing the Replicated SDK.