Esquema de especificação
SwitchoverSpec define o estado selecionado de Switchover.
dbclusterRef: string
newPrimary: string
newPrimaryInstance: string
primaryHost: string
Campo TipoObrigatório ou opcional |
Descrição |
|---|---|
dbclusterRef
| |
stringOpcional |
DBClusterRef é o nome do DBCluster para iniciar um failover.
O objeto Switchover precisa ser criado no mesmo namespace que
o DBCluster referenciado. Esse campo é obrigatório para a troca.
|
newPrimary
| |
stringOpcional | "NewPrimary" é a instância de espera para alternar com a instância principal atual. |
newPrimaryInstance
| |
stringOpcional | "NewPrimaryInstance" é a instância de espera para alternar com a instância principal atual. Descontinuado: use o campo "NewPrimary" em vez disso. |
primaryHost
| |
stringOpcional | PrimaryHost é o IP que sempre aponta para a instância principal. |
Esquema de status
SwitchoverStatus define o estado observado de Switchover.
conditions:
- lastTransitionTime: string
message: string
observedGeneration: integer
reason: string
status: string
type: string
createTime: string
critcalIncidents:
- code: string
createTime: string
message: string
messageTemplateParams:
resource:
component: string
location:
cluster: string
group: 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
Campo TipoObrigatório ou opcional |
Descrição |
|---|---|
conditions
| |
list (object)Opcional | Condições representa as observações mais recentes disponíveis do estado atual da entidade. |
conditions[]
| |
objectOpcional | Condition contém detalhes de um aspecto do estado atual do recurso de API. — Esse struct é destinado ao uso direto como uma matriz no caminho do campo .status.conditions. Por exemplo, \n type FooStatus struct{ // Representa as observações do estado atual de um foo. // Os tipos de .status.conditions.type conhecidos são: \"Available\", \"Progressing\" e \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` \n // outros campos } |
conditions[].lastTransactionTime
| |
stringObrigatório | LastTransitionTime é a última vez em que essa condição passou de um status para outro. Isso precisa acontecer quando a condição fundamental é alterada. Se isso não for conhecido, o uso do horário em que o campo da API foi alterado será aceitável. |
conditions[].message
| |
stringObrigatório | message é uma mensagem legível por humanos que indica detalhes sobre a transição. Pode ser uma string vazia. |
conditions[].observedGeneration
| |
integerOpcional | observedGeneration representa o .metadata.generation em que a condição foi definida. Por exemplo, se .metadata.generation for 12, mas .status.conditions[x].observedGeneration for 9, a condição estará desatualizada em relação ao estado atual da instância. |
conditions[].reason
| |
stringObrigatório | reason contém um identificador programático que indica o motivo da última transição da condição. Os produtores de tipos de condição específicos podem definir valores e significados esperados para esse campo, além de se os valores são considerados uma API garantida. O valor precisa ser uma string CamelCase. Esse campo não pode ficar vazio. |
conditions[].status
| |
stringObrigatório |
Valores válidos: |
conditions[].type
| |
stringObrigatório | tipo de condição em CamelCase ou em foo.example.com/CamelCase. — Muitos valores de .condition.type são consistentes em todos os recursos, como Available, mas como condições arbitrárias podem ser úteis (consulte .node.status.conditions), a capacidade de eliminar conflitos é importante. A expressão regular correspondente é (dns1123SubdomainFmt/)?(qualifiedNameFmt) |
createTime
| |
stringOpcional | CreateTime é o horário em que o mecanismo interno do fluxo de trabalho de failover foi criado. |
criticalIncidents
| |
list (object)Opcional | CriticalIncidents é uma lista simples de todos os incidentes críticos ativos. |
criticalIncidents[]
| |
objectOpcional | CriticalIncident contém todas as informações sobre um incidente crítico em andamento. |
criticalIncidents[].code
| |
stringObrigatório | Code é o código desse erro específico. Os códigos de erro são DBSE + strings numéricas, como "DBSE1012". |
criticalIncidents[].createTime
| |
stringObrigatório | CreateTime é o carimbo de data/hora em que esse incidente foi criado na origem. |
criticalIncidents[].message
| |
stringOpcional | Message descreve o incidente/erro ocorrido. |
criticalIncidents[].messageTemplateParams
| |
objectOpcional | MessageTemplateParams contém pares de chave-valor necessários para gerar uma versão orientada por dados e fácil de usar da Message na interface. |
criticalIncidents[].resource
| |
objectObrigatório | Resource contém informações sobre o componente do Serviço de Banco de Dados que informou o incidente, bem como sobre o recurso do Kubernetes. |
criticalIncidents[].resource.component
| |
stringObrigatório | Component é um identificador interno do subsistema do Serviço de Banco de Dados que informou o incidente. |
criticalIncidents[].resource.location
| |
objectOpcional | Local |
criticalIncidents[].resource.location.cluster
| |
stringOpcional | Cluster é o nome do cluster do recurso afetado do Kubernetes. |
criticalIncidents[].resource.location.group
| |
stringOpcional | Group é o nome do grupo do recurso do Kubernetes. |
criticalIncidents[].resource.location.kind
| |
stringOpcional | Kind é o tipo do recurso do Kubernetes. |
criticalIncidents[].resource.location.name
| |
stringOpcional | Name é o nome do recurso afetado do Kubernetes. |
criticalIncidents[].resource.location.namespace
| |
stringOpcional | Namespace é o namespace do recurso afetado do Kubernetes. |
criticalIncidents[].resource.location.version
| |
TYPEOpcional | Group é a versão do recurso do Kubernetes. |
criticalIncidents[].stackTrace
| |
list (object)Opcional | StackTrace contém uma lista não estruturada de mensagens do stack trace. |
criticalIncidents[].stackTrace[]
| |
objectOpcional | CriticalIncidentStackTraceMessage contém informações de stack trace disponíveis para o incidente. |
criticalIncidents[].stackTrace[].component
| |
stringOpcional | Component é o nome de um componente do Serviço de Banco de Dados que registrou a mensagem. |
criticalIncidents[].stackTrace[].message
| |
stringOpcional | Mensagem registrada. |
criticalIncidents[].stackTrace[].message
| |
stringOpcional | TransientUntil, se estiver presente, vai indicar que o problema precisa ser considerado temporário até a hora especificada. |
endTime
| |
stringOpcional | EndTime é o momento em que a troca de horário atingiu o estado final. |
internal
| |
objectOpcional | "Internal" é usado pelos controladores do sistema. Não dependa das informações desta seção. |
internal.newPrimary
| |
stringObrigatório | "NewPrimary" é a instância para a qual estamos tentando fazer failover. |
internal.oldPrimary
| |
stringObrigatório | "OldPrimary" é a instância que era a principal no início da troca. |
internal.phase
| |
stringOpcional |
Valores válidos: |
observedGeneration
| |
integerOpcional | Interno: a geração observada pelo controlador. |
reconciled
| |
booleanOpcional | Interno: indica se o recurso foi reconciliado pelo controlador. |
startTime
| |
stringOpcional | StartTime é o horário em que a operação de alternância foi iniciada. |
state
| |
stringOpcional |
Valores válidos: InProgress, Success, Failed_RollbackInProgress,
Failed_RollbackSuccess, Failed_RollbackFailed. InProgress significa
que a troca ainda está em andamento. Success significa que a troca foi concluída. Failed_RollbackInProgress significa que o operador não conseguiu promover a nova instância principal e está tentando reiniciar a antiga. Failed_RollbackSuccess significa
que o operador não conseguiu promover a nova instância principal
e reiniciou a instância principal antiga. Failed_RollbackFailed
significa que o operador não conseguiu promover a nova instância principal
nem reiniciar a antiga. Talvez seja necessário corrigir o DBCluster manualmente.
|