Failover v1.1.1 커스텀 리소스 정의

사양 스키마

FailoverSpec은 단일 페일오버 작업의 매개변수를 나타냅니다.

dbclusterRef: string
newPrimary: string

필드

유형
필수 또는 선택사항

 

설명
dbclusterRef
string
필수
DBClusterRef는 페일오버를 시작할 DBCluster 이름입니다. Failover 객체는 이를 참조하는 DBCluster와 동일한 네임스페이스에 만들어야 합니다.
newPrimary
string
선택사항
NewPrimary는 새 기본 인스턴스로 승격할 대기 인스턴스입니다. 비워두면 시스템에서 자동으로 장애 조치할 가장 적합한 인스턴스를 선택합니다.

상태 스키마

FailoverStatus는 페일오버의 현재 상태를 나타냅니다.

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

필드

유형
필수 또는 선택사항

 

설명
conditions[]
object
선택사항
조건은 항목의 현재 상태에 대한 최근 관찰 결과를 나타냅니다.
conditions[].lastTransitionTime
string
필수
lastTransitionTime은 조건이 한 상태에서 다른 상태로 전환된 마지막 시간으로, 이는 기본 조건이 변경될 때 발생합니다. 기본 조건이 변경된 시점이 알 수 없는 경우 API 필드가 변경된 시점을 사용합니다.
conditions[].message
string
필수
메시지는 전환에 대한 세부정보를 나타내는 인간이 읽을 수 있는 메시지입니다. 빈 문자열일 수 있습니다.
conditions[].observedGeneration
integer
선택사항
observedGeneration은 조건이 설정된 기준인 .metadata.generation을 나타냅니다. 예를 들어 .metadata.generation이 12이지만 .status.conditions[x].observedGeneration이 9이면 인스턴스의 현재 상태와 관련하여 조건이 최신이 아닙니다.
conditions[].reason
string
필수
reason에는 조건의 마지막 전환 이유를 나타내는 프로그래매틱 식별자가 포함됩니다. 특정 조건 유형의 생산자는 이 필드의 예상 값과 의미, 값이 보장된 API로 간주되는지 여부를 정의할 수 있습니다. 값은 CamelCase 문자열이어야 합니다. 이 입력란은 비워 둘 수 없습니다.
conditions[].status
string
필수
조건 상태(True, False, 알 수 없음 중 하나)입니다.
conditions[].type
string
필수
조건 유형(CamelCase 또는 foo.example.com/CamelCase) 많은 .condition.type 값은 Available과 같이 리소스 전반에서 일관됩니다. 임의의 조건(예: .node.status.conditions)이 유용할 수 있으므로 충돌을 해결하는 기능이 중요합니다. 일치하는 정규 표현식은 (dns1123SubdomainFmt/)?(qualifiedNameFmt)입니다.
createTime
string
선택사항
CreateTime은 내부 페일오버 워크플로 메커니즘이 생성된 시간입니다.
criticalIncidents[]
object
필수
CriticalIncidents는 모든 활성 중대한 이슈의 단순 목록입니다.
criticalIncidents[].code
string
필수
Code는 이 특정 오류의 오류 코드입니다. 오류 코드는 DBSE1012와 같은 DBSE+numeric 문자열입니다.
criticalIncidents[].createTime
string
필수
CreateTime은 이 Incident가 출처에서 생성된 타임스탬프입니다.
criticalIncidents[].message
string
선택사항
메시지는 발생한 문제 또는 오류를 설명합니다.
criticalIncidents[].messageTemplateParams
object
선택사항
MessageTemplateParams에는 사용자 인터페이스에서 사용자 친화적인 데이터 기반 버전의 메시지를 생성하는 데 필요한 키-값 쌍이 포함됩니다.
criticalIncidents[].resource
object
필수
리소스에는 문제를 신고한 데이터베이스 서비스 구성요소에 관한 정보와 Kubernetes 리소스에 관한 정보가 포함됩니다.
criticalIncidents[].resource.component
string
필수
구성요소는 문제를 신고한 데이터베이스 서비스 하위 시스템의 내부 식별자입니다.
criticalIncidents[].resource.location
object
선택사항
위치
criticalIncidents[].resource.location.cluster
string
선택사항
영향을 받는 Kubernetes 리소스의 클러스터 이름입니다.
criticalIncidents[].resource.location.group
string
선택사항
Kubernetes 리소스의 그룹 이름입니다.
criticalIncidents[].resource.location.kind
string
선택사항
Kubernetes 리소스의 종류입니다.
criticalIncidents[].resource.location.name
string
선택사항
영향을 받는 Kubernetes 리소스의 이름입니다.
criticalIncidents[].resource.location.namespace
string
선택사항
영향을 받은 Kubernetes 리소스의 네임스페이스입니다.
criticalIncidents[].resource.location.version
string
선택사항
Kubernetes 리소스의 버전입니다.
criticalIncidents[].stackTrace[]
object
선택사항
스택 트레이스의 메시지 목록(구조화되지 않음)
criticalIncidents[].stackTrace[].component
string
선택사항
메시지를 로깅한 데이터베이스 서비스 구성요소의 이름입니다.
criticalIncidents[].stackTrace.message
string
선택사항
로깅된 메시지입니다.
criticalIncidents[].transientUntil
string
선택사항
TransientUntil(있는 경우)은 지정된 시간까지 문제를 일시적인 것으로 간주해야 함을 나타냅니다.
endTime
string
선택사항
EndTime은 페일오버가 최종 상태에 도달한 시간입니다.
internal
object
선택사항
내부는 시스템 컨트롤러에서 사용합니다. 이 섹션의 정보는 사용하지 마세요.
internal.newPrimary
string
필수
NewPrimary는 페일오버하려는 인스턴스입니다.
internal.oldPrimary
string
필수
OldPrimary는 장애 조치가 시작될 때 기본 인스턴스였던 인스턴스입니다.
internal.phase
string
선택사항
Phase는 장애 조치의 현재 상태를 추적하는 데 사용됩니다.
observedGeneration
integer
선택사항
내부: 컨트롤러에서 관찰한 생성입니다.
reconciled
boolean
선택사항
내부: 컨트롤러에서 리소스를 조정했는지 여부입니다.
startTime
string
선택사항
StartTime은 장애 조치 작업이 시작된 시간입니다.
state
string
선택사항
상태는 페일오버 작업의 현재 상태입니다. 값은 InProgress, Success, Failed_RollbackInProgress, Failed_RollbackSuccess, Failed_RollbackFailed입니다.
  • InProgress는 장애 조치가 아직 진행 중임을 의미합니다.
  • 성공은 장애 조치가 완료되었음을 의미합니다. 새 기본 인스턴스가 성공적으로 승격되면 완료됩니다.
  • Failed_RollbackInProgress는 운영자가 새 기본 인스턴스를 승격할 수 없으며 이전 기본 인스턴스를 다시 시작하려고 함을 의미합니다.
  • Failed_RollbackSuccess는 운영자가 새 기본 인스턴스를 승격할 수 없었으며 이전 기본 인스턴스를 성공적으로 다시 시작했음을 의미합니다.
  • Failed_RollbackFailed는 운영자가 새 기본 인스턴스를 승격할 수 없었고 이전 기본 인스턴스를 다시 시작할 수 없었음을 의미합니다. DBCluster를 수동으로 수리해야 할 수 있습니다.