TrilioVault for Kubernetes

Need Backup and Recovery for Kubernetes?

Trilio for Kubernetes (T4K) is a cloud-native, application-centric data protection and management platform that was designed from the ground up to support the scale, performance, and mobility requirements of Kubernetes container environments across any public or hybrid cloud environment.

T4K offers backup and recovery of the entire application, including data, metadata, and any other Kubernetes objects associated with the application so it is protected and can be restored at any point in time.

  1. Supports applications provisioned via Operators, Helm, or Labels within Upstream Kubernetes.
  2. Cloud-agnostic platform offering customers the agility to restore or migrate to any Kubernetes, Digital Ocean Managed Kubernetes Cluster (DOKS), or OpenShift cluster running in a public or hybrid cloud.
  3. Cloud-native architecture that is agentless and offers infinite scalability, self-service management, and an open, platform-agnostic backup schema, making it ideal for protecting cloud-native apps.
  4. Kubernetes-native. Trilio leverages core Kubernetes APIs and the CSI framework to provide simple snapshot, backup, and restore operations as well as make it seamless to deploy and manage.
  5. Extends monitoring and logging core functionality through Prometheus and Grafana.
  6. Capability to encrypt the backups enabled at the Backupplan level with different keys used for each backupplan. Encryption keys are stored as Kubernetes secrets.
  7. Ability to create immutable T4K backups so users will have the granular capability to specify the application that needs immutability support. Backups cannot be deleted until the user-defined retention period is over since Trilio interfaces with the backup storage target’s locking and versioning feature to provide immutability.

Trilio for Kubernetes is built by Trilio Data Inc., a leader in Data protection solutions for cloud-native applications.

Note:

Digital Ocean uses Helm v3 to deploy Trilio for Kubernetes to your DOKS cluster.

Trilio for Kubernetes Backup and Restore Workflow Diagram:

The below diagram shows a high-level overview of how Trilio for Kubernetes performs a backup and restore of the Prometheus application stack to a different DOKS cluster:

Trilio for Kubernetes Backup and Restore Overview

Software Included

Package Version License
Trilio for Kubernetes Operator 4.0.1 Preinstalled
Trilio for Kubernetes Manager 4.0.1 Preinstalled

Creating an App using the Control Panel

Click the Deploy to DigitalOcean button to install a Kubernetes 1-Click Application. If you aren’t logged in, this link will prompt you to log in with your DigitalOcean account.

Deploy to DO

Creating an App using the API

In addition to creating TrilioVault for Kubernetes using the control panel, you can also use the DigitalOcean API. As an example, to create a 3 node DigitalOcean Kubernetes cluster made up of Basic Droplets in the SFO2 region, you can use the following doctl command. You need to authenticate with doctl with your API access token) and replace the $CLUSTER_NAME variable with the chosen name for your cluster in the command below.

doctl kubernetes clusters create --size s-4vcpu-8gb $CLUSTER_NAME --1-clicks triliovault-operator

Getting Started After Deploying TrilioVault for Kubernetes

After performing a 1-Click install of Trilio for Kubernetes, you will see that the Trilio for Kubernetes installation is successful using the below command:

helm ls --namespace trilio-system

If the installation was successful, the STATUS column value in the output reads deployed:

NAME                                    NAMESPACE       REVISION        UPDATED                                 STATUS          CHART                           APP VERSION
triliovault-manager-trilio-system       trilio-system   1               2024-01-23 10:04:57.445143523 +0000 UTC deployed        k8s-triliovault-4.0.1           4.0.1
triliovault-operator                    trilio-system   1               2024-01-23 10:04:21.595835286 +0000 UTC deployed        k8s-triliovault-operator-4.0.1  4.0.1

Next, verify that the Trilio for Kubernetes deployments is in a READY state using the following command:

kubectl get deployment --namespace trilio-system

All deployments should be in the READY state:

NAME                                                       READY   STATUS      RESTARTS   AGE
k8s-triliovault-admission-webhook-764bc47586-s2cm4         1/1     Running     0          34m
k8s-triliovault-control-plane-59d5f6c4b-dbm42              2/2     Running     0          34m
k8s-triliovault-exporter-85dbfd8494-4bp8t                  1/1     Running     0          34m
k8s-triliovault-ingress-nginx-controller-5c5c977c9-jwvll   1/1     Running     0          34m
k8s-triliovault-operator-57c8759d7f-7znp8                  1/1     Running     0          35m
k8s-triliovault-resource-cleaner-28433430-zc252            0/1     Completed   0          9m44s
k8s-triliovault-web-7fd4694d8-rf6tn                        1/1     Running     0          34m
k8s-triliovault-web-backend-548f8c97c8-bpxp5               1/1     Running     0          34m

The Trilio license is pre-activated during the installation process, you can check that using the below command:

kubectl get license --namespace trilio-system

You should see the output below and the license is expected to be in an Active state:

NAMESPACE       NAME             STATUS   MESSAGE                           EXPIRATION TIME
trilio-system   trilio-license   Active   License Activated successfully.   2024-02-23T00:00:00Z

The T4K Management Console is also pre-configured, you can check it using the below command:

kubectl get ingress --namespace trilio-system

You should see the ingress configured with the hostname tvk.doks.com:

NAMESPACE     NAME              CLASS                       HOSTS          ADDRESS         PORTS   AGE
trilio-system k8s-triliovault   k8s-triliovault-tvk-nginx   tvk.doks.com   10.245.98.124   80      42m

To launch the console quickly via port-forwarding:

  1. kubectl port-forward –address 0.0.0.0 svc/k8s-triliovault-ingress-nginx-controller –namespace trilio-system 80:80 &
  2. Add the following entry to your /etc/host file 127.0.0.1 tvk.doks.com
  3. Launch the UI: http://tvk.doks.com/ and use the kubeconfig file for the cluster (Download it from the Kubernetes cluster page on the Digital Ocean portal)

Note: If you are using doctl to generate a kubeconfig file, the kubeconfig contains an exec section with custom commands that may not be recognized by the Trilio Management Console. Hence, download the kubeconfig file directly from the Kubernetes cluster page shown under “Access Cluster Config File” to use a workaround for the kubeconfig generated through doctl.

To launch the UI via NodePort/LoadBalancer or to change the console hostname visit : Enable Web UI Access

A video demonstrating the steps above can be found here

Follow these instructions to explore different features of the T4K Management Console.

Creating a Backup Target Repository:

Before performing a backup operation, the user needs to create a Target (Backup repository) to store the backup files. Please follow these instructions for creating a Trilio Target to Store Backups in Digital Ocean Spaces using CLI.

Running Backups & Restores:

  1. Visual Users: Please follow these instructions to get started by protecting your applications with Trilio for Kubernetes through the management console. A video explaining the workflows in detail is provided under Additional Links.
  2. CLI Users: If you want to use CLI to perform backup and restore operations of a namespace, please follow these instructions.

Need Help?

Please use the Slack invite link provided under Additional Links to connect with our engineers and get support.