Spec schema
FailoverSpec represents the parameters of a single failover operation.
dbclusterRef: string
newPrimary: string
Field TypeRequired or optional |
Description |
|---|---|
dbclusterRef
| |
stringRequired | DBClusterRef is the DBCluster name to initiate a failover. The Failover object must be created in the same namespace as the DBCluster that it references. |
newPrimary
| |
stringOptional | NewPrimary is the standby instance to promote as the new primary. If left empty, the system automatically picks the best instance to fail over to. |
Status schema
FailoverStatus represents the current state of a failover.
conditions:
- lastTransitionTime: string
message: string
observedGeneration: integer
reason: string
status: string
type: string
createTime: string
criticalIncidents:
- code: string
createTime: string
message: string
messageTemplateParams: object
resource:
component: string
location:
cluster: string
kind: string
name: string
namespace: string
version: string
stackTrace:
- component: string
message: string
transientUntil: string
endTime: string
internal:
attempt: integer
lastPhaseChangeTime: string
newPrimary: string
newPrimaryZone: string
oldPrimary: string
phase: string
observedGeneration: integer
reconciled: boolean
startTime: string
state: string
Field TypeRequired or optional |
Description |
|---|---|
conditions[]
| |
objectOptional | Conditions represents the latest available observations of the entity's current state. |
conditions[].lastTransitionTime
| |
stringRequired | lastTransitionTime is the last time the condition transitioned from one status to another, which occurs when the underlying condition changed. If the time when the underlying condition changed is unknown, use the time when the API field changed. |
conditions[].message
| |
stringRequired | message is a human readable message indicating details about the transition. This can be an empty string. |
conditions[].observedGeneration
| |
integerOptional | observedGeneration represents the .metadata.generation that the condition was set based upon. For example, if .metadata.generation is 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance. |
conditions[].reason
| |
stringRequired | reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types can define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value must be a CamelCase string. This field might not be empty. |
conditions[].status
| |
stringRequired | status of the condition, one of True, False, Unknown. |
conditions[].type
| |
stringRequired | type of condition in CamelCase or in foo.example.com/CamelCase. Many .condition.type values are consistent across resources like Available. Because arbitrary conditions can be useful, for example .node.status.conditions, the ability to deconflict is important. The regular expression that it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt). |
createTime
| |
stringOptional | CreateTime is the time when the internal failover workflow mechanism was created. |
criticalIncidents[]
| |
objectRequired | CriticalIncidents is a flat list of all active Critical Incidents. |
criticalIncidents[].code
| |
stringRequired |
Code is the error code of this particular error. Error codes are
DBSE+numeric strings, like DBSE1012.
|
criticalIncidents[].createTime
| |
stringRequired | CreateTime is the timestamp when this Incident was created at the origin. |
criticalIncidents[].message
| |
stringOptional | Message describes the incident or error that occurred. |
criticalIncidents[].messageTemplateParams
| |
objectOptional | MessageTemplateParams contains key-value pairs necessary for generating a user-friendly data-driven version of Message in the user interface. |
criticalIncidents[].resource
| |
objectRequired | Resource contains information about the Database Service component that reported the incident, as well as information about the Kubernetes resource. |
criticalIncidents[].resource.component
| |
stringRequired | Component is an internal identifier of the Database Service subsystem that reported the incident. |
criticalIncidents[].resource.location
| |
objectOptional | Location. |
criticalIncidents[].resource.location.cluster
| |
stringOptional | The name of the cluster of the affected Kubernetes resource. |
criticalIncidents[].resource.location.group
| |
stringOptional | The Group name of the Kubernetes resource. |
criticalIncidents[].resource.location.kind
| |
stringOptional | The Kind of the Kubernetes resource. |
criticalIncidents[].resource.location.name
| |
stringOptional | The name of the affected Kubernetes resource. |
criticalIncidents[].resource.location.namespace
| |
stringOptional | The namespace of the affected Kubernetes resource. |
criticalIncidents[].resource.location.version
| |
stringOptional | The Version of the Kubernetes resource. |
criticalIncidents[].stackTrace[]
| |
objectOptional | An unstructured list of messages from the stack trace. |
criticalIncidents[].stackTrace[].component
| |
stringOptional | The name of a Database Service component that logged the message. |
criticalIncidents[].stackTrace.message
| |
stringOptional | Logged message. |
criticalIncidents[].transientUntil
| |
stringOptional | TransientUntil, if present, indicates that the issue must be considered transient until the specified time. |
endTime
| |
stringOptional | EndTime is the time when failover reached its final state. |
internal
| |
objectOptional | Internal is used by the system controllers. Do not rely on the information in this section. |
internal.attempt
| |
integerRequired | Attempt is used for retry logic. |
internal.lastPhaseChangeTime
| |
stringOptional | LastPhaseChangeTime is the last time the L1 failover changed to a new phase. This is used for timeout logic. |
internal.newPrimary
| |
stringRequired | NewPrimary is the instance that you're attempting to failover to. |
internal.newPrimaryZone
| |
stringOptional | NewPrimaryZone is the zone that we are attempting to failover to. |
internal.oldPrimary
| |
stringRequired | OldPrimary is the instance that was the primary at the start of the failover. |
internal.phase
| |
stringOptional | Phase is used to keep track of the current state of the failover. |
observedGeneration
| |
integerOptional | Internal: The generation observed by the controller. |
reconciled
| |
booleanOptional | Internal: Whether the resource was reconciled by the controller. |
startTime
| |
stringOptional | StartTime is the time when the failover operation started. |
state
| |
stringOptional |
State is the current state of the failover operation. The values are
InProgress, Success, Failed_RollbackInProgress, Failed_RollbackSuccess, and Failed_RollbackFailed.
|