복제 v1.1.1 커스텀 리소스 정의

사양 스키마

ReplicationSpec은 원하는 복제 상태를 정의합니다.

dbcluster:
  name: string
downstream:
  control: string
  host: string
  password:
    name: string
    namespace: string
  port: integer
  replicationSlotName: string
  username: string
upstream:
  password:
    name: string
    namespace: string
  replicationSlotName: string
  username: string

필드

유형
필수 또는 선택사항

 

설명
dbcluster
object
선택사항
DBCluster는 이 복제가 속한 DBCluster입니다.
dbcluster.name
string
선택사항
참조 대상의 이름입니다. 자세한 내용은 이름을 참고하세요.
downstream
object
선택사항
다운스트림에는 복제 다운스트림 데이터베이스의 사양이 포함됩니다.
downstream.control
string
필수
이 데이터베이스에서 실행할 복제 작업을 지정하는 컨트롤입니다. 허용되는 값은 setup, promote, rewind입니다.
downstream.host
string
필수
호스트는 이 데이터베이스가 복제를 위해 액세스할 수 있는 업스트림 데이터베이스의 연결 엔드포인트입니다.
downstream.password
object
필수
비밀번호는 업스트림 데이터베이스의 복제 사용자 비밀번호를 저장하는 보안 비밀에 대한 참조입니다.
downstream.password.name
string
선택사항
이름은 보안 비밀 리소스를 참조하는 네임스페이스 내에서 고유해야 합니다.
downstream.password.namespace
string
선택사항
네임스페이스는 보안 비밀 이름이 고유해야 하는 공간을 정의합니다.
downstream.port
integer
선택사항
포트는 이 데이터베이스가 복제를 위해 액세스할 수 있는 업스트림 데이터베이스의 포트입니다. 기본값은 5432입니다.
downstream.replicationslotname
string
필수
ReplicationSlotName은 업스트림 데이터베이스에 생성된 복제 슬롯의 이름입니다. 이 데이터베이스에서 복제에 사용합니다.
downstream.username
string
필수
사용자 이름은 업스트림 데이터베이스에 생성된 복제 사용자의 이름입니다. 이 데이터베이스에서 복제를 위해 업스트림에 연결하는 데 사용됩니다.
upstream
object
선택사항
업스트림에는 복제 업스트림 데이터베이스의 사양이 포함됩니다.
upstream.password
object
필수
비밀번호는 복제 사용자 비밀번호를 저장하는 보안 비밀에 대한 참조입니다. 비밀번호를 입력하지 않으면 비밀번호가 생성되어 상태에 표시된 보안 비밀에 저장됩니다.
upstream.password.name
string
선택사항
이름은 보안 비밀 리소스를 참조하는 네임스페이스 내에서 고유해야 합니다.
upstream.password.namespace
string
선택사항
네임스페이스는 보안 비밀 이름이 고유해야 하는 공간을 정의합니다.
upstream.replicationslotname
string
선택사항
ReplicationSlotName은 복제에 사용할 복제 슬롯의 이름입니다. 이 이름을 제공하지 않으면 복제 슬롯 이름이 생성되어 상태에 표시됩니다.
upstream.username
string
선택사항
사용자 이름은 복제에 사용할 복제 사용자의 이름입니다. 사용자 이름을 제공하지 않으면 사용자 이름이 생성되어 상태에 표시됩니다.

상태 스키마

ReplicationStatus는 관찰된 복제 상태를 정의합니다.

conditions:
- lastTransitionTime: string
  message: string
  observedGeneration: integer
  reason: string
  status: string
  type: string
criticalIncidents:
- code: string
  createTime: string
  message: string
  messageTemplateParams: object
  resource:
    component: string
    location:
      cluster: string
      group: string
      kind: string
      name: string
      namespace: string
      version: string
  stackTrace:
  - component: string
    message: string
  transientUntil: string
downstream: object
observedGeneration: integer
reconciled: boolean
upstream:
  host: string
  password:
    name: string
    namespace: string
  port: integer
  replicationSlotName: string
  username: 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)입니다.
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(있는 경우)은 지정된 시간까지 문제를 일시적인 것으로 간주해야 함을 나타냅니다.
downstream
object
선택사항
Downstream에는 복제 다운스트림 데이터베이스의 관찰된 상태가 포함됩니다.
observedgeneration
integer
선택사항
내부: 컨트롤러에서 관찰한 생성입니다.
reconciled
boolean
선택사항
내부: 컨트롤러에서 리소스를 조정했는지 여부입니다.
upstream
object
선택사항
업스트림에는 복제 업스트림 데이터베이스의 관찰된 상태가 포함됩니다.
upstream.host
string
선택사항
호스트는 다운스트림 데이터베이스가 복제를 위해 액세스할 수 있는 이 데이터베이스의 연결 엔드포인트입니다.
upstream.password
object
선택사항
비밀번호는 이 데이터베이스의 복제 사용자 비밀번호를 저장하는 보안 비밀에 대한 참조입니다.
upstream.password.name
string
선택사항
이름은 보안 비밀 리소스를 참조하는 네임스페이스 내에서 고유해야 합니다.
upstream.password.namespace
string
선택사항
네임스페이스는 보안 비밀 이름이 고유해야 하는 공간을 정의합니다.
upstream.port
integer
선택사항
포트는 다운스트림 데이터베이스가 복제를 위해 액세스할 수 있는 이 데이터베이스의 포트입니다.
upstream.replicationslotname
string
선택사항
ReplicationSlotName은 이 데이터베이스에 생성된 복제 슬롯의 이름입니다. 다운스트림 데이터베이스는 복제에 이 복제 슬롯을 사용할 수 있습니다.
upstream.username
string
선택사항
사용자 이름은 이 데이터베이스의 복제 사용자 이름입니다. 하류 데이터베이스는 이 사용자를 사용하여 복제를 위해 이 데이터베이스에 연결할 수 있습니다.