Licensing

Licensing information for TrilioVault for Kubernetes

Licensing Methodology

A TrilioVault license is required for running backups. A valid license must be available on the system before a scheduled or on-demand backup is triggered.

There are three variables that TrilioVault licenses are governed by:

  1. Worker Nodes - TrilioVault for Kubernetes is licensed by the number of Kubernetes Worker Nodes. Each worker node license is defined as 2 CPUs. If a worker node has more than 2 CPUs, then additional licenses will be required to satisfy the CPU count on the node (in sets of 2). For example, a worker node with 8 CPUs, requires 4 licenses of TVK.

  2. Time - Duration for which the license is active.

  3. Support - There are two types of Support models that Trilio provides:

    1. Best Effort Support - All issues are captured and tracked via Trilio's GitHub Issue Tracking repository. Trilio aims to provide a 48-hour first response to any issue submitted.

    2. Enterprise Support - Enterprise-grade 24 x 7 Support, dedicated customer success manager, etc.

To calculate the exact number of worker node licenses required for a cluster, divide the CPU_COUNT from the following command by 2 (round up where applicable). This command will list the CPU count from all nodes, only the worker nodes need to be considered for licensing purposes.

kubectl get nodes -l "node-role.kubernetes.io/worker"="true" -o custom-columns=NAME:metadata.name,CPU_COUNT:.status.capacity.cpu

If the above command does not return any output (For example in OpenShift clusters) - Then the "true" portion of the command above should be ignored kubectl get nodes -l "node-role.kubernetes.io/worker"="" -o custom-columns=NAME:metadata.name,CPU_COUNT:.status.capacity.cpu oc get nodes -l "node-role.kubernetes.io/worker"="" -o custom-columns=NAME:metadata.name,CPU_COUNT:.status.capacity.cpu

Requirements

To generate a license for TrilioVault for Kubernetes a UUID of a namespace is required.

Depending on how TrilioVault for Kubernetes is being installed in the cluster, the UUID required will differ.

Cluster scope If TrilioVault for Kubernetes is being installed at a cluster scope, then the UUID of the kube-system namespace is required to generate the license

kubectl get ns kube-system -o yaml | grep "uid:"

Note: Though cluster scope license enables TVK features across namespaces in a cluster, the license information will only be visible in the namespace it is being installed in.

Namespace scope if TrilioVault for Kubernetes is being installed at a namespace scope, then a UUID of the specific namespace where TVK will be installed is required to generate the license.

kubectl get ns <name_of_namespace> -o yaml | grep "uid:"

License Types

There are 3 types of licenses that are available for TrilioVault for Kubernetes.

  1. Free - Unlimited number of nodes for 30 days.

    1. Availability - Download from Trilio website

    2. Renewable - No.

    3. Support - Best-Effort Support

  2. Basic - 10 nodes for unlimited amount of time (12-month increments).

    1. Availability - Download from Trilio website

    2. Renewable - Yes

    3. Support - Best-Effort Support

  3. Enterprise - Custom nodes for a variable amount of time.

    1. Availability - Contact Trilio Sales team from Trilio website

    2. Renewable - Yes

    3. Support - Enterprise Support

A namespace installation of TrilioVault will only enable TVK features in that specific namespace. TVK has been designed so that different TVK licenses can exist with separate namespace installations. It is the cluster administrators responsibility to ensure that an Enterprise license, if available, is applied to TVK namespace installations within a cluster.

Licensing a TrilioVault for Kubernetes instance

After a license has been obtained by following the instructions from the Trilio website, the license can be applied to a TrilioVault for Kubernetes instance.

Assuming TVK has been installed in the Kubernetes cluster following instructions from the Install section: Apply the license by running:

kubectl apply -f <licensefile>

Application of the license will generate an output similar to:

NAME STATUS CURRENT NODE COUNT GRACE PERIOD END TIME EDITION CAPACITY EXPIRATION TIME
license-sample Active 1 FreeTrial 10 2023-08-08T00:00:00Z

Additional details of the license can be obtained by running:

kubectl get license -o json

Upgrading a license

A license is upgrade is required when moving from one license type to another (Free/Basic -> Enterprise and vice-versa)

Trilio maintains only one instance of a license for every installation of TrilioVault for Kubernetes. To upgrade a license, run kubectl apply -f <licensefile> on a new license file to activate it. The previous license will be replaced automatically.