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)
- QdrantCloudRegion
- QdrantCloudRegionList
- QdrantCluster
- QdrantClusterList
- QdrantClusterRestore
- QdrantClusterRestoreList
- QdrantClusterScheduledSnapshot
- QdrantClusterScheduledSnapshotList
- QdrantClusterSnapshot
- QdrantClusterSnapshotList
- QdrantEntity
- QdrantEntityList
- QdrantRelease
- QdrantReleaseList
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 |
쓰기 클러스터의 고유 식별자 지정 |