Trilio Operator API Specifications
API Specification for Trilio for Kubernetes Upstream Operator
Packages
Custom Resource Definition Resources
The main CRDs provided by TrilioVault Manager for Kubernetes.
TrilioVaultManager
TrilioVaultManager is the Schema for the triliovaultmanagers API
apiVersion string
triliovault.trilio.io/v1
kind string
TrilioVaultManager
Supporting Resources
Supporting types and specifications used by the main CRDs.
CSIConfig
Appears in:
include string array
Include denotes the list of CSI drivers to be included in the non-snapshot functionality category
optional
exclude string array
Exclude denotes the list of CSI drivers to be excluded from the non-snapshot functionality category
optional
ComponentConfiguration
Appears in:
control-plane HelmValues
ControlPlane holds all configuration for the control-plane deployment
optionalXPreserveUnknownFields: {}
exporter HelmValues
Exporter holds all configuration for the exporter deployment.
optionalXPreserveUnknownFields: {}
web-backend HelmValues
WebBackend holds all configuration for the web-backend deployment
optionalXPreserveUnknownFields: {}
event-target HelmValues
EventTarget holds all configuration for the event-target deployment
optionalXPreserveUnknownFields: {}
ingress-controller HelmValues
IngressController holds all configuration for the ingress-controller deployment
optionalXPreserveUnknownFields: {}
gateway-controller HelmValues
GatewayController holds all configuration for the gateway-controller deployment
optionalXPreserveUnknownFields: {}
ConditionStatus
Underlying type: string
Appears in:
True
False
Unknown
Gateway
Gateway identifies an existing, user-managed gateway.networking.k8s.io Gateway resource that TVK's HTTPRoutes should attach to, instead of TVK creating a Gateway itself. Only used when gatewayConfig.gateway.name is set (see GatewayConfig for how this differs from the gatewayClass mode).
Appears in:
name string
Name of the existing Gateway resource. Setting this switches routing into "existing Gateway" mode
optional
namespace string
Namespace of the existing Gateway resource
optional
sectionName string
Name of the existing Gateway's listener that HTTPRoutes should bind to. Required when name is set
optional
GatewayAPIConfig
GatewayAPIConfig holds field related to gateway API resource to access the TVK UI. Exposed as the gatewayAPI field on the TrilioVaultManager (TVM) CR spec, and is mutually exclusive with ingressConfig.ingressEnabled.
Appears in:
enabled boolean
Enables Gateway API based routing for the TVK UI instead of classic Ingress
false
optional
host string
Hostname to expose TVK UI on. If not provided, wildcard DNS will be used
optional
GatewayConfig
GatewayConfig configures how TVK attaches its HTTPRoutes to a Kubernetes Gateway API Gateway. There are three mutually exclusive modes, selected by which fields are set (see Gateway API Configuration for a full walkthrough):
TVK-managed gateway-controller (
componentConfiguration.gateway-controller.enabled: true) — TVK deploys its own Gateway API controller, provisions its own GatewayClass, and creates the Gateway itself.gatewayClass,gatewayandannotationsmust be left empty.Bring your own GatewayClass (
gateway-controllerdisabled,gatewayClassset) — TVK creates the Gateway using the given GatewayClass.gatewayis not used.Attach to an existing Gateway (
gateway-controllerdisabled,gateway.nameset) — TVK does not create a Gateway; it attaches HTTPRoutes to the existing Gateway's listener namedgateway.sectionName.gatewayClassis not used.
Appears in:
annotations object (keys:string, values:string)
Annotations to apply to the generated Gateway API resources. Must be empty when gateway-controller is enabled
optional
gatewayClass string
GatewayClass TVK should use to create the Gateway itself. Only used when gateway-controller is disabled and gateway.name is not set
optional
allowedNamespaces string
Namespaces from which HTTPRoutes are allowed to attach to the Gateway created by TVK
Enum: [Same All] optional
gateway Gateway
Reference to an existing, user-managed Gateway to attach HTTPRoutes to, instead of TVK creating one
optional
GatewayTLSConfig
GatewayTLSConfig configures HTTPS termination for Gateway API based routing.
Appears in:
enabled boolean
Enables TLS/HTTPS for Gateway API routing
false
optional
insecureListenerName string
Name of the existing Gateway's HTTP (non-TLS) listener, used for the HTTP→HTTPS redirect. Required only when enabled is true and an existing Gateway (gateway.name) is used
optional
secret TLSSecret
TLS secret containing the certificate used for HTTPS termination. Required whenever enabled is true
optional
Helm
Appears in:
version string
Enum: [v3]
tillerNamespace string
optional
HelmValues
HelmValues takes any custom helm value user wants to provide to T4K helm chart
Validation:
XPreserveUnknownFields: {}
Appears in:
IngressConfig
IngressConfig holds field related to ingress resource to access the TVK UI. Mutually exclusive with gatewayAPI.enabled.
Appears in:
ingressClass string
optional
annotations object (keys:string, values:string)
optional
host string
optional
tlsSecretName string
optional
ingressEnabled boolean
Enables Ingress based routing for the TVK UI. Set to false when using Gateway API
true
optional
LevelType
Underlying type: string
Appears in:
LogConfig
Appears in:
enableDualOutputLog boolean
EnableDualOutputLog is a flag to enable dual output log.
optional
maxLogFileSizeMB integer
MaxLogFileSizeMB is the maximum size of each log file in MB Valid range: 1-10 (inclusive)
optional
maxLogFiles integer
MaxLogFiles is the maximum number of log files to retain. Valid range: 1-10 (inclusive)
optional
bufferSize integer
BufferSize is the size of the log buffer. Valid range: 2000-50000 (inclusive)
optional
flushDurationMilliSeconds integer
FlushDurationMilliSeconds is the duration to flush the log buffer in millisecond Valid range: 100-5000 (inclusive)
optional
Resource Types
ResourceScope
Underlying type: string
Appears in:
Cluster
Namespaced
TLSSecret
TLSSecret references a Kubernetes Secret of type kubernetes.io/tls used for HTTPS termination on the Gateway.
Appears in:
name string
Name of the TLS secret
optional
namespace string
Namespace of the TLS secret. Defaults to the TrilioVaultManager's namespace
optional
TrilioAppCondition
Appears in:
reason TrilioAppConditionReason
Enum: [InstallSuccessful UpdateSuccessful UninstallSuccessful InstallError UpdateError ReconcileError UninstallError]
message string
MinLength: 0
TrilioAppConditionReason
Underlying type: string
Appears in:
InstallSuccessful
UpdateSuccessful
UninstallSuccessful
InstallError
UpdateError
ReconcileError
UninstallError
TrilioAppConditionType
Underlying type: string
Appears in:
Initialized
Deployed
Updated
ReleaseFailed
Irreconcilable
TrilioAppRelease
Appears in:
name string
manifest string
TrilioVaultManagerSpec
TrilioVaultManagerSpec defines the desired state of TrilioVaultManager
Appears in:
trilioVaultAppVersion string
Deprecated: TrilioVaultAppVersion Helm Chart version
optional
applicationScope ResourceScope
Scope for the application which will be installed in the cluster NamespaceScope or ClusterScope
Enum: [Cluster Namespaced]
restoreNamespaces string array
Deprecated: RestoreNamespaces are the namespace where you want to restore your applications. Restore Namespaces depends on your k8s RBAC
optional
resources ResourceRequirements
Deprecated: Resources are the resource requirements for the containers.
optional
metadataJobResources ResourceRequirements
MetadataJobResources is the resource limits & requests for all the meta processing jobs.
optional
dataJobResources ResourceRequirements
DataJobResources is the resource limits & requests for all the data processing jobs.
optional
targetBrowserResources ResourceRequirements
TargetBrowserResources is the resource limits & requests for the target browser.
optional
nodeSelector object (keys:string, values:string)
NodeSelector specifies a map of key-value pairs. For the pod to be eligible to run on a node, the node must have each of the indicated key-value pairs as labels.
optional
tolerations Toleration array
The toleration of application against the specific taints on the nodes
optional
workerJobsSchedulingConfig WorkloadSchedulingConfigs
WorkerJobsSchedulingConfig holds the scheduling constraints for tvk jobs and data-mover pods.
optional
helmValues HelmValues
HelmValues holds all the additional fields in the values.yaml of T4K helm chart.
optionalXPreserveUnknownFields: {}
componentConfiguration ComponentConfiguration
ComponentConfiguration holds all the field related to the T4K deployments.
optional
ingressConfig IngressConfig
IngressConfig holds field related to ingress resource to access the T4K UI.
optional
gatewayAPI GatewayAPIConfig
GatewayAPIConfig holds field related to gateway API resource to access the T4K UI. Mutually exclusive with ingressConfig.
optional
tvkInstanceName string
TVKInstanceName is a T4K installation name to be displayed on UI.
optional
logLevel LevelType
Deprecated: LogLevel is a level used in T4K logging now used under logConfig LogLevel is a level used in T4K logging.
Enum: [Panic Fatal Error Warn Info Debug Trace]
datamoverLogLevel LevelType
Deprecated: DatamoverLogLevel is a log level used in datamover i.e. data upload/restore part of the T4K now used under logConfig DatamoverLogLevel is a log level used in datamover i.e. data upload/restore part of the T4K.
Enum: [Panic Fatal Error Warn Info Debug Trace]
csiConfig CSIConfig
CSIConfig is the configuration for the CSI drivers which doesn't support snapshot functionality
optional
pauseSchedule boolean
PauseSchedule is flag to pause schedule backups or snapshot for all the backupplan/clusterbackupplan.
optional
TrilioVaultManagerStatus
TrilioVaultManagerStatus defines the observed state of TrilioVaultManager
Appears in:
releaseVersion string
helmRevision integer
dashboard string
WorkloadSchedulingConfigs
WorkloadSchedulingConfigs holds the scheduling constraints on tvk jobs and data-mover pods.
Appears in:
nodeSelector object (keys:string, values:string)
NodeSelector specifies a map of key-value pairs. For the pod to be eligible to run on a node, the node must have each of the indicated key-value pairs as labels.
optional
tolerations Toleration array
Tolerations specifies the tolerations of the pod against the specific taints on the nodes.
optional
topologySpreadConstraints TopologySpreadConstraint array
TopologySpreadConstraints defines topology spread constraints for workload pods.
optional
Generated with gen-crd-api-reference-docs on git commit ec84b9a.
Last updated
Was this helpful?