API 레퍼런스

API 레퍼런스 (private-cloud-api-reference)

Qdrant Private Cloud의 공식 Kubernetes API 스키마 레퍼런스예요. Qdrant Operator가 다루는 커스텀 리소스(Custom Resource)들의 필드 정의와 기본값, 검증 규칙을 정리한 문서예요. QdrantCluster 같은 리소스를 직접 작성할 때 각 필드가 무엇을 뜻하는지 확인하는 용도로 사용하면 돼요.

패키지 (Packages)

auth.qdrant.io/v1alpha1

v1alpha1 패키지는 qdrant.io v1alpha1 API 그룹에 대한 API 스키마 정의를 담고 있어요.

리소스 유형 (Resource Types)

APIAuthentication

APIAuthentication은 Qdrant 클러스터에 인증하기 위한 구성을 정의해요.

나타나는 곳:

필드 설명 기본값 검증
apiVersion string auth.qdrant.io/v1alpha1
kind string APIAuthentication
metadata ObjectMeta metadata의 필드는 Kubernetes API 문서를 참조하세요. Optional: {}
spec APIAuthenticationSpec

APIAuthenticationSpec

APIAuthenticationSpec은 Qdrant 클러스터에 인증하기 위한 구성을 설명해요.

나타나는 곳:

필드 설명 기본값 검증
sha512 string API 키의 SHA512 해시 MaxLength: 128
MinLength: 128
Optional: {}
clusterIDs string array API 키가 유효한 클러스터 ID 목록

qdrant.io/v1

v1 패키지는 qdrant.io v1 API 그룹에 대한 API 스키마 정의를 담고 있어요.

리소스 유형 (Resource Types)

AuditConfig

AuditConfig는 Qdrant의 감사 로깅 구성을 지정해요.

나타나는 곳:

필드 설명 기본값 검증
enabled boolean 감사 로깅을 활성화할지 여부를 지정 false Optional: {}
dir string 감사 로그 파일을 작성할 디렉터리 지정.
기본값은 ./storage/audit
Optional: {}
rotation AuditRotation 로테이션 간격 지정: "daily"(기본값) 또는 "hourly" daily Enum: [daily hourly]
Optional: {}
max_log_files integer 유지할 로테이션된 감사 로그 파일의 최대 개수 지정.
새 로그 파일이 생성되면 오래된 파일은 삭제. 기본값: 7
7 Minimum: 1
Optional: {}
trust_forwarded_headers boolean 감사 로그 항목에 기록되는 클라이언트 주소를 결정하기 위해 X-Forwarded-For 헤더를 사용할지 여부 지정. 신뢰할 수 있는 리버스 프록시나 로드밸런서 뒤에서 실행될 때만 활성화. 기본값은 false Optional: {}

AuditRotation

기본 유형: string

AuditRotation은 감사 로그 파일의 로테이션 간격을 지정해요.

검증:

  • Enum: [daily hourly]

나타나는 곳:

필드 설명
daily
hourly

ClusterManagerReponse

나타나는 곳:

필드 설명 기본값 검증
description string 마지막 응답에 대한 추가 정보 Optional: {}

ClusterPhase

기본 유형: string

나타나는 곳:

필드 설명
Creating
FailedToCreate
Updating
FailedToUpdate
Scaling
Upgrading
Suspending
Suspended
FailedToSuspend
Resuming
FailedToResume
Healthy
NotReady
RecoveryMode
ManualMaintenance

ComponentPhase

기본 유형: string

나타나는 곳:

필드 설명
Ready
NotReady
Unknown
NotFound

ComponentReference

나타나는 곳:

필드 설명 기본값 검증
apiVersion string 참조되는 구성 요소의 그룹과 버전
kind string 참조되는 구성 요소의 유형
name string 참조되는 구성 요소의 이름
namespace string 참조되는 구성 요소의 네임스페이스
markedForDeletion boolean 구성 요소가 삭제 대상으로 표시되었는지 여부 지정 Optional: {}

ComponentStatus

나타나는 곳:

필드 설명 기본값 검증
name string 구성 요소의 이름 지정
namespace string 구성 요소의 네임스페이스 지정
version string 구성 요소의 버전 지정 Optional: {}
phase ComponentPhase 구성 요소의 현재 단계 지정
message string 현재 단계를 설명하는 정보 지정 Optional: {}

EntityPhase

기본 유형: string

나타나는 곳:

필드 설명
Creating
Ready
Updating
Failing
Deleting
Deleted

EntityResult

기본 유형: string

EntityResult는 manager 호출의 마지막 결과예요.

나타나는 곳:

필드 설명
Ok
Pending
Error

GPU

나타나는 곳:

