DBInstance 커스텀 리소스 정의

사양 스키마

DBInstanceSpec은 DBInstance의 선택된 상태를 정의합니다.

DBInstance:
  metadata:
    name: string
  spec:
    dbcParent:
      name: string
    instanceType: string
    nodeCount: integer
    readPoolPort: integer
    resources:
      cpu: integer or string
      memory: string or integer
      disks:
      - name: string
        path: string
        size: string

필드

유형
필수 또는 선택사항

 

설명
name
string
필수
DBInstance 리소스의 이름입니다.
dbcParent
object
필수
이 DBInstance이 복제되는 상위 DBCluster입니다.
dbcParent.name
string
필수
지시 대상 DBCluster의 이름입니다.
instanceType
string
선택사항
DBInstance 유형을 나타냅니다. ReadPool 유형을 지원합니다. 기본값은 ReadPool입니다.
nodeCount
integer
선택사항
이 DBInstance에 생성할 DBNode 수를 결정합니다. 지원되는 값은 0~20 사이입니다. 기본값은 1입니다.
readPoolPort
integer
선택사항
ReadPool DBInstance의 전용 HAProxy 프런트엔드 포트
resources
object
선택사항
이 DBInstance에 속한 인스턴스 (DBNodes)에 사용되는 컴퓨팅 및 스토리지 리소스를 지정합니다. 생략하면 인스턴스가 DBCluster의 기본 인스턴스와 동일한 리소스를 사용합니다.
resources.cpu
integer or string
필수
데이터베이스 프로세스에 할당된 CPU 양입니다 (예: 2 또는 "2").
resources.memory
string or integer
필수
데이터베이스 프로세스에 할당된 메모리 양입니다 (예: "6Gi").
resources.disks
list (object)
필수
데이터베이스 프로세스에 할당된 디스크 사양입니다.
resources.disks[].name
string
필수
디스크 이름입니다. 허용되는 값은 DataDisk 및 ObsDisk입니다.
resources.disks[].path
string
선택사항
디스크가 호스트 파일 시스템에 마운트된 경로입니다.
resources.disks[].size
string
선택사항
디스크 크기(바이트)(예: "15Gi")

상태 스키마

DBInstanceStatus는 DBInstance의 관찰된 상태를 정의합니다.

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
endpoints:
- name: string
  value: string
observedGeneration: integer
reconciled: boolean

필드

유형
필수 또는 선택사항

 

설명
conditions
list (object)
선택사항
DBInstance의 현재 상태에 대한 최근 관찰 결과를 나타냅니다.
conditions[]
object
선택사항
Condition은 이 API 리소스의 현재 상태의 한 관점을 설명합니다.
conditions[].lastTransitionTime
string
필수
조건이 특정 상태에서 다른 상태로 전환된 시간을 나타냅니다. 이 시간을 알 수 없는 경우 API 필드가 변경된 시간을 사용합니다.
conditions[].message
string
필수
전환에 대한 세부정보를 설명하는 사람이 읽을 수 있는 문자열입니다. 이 문자열은 비어 있을 수 있습니다.
conditions[].observedGeneration
integer
선택사항
조건이 설정된 기준인 .metadata.generation을 나타냅니다.
conditions[].reason
string
필수
조건의 마지막 전환 이유를 나타내는 프로그래매틱 식별자를 포함합니다. 값은 CamelCase 문자열입니다. DBInstance의 예상 값은 다음과 같습니다.
  • AllDBNodesReady: DBInstance에 준비된 DBNodes가 필요한 수만큼 있습니다.
  • MinDBNodesReady: 사양에 지정된 최소 DBNodes 수가 준비되었습니다.
  • DBNodesNotReady: 최소 DBNodes가 준비되지 않았습니다.
  • AllDBNodesStreaming: DBInstance에 기본에서 활발하게 복제하는 데 필요한 수의 DBNode가 있습니다.
  • MinDBNodesStreaming: 기본에서 복제되는 DBNodes가 최소 개수 이상입니다.
  • DBNodesNotStreaming: 최소 DBNodes가 복제되지 않습니다.
  • NetworkReady: LoadBalancer가 생성되었으며 DBNodes를 제공할 준비가 되었습니다.
  • NetworkNotReady: LoadBalancer가 DBNodes를 제공할 준비가 되지 않았습니다.
  • DBNodesAvailable: 필요한 DBNodes가 성공적으로 프로비저닝되고 LoadBalancer를 사용하여 액세스할 수 있습니다.
  • InvalidSpec: 사양의 일부가 잘못되었음을 나타냅니다.
