Benutzerdefinierte Ressourcendefinition für Failover

Spezifikationsschema

„FailoverSpec“ definiert den ausgewählten Status des Failovers.

dbclusterRef: string
newPrimary: string

Feld

Typ
Erforderlich oder optional

 

Beschreibung
dbclusterRef
string
Erforderlich
dbclusterRef ist der DBCluster-Name, mit dem ein Failover initiiert wird. Erstellen Sie das Failover-Objekt im selben Namespace wie das referenzierte DBCluster.
newPrimary
string
Optional
newPrimary ist die Stand-by-Instanz, die zur neuen primären Instanz hochgestuft werden soll. Wenn Sie dieses Feld leer lassen, wählt das System automatisch die beste Instanz für das Failover aus.

Statusschema

„FailoverStatus“ definiert den beobachteten Status von „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
observedGeneration: integer
reconciled: boolean
startTime: string
state: string

Feld

Typ
Erforderlich oder optional

 

Beschreibung
conditions[]
object
Optional
Entspricht den neuesten verfügbaren Beobachtungen zum aktuellen Status des Failovers.
conditions[].lastTransitionTime
string
Erforderlich
Der Zeitpunkt der letzten Änderung der Bedingung von einem Status in einen anderen. Dies geschieht, wenn sich die zugrunde liegende Bedingung geändert hat. Wenn das System nicht weiß, wann sich die zugrunde liegende Bedingung geändert hat, verwenden Sie den Zeitpunkt, zu dem sich das API-Feld geändert hat.
conditions[].message
string
Erforderlich
Eine menschenlesbare Nachricht mit Details zur Umstellung. Das kann ein leerer String sein.
conditions[].observedGeneration
integer
Optional
Stellt die .metadata.generation dar, die die Bedingung widerspiegelt. Wenn beispielsweise .metadata.generation 12 ist, .status.conditions[x].observedGeneration aber 9, ist die Bedingung im Hinblick auf den aktuellen Status der Instanz nicht mehr aktuell.
conditions[].reason
string
Erforderlich
Enthält eine programmatische Kennung, die den Grund für die letzte Statusänderung der Bedingung angibt. Anbieter bestimmter Bedingungstypen können erwartete Werte und Bedeutungen für dieses Feld definieren und festlegen, ob die Werte als garantierte API gelten. Der Wert muss ein String im Binnenmajuskelformat sein. Dieses Feld darf nicht leer sein.
conditions[].status
string
Erforderlich
Status der Bedingung. Die gültigen Werte sind True, False und Unknown.
conditions[].type
string
Erforderlich
Bedingungstyp im Binnenmajuskelformat oder in foo.example.com/CamelCase. Viele .condition.type-Werte sind ressourcenübergreifend konsistent, z. B. „Available“. Da beliebige Bedingungen nützlich sein können, z. B. .node.status.conditions, ist die Möglichkeit zur Konfliktlösung wichtig. Der reguläre Ausdruck, mit dem er übereinstimmt, ist (dns1123SubdomainFmt/)?(qualifiedNameFmt).
createTime
string
Optional
Zeitpunkt, zu dem das System den internen Failover-Workflow-Mechanismus erstellt.
criticalIncidents[]
object
Erforderlich
Liste aller aktiven kritischen Vorfälle.
criticalIncidents[].code
string
Erforderlich
Der Fehlercode dieses bestimmten Fehlers. Fehlercodes sind DBSE-Strings mit einer Zahl, z. B. DBSE1012.
criticalIncidents[].createTime
string
Erforderlich
Zeitstempel für den Zeitpunkt, zu dem der Ursprung diesen Vorfall erstellt hat.
criticalIncidents[].message
string
Optional
Beschreibt den Vorfall oder Fehler, der aufgetreten ist.
criticalIncidents[].messageTemplateParams
object
Optional
Enthält Schlüssel/Wert-Paare, die zum Generieren einer nutzerfreundlichen datengesteuerten Version von „Message“ in der Benutzeroberfläche erforderlich sind.
criticalIncidents[].resource
object
Erforderlich
Enthält Informationen zur Database Service-Komponente, die den Vorfall gemeldet hat, sowie Informationen zur Ressource.
criticalIncidents[].resource.component
string
Erforderlich
Interne Kennung des Database Service-Subsystems, das den Vorfall gemeldet hat.
criticalIncidents[].resource.location
object
Optional
Standort.
criticalIncidents[].resource.location.cluster
string
Optional
Name des Clusters der betroffenen Cluster Manager-Ressource.
criticalIncidents[].resource.location.group
string
Optional
Gruppenname der Cluster Manager-Ressource.
criticalIncidents[].resource.location.kind
string
Optional
Art der Cluster Manager-Ressource.
criticalIncidents[].resource.location.name
string
Optional
Name der betroffenen Cluster Manager-Ressource.
criticalIncidents[].resource.location.namespace
string
Optional
Namespace der betroffenen Cluster Manager-Ressource.
criticalIncidents[].resource.location.version
string
Optional
Version der Cluster Manager-Ressource.
criticalIncidents[].stackTrace[]
object
Optional
Eine unstrukturierte Liste von Nachrichten aus dem Stacktrace.
criticalIncidents[].stackTrace[].component
string
Optional
Der Name einer Database Service-Komponente, die die Nachricht in Logs erfasst hat.
criticalIncidents[].stackTrace[].message
string
Optional
Logeintrag.
criticalIncidents[].transientUntil
string
Optional
Wenn vorhanden, gibt dies an, dass das System das Problem bis zum angegebenen Zeitpunkt als vorübergehend betrachten muss.
endTime
string
Optional
Gibt an, wann das Failover den endgültigen Zustand erreicht hat.
observedGeneration
integer
Optional
Der Controller beobachtet die Generation.
reconciled
boolean
Optional
Gibt an, ob der Controller die Ressource abgeglichen hat.
startTime
string
Optional
Der Zeitpunkt, zu dem der Failover-Vorgang gestartet wurde.
state
string
Optional
Beschreibt den aktuellen Status des Failover-Vorgangs. Mögliche Werte sind InProgress, Success, Failed_RollbackInProgress, Failed_RollbackSuccess und Failed_RollbackFailed. InProgress bedeutet, dass das Failover noch läuft. Success bedeutet, dass das Failover abgeschlossen ist. Der Vorgang ist abgeschlossen, wenn die neue primäre Instanz erfolgreich hochgestuft wurde. Failed_RollbackInProgress bedeutet, dass der Operator die neue primäre Instanz nicht hochstufen konnte und versucht, die alte primäre Instanz neu zu starten. Failed_RollbackSuccess bedeutet, dass der Operator die neue primäre Instanz nicht hochstufen konnte und die alte primäre Instanz erfolgreich neu gestartet hat. Failed_RollbackFailed bedeutet, dass der Operator die neue primäre Instanz nicht hochstufen und die alte primäre Instanz nicht neu starten konnte. Möglicherweise müssen Sie den DBCluster manuell reparieren.