Custom Resource Definitions - Application
This page describes the type and accepted values for all Trilio Custom Resource Definitions.
Deprecated Documentation
This document is deprecated and no longer supported. For accurate, up-to-date information, please refer to the documentation for the latest version of Trilio.
# Custom Resource Definitions - Application
Backup
Field | Description |
---|---|
| Refer to the Kubernetes API documentation for the fields of the |
| Refers to the spec of the Backup CR |
| Refers to the status of the Backup CR |
BackupConfig
(Appears on: BackupPlanSpec)
BackupConfig defines the require configuration for taking the backup such as target and retention policy
Field | Description |
---|---|
| Target is the object reference for the backup target resources |
| RetentionPolicy is the object reference for the policy of type retention defined |
| SchedulePolicy includes the 2 type of cron schedule specs: incremental and full |
BackupPlan
BackupPlan is the Schema for the applications API
Field | Description |
---|---|
| Refer to the Kubernetes API documentation for the fields of the |
| Refers to the spec of the BackupPlan CR |
| Refers to the status of the BackupPlan CR |
BackupPlanComponents
(Appears on: BackupPlanSpec)
BackupPlanComponents contains the 3 types of components, helm charts, operators and custom label-based resources
Field | Description |
---|---|
| HelmReleases is the list of release names |
| Operators is the list of operator names and their selectors |
Custom is the combination of label selectors including match labels and match expressions |
BackupPlanSpec
(Appears on: BackupPlan)
BackupPlanSpec defines the desired state of BackupPlan
Field | Description |
---|---|
| Namespace is the namespace from where the components of backupPlan to be selected |
| BackupConfig is the type containing the object references for all the configurations needed for backup operation |
| BackupPlanComponents includes all the components which defines this BackupPlan i.e Helm charts, operators and label based resources |
| Hooks section defines the config for hook action object reference to the matching regexes of pod and containers |
| QuiescingMode is the quiescing mode which can be sequential or parallel. If mode is parallel, ignore the sequence config |
| QuiescingSequence is the list of label selectors of 2 types match labels and match expressions |
BackupPlanStatus
(Appears on: BackupPlan)
BackupPlanStatus defines the observed state of BackupPlan
Field | Description |
---|---|
| Status defines the status of the application resource as available when no operation is running and unavailable when a backup or restore operation is in progress |
BackupScheduleType (string
alias)
string
alias)(Appears on: BackupSpec)
BackupScheduleType specifies the type of schedule which triggered the backup
BackupSpec
(Appears on: Backup)
BackupSpec defines the desired state of Backup
Field | Description |
---|---|
| Type is the type of backup in the sequence of backups of an Application. |
| ScheduleType specifies the type of schedule which triggered the backup. |
| BackupPlan is a reference to the BackupPlan to be backed up. |
BackupStatus
(Appears on: Backup)
BackupStatus defines the observed state of Backup
Field | Description |
---|---|
| Location is the absolute path of the target where backup resides. |
| StartTimestamp is the time a backup was started. |
| CompletionTimestamp is the time a backup was finished. |
| Phase is the current phase of the backup operation. |
| PhaseStatus is the status of phase backup operation going through. |
| Status is the status of the backup operation. |
| Size is the aggregate size of the data backuped up. |
| PercentageCompletion is the amount of backup operation completed. |
| Optional |
BackupType (string
alias)
string
alias)(Appears on: BackupSpec, DataSnapshot)
BackupType defines the type backup instance of an BackupPlan
CleanupConfig
(Appears on: PolicySpec)
CleanupConfig is the configuration for the PolicyType: Cleanup
Field | Description |
---|---|
| BackupDays is the age of backups to be cleaned |
ComponentStatus
(Appears on: RestoreCustom, RestoreHelm, RestoreOperator)
ComponentStatus defines the details of restore of application component.
Field | Description |
---|---|
| ExistingResource specifies the resources already existing in cluster defined in application. |
| SkippedResources specifies the resources skipped while restoring. |
| FailedResources specifies the resources for which the restore operation failed |
| NewResourcesAdded specifies the resources added(duplicated and modified) during restore. |
| Phase is the current phase of the application component while restore. |
| PhaseStatus is the status of phase restore operation going through. |
| A brief message indicating details about why the application component is in this state. |
Condition
(Appears on: DataSnapshot, TargetStatus)
Condition specifies the current condition of a resource.
Field | Description |
---|---|
| Type is the type of condition data component is in. |
| Status is the status of the condition. |
| Timestamp is the time a condition occurred. |
| A brief message indicating details about why the component is in this condition. |
CronSpec
(Appears on: SchedulePolicy)
CronSpec defines the Schedule string and the cronjob reference. The Schedule string will only be visible to the user to be configured, the reference will be set by the controller
Field | Description |
---|---|
| Defines the backup schedule |
| CronJob Reference |
Custom
(Appears on: RestoreCustom, Snapshot)
Custom defines the snapshot of Custom defined application.
Field | Description |
---|---|
| Resources defines the Kubernetes resources found from Custom application. |
| DataSnapshot specifies the Snapshot of the Volumes resources in the Custom defined application. |
| Warnings is the list of warnings captured during backup or restore of an application |
DataSnapshot
(Appears on: Custom, Helm, Operator)
DataSnapshot defines Snapshot of a Persistent Volume
Field | Description |
---|---|
| BackupType is the type of Volume backup in the sequence of backups. |
| Location is the absolute path of qcow2 image of a volume in the target. |
| PersistentVolumeClaimName is the name of PersistentVolumeClaim which is bound to Volume. |
| PersistentVolumeClaimMetadata is the metadata of PersistentVolumeClaim which is bound to Volume. |
| VolumeSnapshot specifies the CSI snapshot of a Persistent Volume. |
| SnapshotSize is the size of captured snapshot of a Persistent Volume. |
| Size is the size of complete backup/restore. |
| Uploaded is to imply whether volume snapshot taken is uploaded to target. |
| Condition is the current condition of a data component while backup/restore. |
| PodContainersMap is the set of Pod-Containers which share Persistent Volume. |
DayOfWeek (string
alias)
string
alias)(Appears on: RetentionConfig)
GroupVersionKind
(Appears on: Resource)
GroupVersionKind defines the Kubernetes resource type
Field | Description |
---|---|
| API Resource Group |
| API Resource version |
| API Resource Kind |
Helm
(Appears on: Operator, RestoreHelm, Snapshot)
Helm defines the snapshot of application defined by a Helm.
Field | Description |
---|---|
| Release string is the name of release |
| NewRelease string is the new release name which will get used while validation and restore process |
| Revision defines the version of deployed release backed up |
| Resource is the captured GVK (secret or configmap) and corresponding object names slice |
| StorageBackend is the enum which can be either configmaps and secrets |
| Version represents the Helm binary version used at the time of snapshot |
| DataSnapshot specifies the Snapshot of the Volumes defined in the helm chart resources. |
| Warnings is the list of warnings captured during backup or restore of an application |
HelmStorageBackend (string
alias)
string
alias)(Appears on: Helm)
HelmStorageBackend defines the enum for the types of storage backend from where the helm release is backed-up
HelmVersion (string
alias)
string
alias)(Appears on: Helm)
HelmVersion defines the 2 versions of helm binaries used while backup
Hook
Hook is the Schema for the hooks API.
Field | Description |
---|---|
| Refer to the Kubernetes API documentation for the fields of the |
| Spec for Hook |
| Status for Hook |
HookConfig
(Appears on: BackupPlanSpec)
HookConfig defines the sequence of hook actions and their associated pod-container regexes
Field | Description |
---|---|
Hook is the object reference of the Hook resource which will be run while quiescing | |
| MatchPatterns is the list/sequence of the pod-container regex where the hook needs to be executed |
HookExecution
(Appears on: HookSpec)
HookExecution specifies the Hook required to quiesce or unquiesce the application
Field | Description |
---|---|
| A Command to be executed as a part of Hook. |
| A Maximum allowed time to execute Hook. |
HookSpec
(Appears on: Hook)
HookSpec defines the desired state of Hook.
Field | Description |
---|---|
| PreHook is the Hook executed to quiesce the application before backup operation |
| PostHook is the Hook executed to unquiesce the application after backup operation |
HookStatus
(Appears on: Hook)
HookStatus defines the observed state of Hook.
License
License is the Schema for the licenses API
Field | Description |
---|---|
| Refer to the Kubernetes API documentation for the fields of the |
| Spec of License CR |
| Status of License CR |
LicenseCondition
(Appears on: LicenseStatus)
LicenseCondition specifies the current condition of a license.
Field | Description |
---|---|
| Status is the status of the condition. |
| Timestamp is the time a condition occurred. |
| A brief message indicating details about why the component is in this condition. |
LicenseEdition (string
alias)
string
alias)(Appears on: LicenseProperties)
LicenseEdition specifies the edition of the license.
LicenseProperties
(Appears on: LicenseStatus)
LicenseProperties specifies the properties of a license based on provided license key.
Field | Description |
---|---|
| Company is the name of a company purchased license for. |
| Edition is the type of license purchased to use triliovault application. |
| CreationTimestamp is the time license created to use triliovault application. |
| PurchaseTimestamp is the time user purchased the license to use triliovault application. |
| ExpirationTimestamp is the time provided license going to expire and won’t be able to perform backup/restore operation. |
| MaintenanceExpiryTimestamp is the time maintenance support for the provided license going to expire. |
| KubeUID is the kubesystem or namespace uuid of the cluster the license purchased for. |
| Scope is the scope of a KubeUID the license purchased for. |
| Version is the version of a license. |
| SEN is the unique serial of a license purchased. |
| NumberOfUsers is the total number of users the license valid for. |
| ServerID is the unique serverID of license purchased. |
| LicenseID is the identifier for the license. |
| Capacity is the maximum capacity to use the license in number of kube nodes. |
| Active is the status of the license. |
LicenseSpec
(Appears on: License)
LicenseSpec defines the desired state of License
Field | Description |
---|---|
| Key is the product key to use triliovault application to perform backup/restore. |
LicenseState (string
alias)
string
alias)(Appears on: LicenseCondition, LicenseStatus)
LicenseState specifies the overall status of the license.
LicenseStatus
(Appears on: License)
LicenseStatus defines the observed state of License
Field | Description |
---|---|
| Status is the overall status of the license based on provided key. |
| A brief message indicating details about why the license in this state. |
| Properties is the details about the license based on provided license key. |
| Condition is the current condition of a license. |
| CurrentNodeCount is the total number of nodes kubernetes cluster comprised of where each node capped at 2 vCPUs/pCPUs. |
| GracePeriodStartTimestamp is the time grace period started to use triliovault application. |
| GracePeriodEndTimestamp is the time grace period for using the triliovault application going to end. |
MatchPattern
(Appears on: HookConfig)
MatchPattern is the structure defining the pod-container regexes used for hook execution
Field | Description |
---|---|
| PodRegexPattern is the regex pattern to be matched for the pod where hooks will be executed |
| ContainerRegexPattern is the regex pattern to be matched for the containers where hooks will be executed |
MonthOfYear (string
alias)
string
alias)(Appears on: RetentionConfig)
NFSCredentials
(Appears on: TargetSpec)
NFSCredentials defines the credentials to use NFS as a target type.
Field | Description |
---|---|
| A NFS location in format trilio.net:/data/location/abcde or 192.156.13.1:/user/keeth/data. |
| An additional options passed to mount NFS directory e.g. rw, suid, hard, intr, timeo, retry. |
ObjectStoreCredentials
(Appears on: TargetSpec)
ObjectStoreCredentials defines the credentials to use Object Store as a target type.
Field | Description |
---|---|
| Url to connect the Object Store. |
| Access Key is to authenticate access to Object Store. |
| Secret Key is to authenticate access to Object Store. |
| Name of a bucket within Object Store. |
| Region where the Object Store resides. |
OperationType (string
alias)
string
alias)(Appears on: BackupStatus, Condition)
OperationType specifies the type of operation for Job
Operator
(Appears on: RestoreOperator, Snapshot)
Operator defines the snapshot of application defined by an Operator.
Field | Description |
---|---|
| OperatorId is unique ID for a particular operator |
| CustomResources is the list of all custom resource’s GVK and names list |
| Helm represents the snapshot of the helm chart for helm based operator |
| OperatorResources defines the a kubernetes resources found from Operator resources. |
| DataSnapshot specifies the Snapshot of the Volumes defined in the operator resources. |
| Warnings is the list of warnings captured during backup or restore of an application |
OperatorSelector
(Appears on: BackupPlanComponents)
OperatorSelector defines the mapping of operator name and their selectors
Field | Description |
---|---|
| OperatorId is any unique ID for a particular operator |
| CustomResources list resources where each resource contains custom resource gvk and metadata |
| HelmRelease is the release name of the helm based operator |
| OLMSubscription is the release name of the helm based operator |
| OperatorResourceSelector is the selector for operator resources |
| ApplicationResourceSelector is the selector for instances deployed by the operator resources |
PodContainers
(Appears on: DataSnapshot)
PodContainers defines Pod and containers running in that Pod.
Field | Description |
---|---|
| PodName is the name of pod which will be the key for the map between pod containers list |
| Containers is the list of containers inside a pod |
Policy
Policy is the Schema for the policies API
Field | Description |
---|---|
| Refer to the Kubernetes API documentation for the fields of the |
| Spec of Policy CR |
| Status of Policy CR |
PolicySpec
(Appears on: Policy)
PolicySpec defines the desired state of Policy
Field | Description |
---|---|
| Type is a field of Policy spec, which defines the policy type containing only 3 values: Retention, Timeout, Cleanup. |
| Default field states if the current type of policy is default across the TV application |
| RetentionConfig field defines the configuration for Retention policies |
| TimeoutConfig field defines the configuration for timeout policies |
| CleanupConfig field defines the configuration for Cleanup policies |
PolicyStatus
(Appears on: Policy)
Policy Status defines the observed state of Policy
PolicyType (string
alias)
string
alias)(Appears on: PolicySpec)
PolicyType is the Enum for types of policies
QuiescingMode (string
alias)
string
alias)(Appears on: BackupPlanSpec)
QuiescingMode is the enum for 2 modes of quiescing the application components i.e Sequential or Parallel
Resource
(Appears on: ComponentStatus, Custom, Helm, Operator, OperatorSelector)
Resource defines the list of names of a Kubernetes resource of a particular GVK.
Field | Description |
---|---|
| GroupVersionKind specifies GVK uniquely representing particular resource type. |
| Objects is the list of names of all the objects of the captured GVK |
Restore
Restore is the Schema for the restores API Backup respresents the capture of Kubernetes Application defined by user at a point in time
Field | Description |
---|---|
| Refer to the Kubernetes API documentation for the fields of the |
| Spec of Restore CR |
| Status of Restore CR |
RestoreApplication
(Appears on: RestoreStatus)
RestoreApplication defines the snapshot contents of an Application Backup.
Field | Description |
---|---|
| HelmCharts specifies the backed up helm resources restored as Helm Charts. |
| Operators specifies the backed up operator resources restored as Operators. |
| Custom specifies the backup up kubernetes resources. |
RestoreCustom
(Appears on: RestoreApplication)
RestoreCustom defines the backed up kubernetes resources.
Field | Description |
---|---|
| Snapshot defines the snapshot of custom application to be restored. |
| Status specifies the details of component restore in a namespace |
RestoreHelm
(Appears on: RestoreApplication)
RestoreHelm defines the backed up helm application to be restored.
Field | Description |
---|---|
| Snapshot defines the snapshot of application to be restored by a Helm. |
| Status specifies the details of component restore in a namespace |
RestoreOperator
(Appears on: RestoreApplication)
RestoreOperator defines the backed up operator application to be restored.
Field | Description |
---|---|
| Snapshot defines the snapshot of application to be restored by a Operator. |
| Status specifies the details of component restore in a namespace |
RestorePhase (string
alias)
string
alias)(Appears on: ComponentStatus, RestoreStatus)
RestorePhase specifies the one of phase of Restore operation
RestoreSource
(Appears on: RestoreSpec)
Field | Description |
---|---|
| Type is the type of source for restore |
Backup is a reference to the Backup instance restored if type is Backup. | |
Target is a reference to the Target instance where from restore is performed if type is Location. | |
| Location is an absolute path to remote target from where restore is performed if type is Location. |
RestoreSourceType (string
alias)
string
alias)(Appears on: RestoreSource)
BackupSourceType defines the type of source for restore
RestoreSpec
(Appears on: Restore)
RestoreSpec defines the desired state of Restore
Field | Description |
---|---|
| BackupPlan is a reference to the BackupPlan whose backup is restored. |
| Source defines the source referred for performing restore operation |
| Namespace is a name of namespace in cluster where backed resources will be restored |
| SkipIfAlreadyExists specifies whether to skip restore of a resource if already exists in the namespace restored. |
| PatchIfAlreadyExists specifies whether to patch spec of a already exists resource in the namespace restored. |
| OmitMetadata specifies whether to omit metadata like labels, annotations of resources while restoring them. |
Env is the List of environment variables to set in the container. Cannot be updated. |
RestoreStatus
(Appears on: Restore)
RestoreStatus defines the observed state of Restore
Field | Description |
---|---|
| StartTimestamp is the time a restore was started. |
| CompletionTimestamp is the time a restore was finished. |
| Phase is the current phase of the restore operation. |
| PhaseStatus is the status of phase restore operation going through. |
| Status is the status of the restore operation. |
| Size is the aggregate size of the data restored back. |
| PercentageCompletion is the amount of restore operation completed. |
| RestoreApplication defines the information about the different applications restored back to cluster. |
RetentionConfig
(Appears on: PolicySpec)
RetentionConfig is the configuration for the PolicyType: Retention
Field | Description |
---|---|
| Daily is max number of backups to be retained in a day |
| Weekly is max number of backups to be retained in a week |
| Monthly is max number of backups to be retained in a month |
| Yearly is max number of backups to be retained in a year |
| DayOfWeek is Day of the week to maintain weekly backup/restore resources |
| DateOfMonth is Date of the month to maintain monthly backup/restore resources |
| MonthOfYear is the month of the backup to retain for yearly backups |
SchedulePolicy
(Appears on: BackupConfig)
SchedulePolicy defines the cronjob specs for incremental or full backup types
Field | Description |
---|---|
| IncrementalCron is the cronspec schedule for incremental backups |
| FullBackupCron is the cronspec schedule for full backups |
Scope (string
alias)
string
alias)(Appears on: LicenseProperties)
Scope specifies the scope of a resource.
Snapshot
(Appears on: BackupStatus)
Snapshot defines the snapshot contents of an Application Backup.
Field | Description |
---|---|
| HelmCharts specifies the snapshot of application defined by Helm Charts. |
| Operators specifies the snapshot of application defined by Operators. |
| Custom specifies the snapshot of Custom defined applications. |
Status (string
alias)
string
alias)(Appears on: BackupPlanStatus, BackupStatus, ComponentStatus, Condition, RestoreStatus, TargetStatus, VolumeSnapshot)
Status specifies the status of WorkloadJob operating on
Target
Target is a location where Trilio stores backup.
Field | Description |
---|---|
| Refer to the Kubernetes API documentation for the fields of the |
| |
|
TargetSpec
(Appears on: Target)
TargetSpec defines the specification of a Target.
Field | Description |
---|---|
| Type is the type of target for backup storage. |
| Vendor is the third party storage vendor hosting the target |
| NfsCredentials specifies the credentials for TargetType NFS |
| ObjectStoreCredentials specifies the credentials for TargetType ObjectStore |
TargetStatus
(Appears on: Target)
TargetStatus defines the observed state of Target
Field | Description |
---|---|
| Condition is the current condition of a target. |
| Status is the final Status of target Available/Unavailable |
TargetType (string
alias)
string
alias)(Appears on: TargetSpec)
TargetType is the type of target.
TimeoutConfig
(Appears on: PolicySpec)
TimeoutConfig is the configuration for the PolicyType: Timeout
Vendor (string
alias)
string
alias)(Appears on: TargetSpec)
Vendor is the third party storage vendor hosting the target
VolumeSnapshot
(Appears on: DataSnapshot)
VolumeSnapshot defines the CSI snapshot of a Persistent Volume.
Field | Description |
---|---|
| VolumeSnapshot is a reference to the Persistent Volume Snapshot captured. |
| RetryCount is the number of attempts made to capture Volume Snapshot. |
| Status is the status defining the progress of Volume Snapshot capture. |
| Error is the error occurred while capturing Volume Snapshot if any. |
Generated with gen-crd-api-reference-docs
on git commit c3c084d1
.
Last updated