필드 설명 기본값 검증
gpuType GPUType 사용할 GPU의 유형 지정. 설정하면 GPU 인덱싱이 활성화됨 Enum: [nvidia amd]
forceHalfPrecision boolean 인덱싱 중 f32 값에 대한 하프 정밀도 강제.
f16 변환은 GPU 메모리 내부에서만 발생하며 스토리지 유형에는 영향을 주지 않음
false
deviceFilter string array 하드웨어 이름별 GPU 장치 필터. 대소문자 구분 없음.
GPU 장치 이름과 매칭할 부분 문자열 목록.
예: [- "nvidia"]
지정하지 않으면 모든 장치가 허용됨
MinItems: 1
Optional: {}
devices string array 사용할 명시적 GPU 장치 목록.
호스트에 여러 GPU가 있으면 이 옵션으로 발견된 장치 목록에서 인덱스별로 특정 장치 선택 가능.
deviceFilter가 설정되면 인덱스는 필터링 후 적용됨.
지정하지 않으면 모든 장치가 허용됨
MinItems: 1
Optional: {}
parallelIndexes integer GPU에서 실행할 병렬 인덱스 수 1 Minimum: 1
Optional: {}
groupsCount integer 사용되는 GPU의 vulkan "groups" 수.
즉, GPU가 병렬로 인덱싱할 수 있는 포인트 수.
최적 값은 GPU 모델에 따라 다를 수 있음.
비례하지만 물리적 warp 수와 반드시 같지는 않음.
정확히 모르면 이 값을 변경하지 마세요
Minimum: 1
Optional: {}
allowIntegrated boolean 통합 GPU 사용을 허용할지 여부 지정 false

GPUType

기본 유형: string

GPUType은 사용할 GPU의 유형을 지정해요.

검증:

  • Enum: [nvidia amd]

나타나는 곳:

필드 설명
nvidia
amd

HelmRelease

나타나는 곳:

필드 설명 기본값 검증
markedForDeletionAt string helm release가 삭제 대상으로 표시된 시간 지정 Optional: {}
object HelmRelease helm release 객체 지정 EmbeddedResource: {}

HelmRepository

나타나는 곳:

필드 설명 기본값 검증
markedForDeletionAt string helm repository가 삭제 대상으로 표시된 시간 지정 Optional: {}
object HelmRepository helm repository 객체 지정 EmbeddedResource: {}

InferenceConfig

나타나는 곳:

필드 설명 기본값 검증
enabled boolean 클러스터에 대해 추론을 활성화할지 여부 지정 false Optional: {}

Ingress

나타나는 곳:

필드 설명 기본값 검증
enabled boolean 클러스터에 대해 ingress를 활성화할지 여부 지정 Optional: {}
annotations object (keys:string, values:string) ingress용 애너테이션 지정 Optional: {}
ingressClassName string ingress 클래스의 이름 지정 Optional: {}
host string ingress용 호스트 지정 Optional: {}
tls boolean ingress에 대해 tls를 활성화할지 여부 지정.
기본값은 ingress 제공자에 따라 다름:
- KubernetesIngress: False
- NginxIngress: False
- QdrantCloudTraefik: operator의 config.tls 설정에 따라 다름
Optional: {}
tlsSecretName string tls 인증서가 포함된 secret의 이름 지정 Optional: {}
nginx NGINXConfig nginx ingress 특정 설정 지정 Optional: {}
traefik TraefikConfig traefik ingress 특정 설정 지정 Optional: {}

KubernetesDistribution

기본 유형: string

나타나는 곳:

필드 설명
unknown
aws
gcp
azure
do
scaleway
openshift
linode
civo
oci
ovhcloud
stackit
vultr
k3s

KubernetesEventInfo

나타나는 곳:

필드 설명 기본값 검증
message string 이벤트 메시지 Optional: {}
reason string 이벤트 이유 Optional: {}
count integer 이벤트 발생 횟수 Optional: {}
firstTimestamp Time 이벤트가 처음 관찰된 시간 Optional: {}
lastTimestamp Time 이벤트가 마지막으로 관찰된 시간 Optional: {}

KubernetesPod

나타나는 곳:

필드 설명 기본값 검증
annotations object (keys:string, values:string) Pod용 애너테이션 지정 Optional: {}
labels object (keys:string, values:string) Pod용 레이블 지정 Optional: {}
extraEnv EnvVar array Pod용 추가 환경 변수 지정 Optional: {}

KubernetesService

나타나는 곳:

필드 설명 기본값 검증
type ServiceType Service의 유형 지정: "ClusterIP", "NodePort", "LoadBalancer" ClusterIP Optional: {}
annotations object (keys:string, values:string) Service용 애너테이션 지정 Optional: {}
loadBalancerSourceRanges string array loadBalancer Service용 허용 CIDR 소스 범위 지정 Optional: {}

KubernetesStatefulSet

나타나는 곳:

필드 설명 기본값 검증
annotations object (keys:string, values:string) StatefulSet용 애너테이션 지정 Optional: {}
pods KubernetesPod Qdrant StatefulSet의 Pod 구성 지정 Optional: {}

MetricSource

기본 유형: string

나타나는 곳:

필드 설명
kubelet
api

Monitoring

나타나는 곳:

필드 설명 기본값 검증
cAdvisorMetricSource MetricSource cAdvisor 메트릭 소스 지정 Optional: {}
nodeMetricSource MetricSource 노드 메트릭 소스 지정 Optional: {}

NGINXConfig

나타나는 곳:

필드 설명 기본값 검증
allowedSourceRanges string array ingress용 허용 CIDR 소스 범위 지정 Optional: {}
grpcHost string GRPC ingress용 호스트 이름 지정 Optional: {}

NodeInfo

나타나는 곳:

필드 설명 기본값 검증
name string 노드의 이름 지정
region string 노드의 리전 지정 Optional: {}
zone string 노드의 영역 지정 Optional: {}
instanceType string 노드의 인스턴스 유형 지정 Optional: {}
arch string 노드의 CPU 아키텍처 지정 Optional: {}
capacity NodeResourceInfo 노드의 용량 지정
allocatable NodeResourceInfo 노드의 할당 가능한 리소스 지정

NodePVCStatus

나타나는 곳:

필드 설명 기본값 검증
storageClassName string PVC가 사용하는 StorageClass의 이름 Optional: {}
phase PersistentVolumeClaimPhase PVC의 상태 단계 Optional: {}
conditions PersistentVolumeClaimCondition array PVC의 조건 Optional: {}
events KubernetesEventInfo array PVC와 관련된 최근 Kubernetes 이벤트
지난 30분 동안 발생한 이벤트가 저장됨
Optional: {}
capacity ResourceList capacity는 기본 볼륨의 실제 리소스를 나타냄 Optional: {}
currentVolumeAttributesClassName string PVC가 사용 중인 VolumeAttributesClass의 현재 이름.
설정되지 않으면 이 PersistentVolumeClaim에 적용된 VolumeAttributeClass가 없음
Optional: {}
modifyVolumeStatus ModifyVolumeStatus ControllerModifyVolume 작업의 상태 객체를 나타냄.
설정되지 않으면 시도 중인 ModifyVolume 작업이 없음
Optional: {}

NodeResourceInfo

나타나는 곳:

필드 설명 기본값 검증
cpu string 노드의 CPU 리소스 지정
memory string 노드의 메모리 리소스 지정
pods string 노드의 pods 리소스 지정
ephemeralStorage string 노드의 임시 스토리지 리소스 지정

NodeStatus

나타나는 곳:

필드 설명 기본값 검증
name string 노드의 이름 지정 Optional: {}
started_at string 노드가 시작된 시간 지정 (RFC3339 형식) Optional: {}
state object (keys:PodConditionType, values:ConditionStatus) 노드의 조건 상태 지정 Optional: {}
version string 노드에서 실행 중인 Qdrant 버전 지정 Optional: {}
liveness boolean qdrant 노드가 liveness 요청에 응답했는지 여부를 보고 (readiness 전).
사용자에게 복구 프로세스를 더 잘 보고하는 데 필요
Optional: {}
zone string 노드가 실행 중인 가용 영역 Optional: {}
podPhase PodPhase 노드 Pod의 상태 단계 Optional: {}
podConditions PodCondition array 노드 Pod의 조건 Optional: {}
podMessage string 노드 Pod의 상태 메시지 Optional: {}
podReason string 노드 Pod의 상태 이유 Optional: {}
containerStatuses ContainerStatus array 노드 Pod의 컨테이너 상태 상세 Optional: {}
events KubernetesEventInfo array 노드 Pod와 관련된 최근 Kubernetes 이벤트
지난 30분 동안 발생한 이벤트 저장
Optional: {}
restartCount integer 메인 qdrant 컨테이너가 재시작된 횟수 Optional: {}
databasePVCStatus NodePVCStatus 데이터베이스 스토리지 PVC의 상태 Optional: {}
snapshotsPVCStatus NodePVCStatus 스냅샷 스토리지 PVC의 상태 Optional: {}

OnDemandReplicationType

기본 유형: string

OnDemandReplicationType은 온디맨드 복제 재시작 모드를 지정해요.

검증:

  • Enum: [Off Auto On]

나타나는 곳:

필드 설명
Off
Auto
On

Pause

나타나는 곳:

필드 설명 기본값 검증
owner string 일시 중지 요청의 소유자 지정
reason string 일시 중지 요청의 이유 지정
creationTimestamp string 일시 중지 요청이 생성된 시간 지정

PersistentVolumeClaimTemplate

나타나는 곳:

필드 설명 기본값 검증
metadata TemplateMetadata metadata의 필드는 Kubernetes API 문서를 참조하세요
spec PersistentVolumeClaimSpec spec은 pod 작성자가 요청한 볼륨의 원하는 특성을 정의.
추가 정보: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
Optional: {}

QdrantCloudRegion

QdrantCloudRegion은 qdrantcloudregions API의 스키마예요.

나타나는 곳:

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantCloudRegion
metadata ObjectMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
spec QdrantCloudRegionSpec

QdrantCloudRegionList

QdrantCloudRegionList는 QdrantCloudRegion 목록을 담고 있어요.

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantCloudRegionList
metadata ListMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
items QdrantCloudRegion array

QdrantCloudRegionSpec

QdrantCloudRegionSpec은 QdrantCloudRegion의 원하는 상태를 정의해요.

나타나는 곳:

