Failover v1.1.1 custom resource definition

Spec schema

FailoverSpec represents the parameters of a single failover operation.

dbclusterRef: string
newPrimary: string

Field

Type
Required or optional

 

Description
dbclusterRef
string
Required
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
string
Optional
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:
  newPrimary: string
  oldPrimary: string
  phase: string
observedGeneration: integer
reconciled: boolean
startTime: string
state: string

Field

Type
Required or optional

 

Description
conditions[]
object
Optional
Conditions represents the latest available observations of the entity's current state.
conditions[].lastTransitionTime
string
Required
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
string
Required
message is a human readable message indicating details about the transition. This can be an empty string.
conditions[].observedGeneration
integer
Optional
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
string
Required
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
string
Required
status of the condition, one of True, False, Unknown.
conditions[].type
string
Required
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
string
Optional
CreateTime is the time when the internal failover workflow mechanism was created.
criticalIncidents[]
object
Required
CriticalIncidents is a flat list of all active Critical Incidents.
criticalIncidents[].code
string
Required
Code is the error code of this particular error. Error codes are DBSE+numeric strings, like DBSE1012.
criticalIncidents[].createTime
string
Required
CreateTime is the timestamp when this Incident was created at the origin.
criticalIncidents[].message
string
Optional
Message describes the incident or error that occurred.
criticalIncidents[].messageTemplateParams
object
Optional
MessageTemplateParams contains key-value pairs necessary for generating a user-friendly data-driven version of Message in the user interface.
criticalIncidents[].resource
object
Required
Resource contains information about the Database Service component that reported the incident, as well as information about the Kubernetes resource.
criticalIncidents[].resource.component
string
Required
Component is an internal identifier of the Database Service subsystem that reported the incident.
criticalIncidents[].resource.location
object
Optional
Location.
criticalIncidents[].resource.location.cluster
string
Optional
The name of the cluster of the affected Kubernetes resource.
criticalIncidents[].resource.location.group
string
Optional
The Group name of the Kubernetes resource.
criticalIncidents[].resource.location.kind
string
Optional
The Kind of the Kubernetes resource.
criticalIncidents[].resource.location.name
string
Optional
The name of the affected Kubernetes resource.
criticalIncidents[].resource.location.namespace
string
Optional
The namespace of the affected Kubernetes resource.
criticalIncidents[].resource.location.version
string
Optional
The Version of the Kubernetes resource.
criticalIncidents[].stackTrace[]
object
Optional
An unstructured list of messages from the stack trace.
criticalIncidents[].stackTrace[].component
string
Optional
The name of a Database Service component that logged the message.
criticalIncidents[].stackTrace.message
string
Optional
Logged message.
criticalIncidents[].transientUntil
string
Optional
TransientUntil, if present, indicates that the issue must be considered transient until the specified time.
endTime
string
Optional
EndTime is the time when failover reached its final state.
internal
object
Optional
Internal is used by the system controllers. Do not rely on the information in this section.
internal.newPrimary
string
Required
NewPrimary is the instance that you're attempting to failover to.
internal.oldPrimary
string
Required
OldPrimary is the instance that was the primary at the start of the failover.
internal.phase
string
Optional
Phase is used to keep track of the current state of the failover.
observedGeneration
integer
Optional
Internal: The generation observed by the controller.
reconciled
boolean
Optional
Internal: Whether the resource was reconciled by the controller.
startTime
string
Optional
StartTime is the time when the failover operation started.
state
string
Optional
State is the current state of the failover operation. The values are InProgress, Success, Failed_RollbackInProgress, Failed_RollbackSuccess, and Failed_RollbackFailed.
  • InProgress means the failover is still in progress.
  • Success means that the failover completed. It is complete when the new primary instance is successfully promoted.
  • Failed_RollbackInProgress means that the operator was unable to promote the new primary instance, and that it's attempting to restart the old primary instance.
  • Failed_RollbackSuccess means that the operator was unable to promote the new primary instance, and that it successfully restarted the old primary instance.
  • Failed_RollbackFailed means that the operator was unable to promote the new primary instance, and that the operator wasn't able to restart the old primary instance. The DBCluster might need to be manually repaired.