conditions[].status
string
필수
조건의 상태입니다. 유효한 값은 True, False, Unknown입니다.
conditions[].type
string
필수
CamelCase 형식의 조건 유형입니다. 예상 유형은 다음과 같습니다.
  • DBNodesReady: 이 DBInstance에 필요한 모든 DBNodes가 프로비저닝되고 준비되었는지 여부를 나타냅니다.
  • Streaming: DBNodes가 기본에서 활발하게 복제되는지 여부를 나타냅니다.
  • NetworkReady: LoadBalancer가 생성되어 DBNodes를 제공할 준비가 되었는지 여부를 표시합니다.
  • Available: 필요한 수의 DBNode가 프로비저닝되고 LoadBalancer를 사용하여 액세스할 수 있는지 여부를 나타냅니다.
criticalIncidents
list (object)
선택사항
활성 상태인 모든 심각한 사고의 목록입니다.
criticalIncidents[]
object
선택사항
진행 중인 심각한 사고를 설명합니다.
criticalIncidents[].code
string
필수
오류의 오류 코드입니다. 오류 코드는 DBSE+숫자 문자열입니다(예: DBSE1012).
criticalIncidents[].createTime
string
필수
사고가 출처에서 생성된 타임스탬프입니다.
criticalIncidents[].message
string
선택사항
발생한 사고나 오류를 설명합니다.
criticalIncidents[].messageTemplateParams
object
선택사항
UI에서 사용자 친화적인 데이터 기반 메시지를 생성하기 위한 키-값 쌍이 포함됩니다.
criticalIncidents[].resource
object
필수
사고를 신고한 데이터베이스 서비스 구성요소에 대한 정보를 포함합니다.
criticalIncidents[].resource.component
string
필수
사고를 신고한 데이터베이스 서비스 하위 시스템의 내부 식별자입니다.
criticalIncidents[].resource.location
object
선택사항
원본 리소스의 위치입니다.
criticalIncidents[].resource.location.cluster
string
선택사항
영향을 받는 리소스의 클러스터 이름입니다.
criticalIncidents[].resource.location.group
string
선택사항
리소스의 그룹 이름입니다.
criticalIncidents[].resource.location.kind
string
선택사항
리소스 종류입니다.
criticalIncidents[].resource.location.name
string
선택사항
영향을 받는 리소스의 이름입니다.
criticalIncidents[].resource.location.namespace
string
선택사항
영향을 받는 리소스의 네임스페이스입니다.
criticalIncidents[].resource.location.version
string
선택사항
리소스 버전입니다.
criticalIncidents[].stackTrace
list (object)
선택사항
스택 트레이스의 구조화되지 않은 메시지 목록입니다.
criticalIncidents[].stackTrace[].component
string
선택사항
메시지를 로깅한 데이터베이스 서비스 구성요소의 이름입니다.
criticalIncidents[].stackTrace[].message
string
선택사항
로깅된 메시지입니다.
criticalIncidents[].transientUntil
string
선택사항
지정된 시간까지는 문제를 일시적인 것으로 간주해야 함을 나타냅니다.
endpoints
list (object)
선택사항
Endpoints에는 이 인스턴스에 액세스할 수 있는 모든 엔드포인트가 포함됩니다.
endpoints[].name
string
필수
이름은 엔드포인트의 이름입니다(예: Read-Only).
endpoints[].value
string
필수
Value에는 인스턴스에 연결하고 액세스하는 데 필요한 엔드포인트 정보가 포함됩니다.
observedGeneration
integer
선택사항
컨트롤러에서 모니터링된 생성입니다.
reconciled
boolean
선택사항
컨트롤러에서 리소스를 조정했는지 여부입니다.