필드 설명 기본값 검증
id string 리전의 고유 식별자 지정
components ComponentReference array 리전에 설치할 구성 요소 목록 지정 Optional: {}
helmRepositories HelmRepository array 리전에 생성할 helm repository 목록 지정
더 이상 사용되지 않음: "Components"를 사용하세요
Optional: {}
helmReleases HelmRelease array 리전에 생성할 helm release 목록 지정
더 이상 사용되지 않음: "Components"를 사용하세요
Optional: {}

QdrantCluster

QdrantCluster는 qdrantclusters API의 스키마예요.

나타나는 곳:

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantCluster
metadata ObjectMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
spec QdrantClusterSpec

QdrantClusterList

QdrantClusterList는 QdrantCluster 목록을 담고 있어요.

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantClusterList
metadata ListMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
items QdrantCluster array

QdrantClusterRestore

QdrantClusterRestore는 qdrantclusterrestores API의 스키마예요.

나타나는 곳:

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantClusterRestore
metadata ObjectMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
spec QdrantClusterRestoreSpec

QdrantClusterRestoreList

QdrantClusterRestoreList는 QdrantClusterRestore 객체 목록을 담고 있어요.

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantClusterRestoreList
metadata ListMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
items QdrantClusterRestore array

QdrantClusterRestoreSpec

QdrantClusterRestoreSpec은 QdrantClusterRestore의 원하는 상태를 정의해요.

나타나는 곳:

필드 설명 기본값 검증
source RestoreSource 복원이 수행될 소스 스냅샷 정의
destination RestoreDestination 소스 데이터가 들어갈 대상 클러스터 정의

QdrantClusterScheduledSnapshot

QdrantClusterScheduledSnapshot은 qdrantclusterscheduledsnapshots API의 스키마예요.

나타나는 곳:

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantClusterScheduledSnapshot
metadata ObjectMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
spec QdrantClusterScheduledSnapshotSpec

QdrantClusterScheduledSnapshotList

QdrantClusterScheduledSnapshotList는 QdrantCluster 목록을 담고 있어요.

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantClusterScheduledSnapshotList
metadata ListMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
items QdrantClusterScheduledSnapshot array

QdrantClusterScheduledSnapshotSpec

QdrantClusterScheduledSnapshotSpec은 QdrantCluster의 원하는 상태를 정의해요.

나타나는 곳:

필드 설명 기본값 검증
cluster-id string 클러스터의 고유 식별자 지정
scheduleShortId string 스케줄을 식별하는 짧은 Id 지정 MaxLength: 8
schedule string 스냅샷 생성 빈도의 Cron 표현식, https://en.wikipedia.org/wiki/Cron 참고.
스케줄은 UTC로 지정됨
Pattern: ^(@(annually|yearly|monthly|weekly|daily|hourly|reboot))|(@every (\d+(ns|us|µs|ms|s|m|h))+)|((((\d+,)+\d+|([\d\*]+(\/|-)\d+)|\d+|\*) ?)\{5,7\})$
retention string 시간 단위의 스케줄 보존 기간 Pattern: ^[0-9]+h$

QdrantClusterSnapshot

QdrantClusterSnapshot은 qdrantclustersnapshots API의 스키마예요.

나타나는 곳:

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantClusterSnapshot
metadata ObjectMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
spec QdrantClusterSnapshotSpec

QdrantClusterSnapshotList

QdrantClusterSnapshotList는 QdrantClusterSnapshot 목록을 담고 있어요.

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantClusterSnapshotList
metadata ListMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
items QdrantClusterSnapshot array

QdrantClusterSnapshotPhase

기본 유형: string

나타나는 곳:

필드 설명
Running
Skipped
Failed
Succeeded

QdrantClusterSnapshotSpec

나타나는 곳:

필드 설명 기본값 검증
cluster-id string 스냅샷을 찍을 클러스터 ID
클러스터는 이 QdrantClusterSnapshot이 위치한 네임스페이스와 동일해야 함
creation-timestamp integer 백업의 생성 타임스탬프 (Unix epoch 형식) Optional: {}
scheduleShortId string 있으면 스케줄을 식별하는 짧은 Id 지정.
백업이 수동으로 만들어지면 이 필드를 설정하지 않아야 함
MaxLength: 8
Optional: {}
retention string 이 스냅샷의 시간 단위 보존 기간(있을 경우).
설정하지 않으면 백업에 보존 기간이 없어 제거되지 않음
Pattern: ^[0-9]+h$
Optional: {}

QdrantClusterSpec

QdrantClusterSpec은 QdrantCluster의 원하는 상태를 정의해요.

나타나는 곳:

필드 설명 기본값 검증
id string 클러스터의 고유 식별자 지정
version string 배포할 Qdrant 버전 지정
size integer 클러스터의 원하는 Qdrant 노드 수 지정 Maximum: 100
Minimum: 1
servicePerNode boolean 클러스터가 각 노드에 전용 서비스를 시작할지 여부 지정 true Optional: {}
clusterManager boolean 이 클러스터에 클러스터 매니저를 사용할지 여부 지정.
Python-operator는 전용 클러스터 매니저 인스턴스를 배포.
Go-operator는 공유 인스턴스를 사용.
설정하지 않으면 기본값은 operator 설정에서 가져옴
Optional: {}
suspend boolean 클러스터를 일시 중지할지 여부 지정.
활성화하면 클러스터가 일시 중지되고 PVC를 제외한 모든 관련 리소스가 제거됨
false Optional: {}
pauses Pause array 수동 유지보수를 위한 개발자의 일시 중지 요청 목록 지정.
일시 중지 요청이 있으면 operator는 CR의 변경 처리를 건너뜀
Optional: {}
image QdrantImage 각 Qdrant 노드에 사용할 이미지 지정 Optional: {}
resources Resources 각 Qdrant 노드에 할당할 리소스 지정
security QdrantSecurityContext 각 Qdrant 노드의 보안 컨텍스트 지정 Optional: {}
tolerations Toleration array 각 Qdrant 노드의 톨러레이션 지정 Optional: {}
nodeSelector object (keys:string, values:string) 각 Qdrant 노드의 노드 셀렉터 지정 Optional: {}
config QdrantConfiguration 클러스터의 Qdrant 구성 설정 지정 Optional: {}
ingress Ingress 클러스터의 ingress 지정 Optional: {}
service KubernetesService Qdrant Kubernetes Service의 구성 지정 Optional: {}
gpu GPU 클러스터의 GPU 구성 지정. 이 필드가 설정되지 않으면 GPU가 사용되지 않음 Optional: {}
statefulSet KubernetesStatefulSet Qdrant Kubernetes StatefulSet의 구성 지정 Optional: {}
storageClassNames StorageClassNames db와 snapshots용 스토리지 클래스 이름 지정 Optional: {}
storage Storage 클러스터 PVC의 스토리지 사양 지정. 필드가 설정되지 않으면 구성이 적용되지 않음 Optional: {}
topologySpreadConstraints TopologySpreadConstraint 클러스터의 토폴로지 분산 제약 조건 지정 Optional: {}
podDisruptionBudget PodDisruptionBudgetSpec 클러스터의 pod disruption budget 지정 Optional: {}
restartAllPodsConcurrently boolean 모든 pod를 동시에 재시작할지 여부 지정 (one-shot-restart라고도 함).
여러 pod를 재시작해야 하는 상황(예: RestartedAtAnnotationKey가 추가·업데이트되거나 Qdrant 버전을 업그레이드할 때)에서 활성화하면 클러스터의 모든 pod가 동시에 재시작됨.
이것은 샤딩되었지만 복제되지 않은 클러스터가 재시작 중 다운타임을 최소로 줄이는 데 도움.
설정하지 않으면, operator는 어떤 컬렉션도 복제되지 않은 경우 노드를 동시에 재시작함
Optional: {}
onDemandReplication OnDemandReplicationType 온디맨드 복제 재시작 모드 지정.
Off(기본값): 일반 재시작 동작. Pod는 직접 재시작됨.
Auto: operator가 복제되지 않은 샤드에 대해 텔레메트리를 확인. 발견되면 recreate-node 흐름 사용.
On: 적격 재시작 트리거에 대해 항상 recreate-node 흐름 사용
Off Enum: [Off Auto On]
Optional: {}
startupDelaySeconds integer StartupDelaySeconds가 설정(> 0)되면 pod 시작 시 추가 'sleep '가 실행됨.
sleep은 pod가 재시작될 때 추가되며, 어떤 pod도 강제로 재시작하지 않음.
이 기능은 코어 디버깅(예: pod가 crash loop에 있을 때 첨부된 스토리지 검사)에 사용 가능
Optional: {}
rebalanceStrategy RebalanceStrategy 클러스터 샤드를 자동 리밸런싱하는 데 사용할 전략 지정.
이 기능이 작동하려면 클러스터 매니저가 활성화되어야 함
Enum: [by_count by_size by_count_and_size disabled]
Optional: {}
readClusters ReadCluster array 동기화할 이 클러스터의 읽기 클러스터 지정.
이 기능이 작동하려면 클러스터 매니저가 활성화되어야 함
Optional: {}
writeCluster WriteCluster 이 클러스터의 쓰기 클러스터 지정. 이것은 쓰기 클러스터로의 egress를 허용하도록 NetworkPolicy를 구성함 Optional: {}
multiAZ boolean MultiAZ는 이 클러스터가 여러 가용 영역에 걸쳐 있고
가능하면 트래픽을 같은 영역으로 유지해야 함을 나타냄. true이면
operator는 생성된 QdrantClusterRouting에 이 플래그를 전파하여
route-manager가 이 Qdrant 클러스터를 앞에 두는 Envoy
클러스터에서 영역 인지 로드 밸런싱을 활성화함
false Optional: {}

QdrantConfiguration

나타나는 곳:

필드 설명 기본값 검증
collection QdrantConfigurationCollection Qdrant의 기본 컬렉션 구성 지정 Optional: {}
log_level string Qdrant의 로그 레벨 지정 Optional: {}
service QdrantConfigurationService Qdrant의 서비스 레벨 구성 지정 Optional: {}
tls QdrantConfigurationTLS Qdrant의 TLS 구성 지정 Optional: {}
storage StorageConfig Qdrant의 스토리지 구성 지정 Optional: {}
inference InferenceConfig 추론 구성. Qdrant Managed Cloud에서만 사용됨. 설정하지 않으면 이 클러스터에서 Inference를 사용할 수 없음 Optional: {}
audit AuditConfig Qdrant의 감사 로깅 구성 지정 Optional: {}

QdrantConfigurationCollection

나타나는 곳:

필드 설명 기본값 검증
replication_factor integer 각 샤드의 기본 복제본 수 지정 Optional: {}
write_consistency_factor integer 작업을 성공으로 간주하기 위해 적용해야 하는 복제본 수 지정 Optional: {}
vectors QdrantConfigurationCollectionVectors 벡터의 기본 매개변수 지정 Optional: {}
strict_mode QdrantConfigurationCollectionStrictMode 컬렉션의 strict mode 구성 지정 Optional: {}

QdrantConfigurationCollectionStrictMode

나타나는 곳:

필드 설명 기본값 검증
max_payload_index_count integer 생성이 허용된 payload 인덱스의 최대 수를 나타냄.
Qdrant 버전 >= 1.16.0에서 설정 가능.
생략하고 Qdrant 버전 >= 1.16.0이면 기본값 100
Minimum: 1
Optional: {}

QdrantConfigurationCollectionVectors

나타나는 곳:

필드 설명 기본값 검증
on_disk boolean 벡터를 메모리에 저장할지 디스크에 저장할지 지정 Optional: {}

QdrantConfigurationService

나타나는 곳:

필드 설명 기본값 검증
api_key QdrantSecretKeyRef qdrant 인스턴스용 ApiKey Optional: {}
read_only_api_key QdrantSecretKeyRef qdrant 인스턴스용 ReadOnlyApiKey Optional: {}
jwt_rbac boolean qdrant 인스턴스에 대해 jwt rbac을 활성화할지 여부 지정
기본값은 false
Optional: {}
hide_jwt_dashboard boolean 내장 UI의 JWT 대시보드를 숨길지 여부 지정
기본값은 false
Optional: {}
enable_tls boolean qdrant 인스턴스에 대해 tls를 활성화할지 여부 지정
기본값은 false
Optional: {}
max_request_size_mb integer 단일 요청에서 POST 데이터의 최대 크기를 메가바이트 단위로 지정
설정하지 않으면 기본값은 32 (MB)
Optional: {}

QdrantConfigurationTLS

나타나는 곳:

필드 설명 기본값 검증
cert QdrantSecretKeyRef 서버 인증서 체인 파일이 포함된 secret 참조 Optional: {}
key QdrantSecretKeyRef 서버 개인 키 파일이 포함된 secret 참조 Optional: {}
caCert QdrantSecretKeyRef CA 인증서 파일이 포함된 secret 참조 Optional: {}

QdrantEntity

QdrantEntity는 qdrantentities API의 스키마예요.

나타나는 곳:

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantEntity
metadata ObjectMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
spec QdrantEntitySpec

QdrantEntityList

QdrantEntityList는 QdrantEntity 객체 목록을 담고 있어요.

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantEntityList
metadata ListMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
items QdrantEntity array

QdrantEntitySpec

QdrantEntitySpec은 QdrantEntity의 원하는 상태를 정의해요.

나타나는 곳:

필드 설명 기본값 검증
id string 엔티티의 고유 식별자 (UUID 형식)
entityType string 엔티티의 유형
clusterId string 선택적 클러스터 식별자 Optional: {}
createdAt MicroTime 엔티티가 생성된 타임스탬프
lastUpdatedAt MicroTime 엔티티가 마지막으로 업데이트된 타임스탬프
deletedAt MicroTime 엔티티가 삭제된(또는 삭제 시작된) 타임스탬프.
설정되지 않으면 엔티티가 삭제되지 않음
payload JSON 이 엔티티의 일반 payload

QdrantEntityStatusResult

QdrantEntityStatusResult는 manager 호출의 마지막 결과예요.

나타나는 곳:

필드 설명 기본값 검증
result EntityResult 엔티티의 마지막 reconcile 결과 Enum: [Ok Pending Error]
reason string 결과의 이유 (오류의 경우)
payload JSON 상태의 선택적 payload

QdrantImage

나타나는 곳:

필드 설명 기본값 검증
repository string Qdrant 이미지의 저장소 지정.
지정하지 않으면 operator 설정의 기본값(또는 operator에 지정되지 않으면 qdrant/qdrant) 사용
Optional: {}
pullPolicy PullPolicy Qdrant 이미지의 이미지 풀 정책 지정.
지정하지 않으면 operator 설정의 기본값(또는 operator에 지정되지 않으면 IfNotPresent) 사용
Optional: {}
pullSecretName string Qdrant 이미지의 풀 secret 지정 Optional: {}

QdrantRelease

QdrantRelease는 사용 가능한 Qdrant 릴리스를 설명해요.

