TalosEtcdBackup

This page is generated from the CRD schema in config/crd/bases (make docs-reference). Do not edit it.

TalosEtcdBackup is the Schema for the talosetcdbackups API

Groupichor.maesh.dev
KindTalosEtcdBackup (list kind TalosEtcdBackupList)
Resourcetalosetcdbackups
ScopeNamespaced

v1alpha1

Version v1alpha1: has a status subresource.

spec

FieldTypeRequiredDescription
specobjectyesspec defines the desired state of TalosEtcdBackup
spec.clusterRefobjectyesclusterRef names the TalosCluster (same namespace) whose etcd is backed up.
spec.clusterRef.namestringnoName of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names Default: "".
spec.destinationobjectyesdestination is where snapshots are stored.
spec.destination.s3objectyess3 is an S3-compatible bucket.
spec.destination.s3.bucketstringyesbucket is the bucket name. It must already exist.
spec.destination.s3.credentialsSecretRefobjectyescredentialsSecretRef names a Secret holding accessKeyID and secretAccessKey (and optionally sessionToken, and ca.crt, a PEM bundle that signs the endpoint). It is read from the controller's own namespace, not the namespace of this object.
spec.destination.s3.credentialsSecretRef.namestringnoName of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names Default: "".
spec.destination.s3.endpointstringyesendpoint is the service URL, e.g. https://s3.eu-west-1.amazonaws.com or http://minio.minio.svc:9000. The scheme selects TLS.
spec.destination.s3.insecurebooleannoinsecure permits a plain http:// endpoint. The access key id, the signed headers and the session token then cross the network in clear, so the admission webhook refuses http:// unless this is true. Changing it needs update on talosetcdbackups/secret-references, like the endpoint. Unset (false) means https only.
spec.destination.s3.prefixstringyesprefix is the key prefix snapshots are written under, with no leading or trailing slash. Snapshots of different clusters need different prefixes.
spec.destination.s3.regionstringnoregion is the bucket's region; empty lets the client detect it.
spec.retentionobjectnoretention is how many snapshots to keep under the destination prefix. Default: {"keepLast":24}.
spec.retention.keepLastintegernokeepLast keeps the newest N snapshots and deletes older ones after a successful upload. Default: 24.
spec.schedulestringnoschedule is a standard five-field cron expression, evaluated in UTC. Default: "0 * * * *".
spec.suspendbooleannosuspend stops new snapshots; existing ones are kept and not pruned.

status

FieldTypeRequiredDescription
statusobjectnostatus defines the observed state of TalosEtcdBackup
status.conditions[]objectnoconditions: Ready.
status.conditions[].lastTransitionTimestring (date-time)yeslastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
status.conditions[].messagestringyesmessage is a human readable message indicating details about the transition. This may be an empty string.
status.conditions[].observedGenerationintegernoobservedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
status.conditions[].reasonstringyesreason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
status.conditions[].statusstringyesstatus of the condition, one of True, False, Unknown. Allowed values: True, False, Unknown.
status.conditions[].typestringyestype of condition in CamelCase or in foo.example.com/CamelCase.
status.consecutiveFailuresintegernoconsecutiveFailures counts failed attempts since the last success.
status.lastAttemptTimestring (date-time)nolastAttemptTime is when the newest attempt started, successful or not.
status.lastManualBackupstring (date-time)nolastManualBackup is the time of the newest backup-now request (BackupNowAnnotation) the controller acted on; a request is acted on once, whether the snapshot succeeded or not.
status.lastSnapshotobjectnolastSnapshot is the newest snapshot this controller stored.
status.lastSnapshot.keystringyeskey is the object key within the bucket.
status.lastSnapshot.sizeintegeryessize is the stored (encrypted) size in bytes.
status.lastSnapshot.sourceMachinestringyessourceMachine is the TalosMachine the snapshot was read from.
status.lastSnapshot.timestring (date-time)yestime is when the snapshot was taken.
status.lastSuccessTimestring (date-time)nolastSuccessTime is when the newest successful attempt finished.
status.snapshots[]objectnosnapshots lists the snapshots kept in the destination after the last backup and prune, newest first, so the UI and CLI can offer them for a restore without reading the bucket.
status.snapshots[].namestringyesname is the object name under the prefix: what an etcd-restore operation's spec.etcdRestore.snapshot says.
status.snapshots[].sizeintegeryessize is the stored (encrypted) size in bytes.
status.snapshots[].timestring (date-time)yestime is when the snapshot was taken (encoded in its name).

Search the docs

Search pages and headings