나타나는 곳:

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantRelease
metadata ObjectMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
spec QdrantReleaseSpec

QdrantReleaseList

QdrantReleaseList는 QdrantRelease 목록을 담고 있어요.

필드 설명 기본값 검증
apiVersion string qdrant.io/v1
kind string QdrantReleaseList
metadata ListMeta metadata의 필드는 Kubernetes API 문서를 참조하세요
items QdrantRelease array

QdrantReleaseSpec

QdrantReleaseSpec은 QdrantRelease의 원하는 상태를 정의해요.

나타나는 곳:

필드 설명 기본값 검증
version string 버전 번호 (semver 호환이어야 함).
예: "v1.10.1"
default boolean 설정하면 이 버전이 Cloud에서 새 클러스터의 기본값임.
플랫폼에서 기본으로 설정된 Qdrant 버전은 1개만 있어야 함
false Optional: {}
image string 이 버전에 사용할 전체 docker 이미지.
비어 있으면 Version(및 qdrant/qdrant 가정)에서 기본 이미지 파생
Optional: {}
unavailable boolean 설정하면 이 버전을 새 클러스터에 사용할 수 없음 false Optional: {}
endOfLife boolean 설정하면 이 버전은 더 이상 적극적으로 지원되지 않음 false Optional: {}
accountIds string array 설정하면 이 버전은 주어진 ID를 가진 계정만 사용 가능 Optional: {}
accountPrivileges string array 설정하면 이 버전은 나열된 권한이 부여된 계정만 사용 가능 Optional: {}
remarks string 사람이 읽기 위한 일반 비고 Optional: {}
releaseNotesURL string 지정된 버전의 릴리스 노트 URL

QdrantSecretKeyRef

나타나는 곳:

필드 설명 기본값 검증
secretKeyRef SecretKeySelector qdrant 인스턴스를 구성할 데이터가 포함된 secret에 대한 SecretKeyRef Optional: {}

QdrantSecurityContext

나타나는 곳:

필드 설명 기본값 검증
user integer Qdrant 프로세스를 실행할 사용자 지정
group integer Qdrant 프로세스를 실행할 그룹 지정
fsGroup integer Qdrant 프로세스를 실행할 파일 시스템 그룹 지정 Optional: {}

ReadCluster

나타나는 곳:

필드 설명 기본값 검증
id string 읽기 클러스터의 고유 식별자 지정

RebalanceStrategy

기본 유형: string

RebalanceStrategy는 클러스터 샤드를 자동 리밸런싱하는 데 사용할 전략을 지정해요.

검증:

  • Enum: [by_count by_size by_count_and_size disabled]

나타나는 곳:

필드 설명
by_count
by_size
by_count_and_size
disabled

RegionCapabilities

나타나는 곳:

필드 설명 기본값 검증
volumeSnapshot boolean Kubernetes 클러스터가 볼륨 스냅샷을 지원하는지 여부 지정 Optional: {}
volumeExpansion boolean Kubernetes 클러스터가 볼륨 확장을 지원하는지 여부 지정 Optional: {}

RegionPhase

기본 유형: string

나타나는 곳:

필드 설명
Ready
NotReady
FailedToSync

ResourceRequests

나타나는 곳:

필드 설명 기본값 검증
cpu string 각 Qdrant 노드의 CPU 요청 지정 Optional: {}
memory string 각 Qdrant 노드의 메모리 요청 지정 Optional: {}

Resources

나타나는 곳:

필드 설명 기본값 검증
cpu string 각 Qdrant 노드의 CPU 한도 지정
memory string 각 Qdrant 노드의 메모리 한도 지정
storage string 각 Qdrant 노드의 스토리지 양 지정
requests ResourceRequests 각 Qdrant 노드의 리소스 요청 지정 Optional: {}

RestoreDestination

나타나는 곳:

필드 설명 기본값 검증
name string 대상 클러스터의 이름
namespace string 대상 클러스터의 네임스페이스
create boolean true로 설정하면 지정된 이름의 새 클러스터를 생성해야 함을 나타냄.
그렇지 않으면 false로 설정하면 기존 클러스터가 지정된 상태로 복원됨
Optional: {}

RestorePhase

기본 유형: string

나타나는 곳:

필드 설명
Running
Skipped
Failed
Succeeded
Pending

RestoreSource

나타나는 곳:

필드 설명 기본값 검증
snapshotName string 복원하려는 스냅샷의 이름
namespace string 스냅샷의 네임스페이스

ScheduledSnapshotPhase

기본 유형: string

나타나는 곳:

필드 설명
Active
Disabled

Storage

나타나는 곳:

필드 설명 기본값 검증
volumeAttributesClassName string 스토리지 PVC에 사용할 VolumeAttributeClass 이름 지정 Optional: {}
volumeSnapshotClassName string 이 클러스터 백업용 VolumeSnapshot 리소스 생성 시 사용하는 VolumeSnapshotClass 지정 Optional: {}
iops integer 스토리지 PVC에 구성할 IOPS 수 정의 Optional: {}
throughput integer 스토리지 PVC의 MB/s 단위 처리량 정의 Optional: {}
additionalVolumes Volume array Qdrant Pod에 추가할 추가 볼륨 지정 Optional: {}
additionalVolumeClaimTemplates PersistentVolumeClaimTemplate array 각 Qdrant Pod에 대해 생성할 volumeClaimTemplates 지정.
이것은 operator가 생성하는 기본 스토리지·스냅샷 PVC에 추가됨
Optional: {}
additionalVolumeMounts VolumeMount array Qdrant 컨테이너에 추가할 추가 volumeMounts 지정 Optional: {}

StorageClass

나타나는 곳:

필드 설명 기본값 검증
name string 스토리지 클래스의 이름 지정
default boolean 스토리지 클래스가 기본 스토리지 클래스인지 여부 지정
provisioner string 스토리지 클래스의 provisioner 지정
allowVolumeExpansion boolean 스토리지 클래스가 볼륨 확장을 허용하는지 여부 지정
reclaimPolicy string 스토리지 클래스의 회수 정책 지정
parameters object (keys:string, values:string) 스토리지 클래스의 매개변수 지정 Optional: {}

StorageClassNames

나타나는 곳:

필드 설명 기본값 검증
db string db 볼륨용 스토리지 클래스 이름 지정 Optional: {}
snapshots string snapshots 볼륨용 스토리지 클래스 이름 지정 Optional: {}

StorageConfig

나타나는 곳:

필드 설명 기본값 검증
performance StoragePerformanceConfig 성능 구성 Optional: {}
maxCollections integer 생성이 허용된 컬렉션의 최대 수를 나타냄.
Qdrant 버전 >= 1.14.1에서 설정 가능.
생략하고 Qdrant 버전 >= 1.15.0이면 기본값 1000
Minimum: 1
Optional: {}

StoragePerformanceConfig

나타나는 곳:

필드 설명 기본값 검증
optimizer_cpu_budget integer CPU 할당 수 정의.
0이면 자동 선택, CPU 크기에 따라 1개 이상의 CPU를 할당하지 않은 상태로 유지
음수이면 사용 가능한 CPU에서 이 수만큼 CPU를 뺌.
양수이면 정확히 이 수의 CPU를 사용
Optional: {}
async_scorer boolean rescoring 시 io_uring 활성화 Optional: {}

TemplateMetadata

나타나는 곳:

필드 설명 기본값 검증
name string Name은 네임스페이스 내에서 고유해야 함. 리소스 생성 시 필요하지만,
일부 리소스는 클라이언트가 적절한 이름을 자동 생성하도록 요청할 수 있음.
Name은 주로 생성 멱등성과 구성 정의를 위한 것.
업데이트할 수 없음.
추가 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names
Optional: {}
labels object (keys:string, values:string) 객체를 구성·분류(범위 지정·선택)하는 데 사용할 수 있는 문자열 키·값 맵.
복제 컨트롤러와 서비스의 셀렉터와 일치할 수 있음.
추가 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels
Optional: {}
annotations object (keys:string, values:string) Annotations는 리소스에 저장된 비정형 키 값 맵으로,
외부 도구가 임의 메타데이터를 저장·검색하기 위해 설정할 수 있음.
쿼리할 수 없으며 객체 수정 시 보존되어야 함.
추가 정보: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations
Optional: {}

TraefikConfig

나타나는 곳:

필드 설명 기본값 검증
allowedSourceRanges string array ingress용 허용 CIDR 소스 범위 지정 Optional: {}
entryPoints string array ingress 라우트에 사용할 traefik entry points 목록.
아무것도 설정하지 않으면 operator 구성에 설정된 entryPoints 사용

VolumeAttributesClass

나타나는 곳:

필드 설명 기본값 검증
name string 볼륨 속성 클래스의 이름 지정
driver string 볼륨 속성 클래스의 드라이버 지정
parameters object (keys:string, values:string) 볼륨 속성 클래스의 매개변수 지정 Optional: {}

VolumeSnapshotClass

나타나는 곳:

필드 설명 기본값 검증
name string 볼륨 스냅샷 클래스의 이름 지정
driver string 볼륨 스냅샷 클래스의 드라이버 지정

VolumeSnapshotInfo

나타나는 곳:

필드 설명 기본값 검증
volumeSnapshotName string 볼륨 스냅샷의 이름
volumeName string 백업된 볼륨의 이름
readyToUse boolean 볼륨 스냅샷을 사용할 준비가 되었는지 여부 표시 Optional: {}
snapshotHandle string 해당 클라우드 공급자의 볼륨 스냅샷 식별자 Optional: {}
error VolumeSnapshotError 스냅샷 생성 실패 시 오류 세부 정보 포함 Optional: {}
events KubernetesEventInfo array VolumeSnapshot과 관련된 최근 Kubernetes 이벤트
지난 30분 동안 발생한 이벤트 저장
Optional: {}

WriteCluster

나타나는 곳:

필드 설명 기본값 검증
id string 쓰기 클러스터의 고유 식별자 지정

출처: Qdrant 공식문서 - Qdrant Private Cloud API Reference

더 알아보기 (Learn more)