2.5 KiB
2.5 KiB
MinIO AIStor ObjectStore
상태(2026-07-23):
- baseline ObjectStore와 인증 S3 스모크: 실제 적용 완료
- admin-oidc profile과 비공개 Console Ingress: 선언형 구현·dry-run 완료, live 적용 대기
공식 Chart를 수정하지 않고 Kustomize가 Helm을 렌더한다.
빌드 루트
- services/minio-aistor: 현재 live baseline 진입점
- services/minio-aistor/base/deployment: 공통 Helm baseline과 values
- services/minio-aistor/profiles/admin-oidc: baseline에 OIDC, Console Ingress와 추가 NetworkPolicy를 결합한 진입점
root와 profile이 같은 형제 baseline을 참조하므로 profile이 조상 root를 다시 포함하는 Kustomize 순환이 없다.
고정 원본
| 항목 | 값 |
|---|---|
| Chart 저장소 | https://helm.min.io/ |
| Chart | aistor-objectstore |
| 버전 | 1.0.16 |
| archive SHA-256 | 50ffa6a4e014cdc48566b237593baab41d039f103cdc50c1b1ac173b8d8bf71e |
검증기가 만드는 임시 Chart cache는 base/deployment/.helm/charts/aistor-objectstore-1.0.16 아래에만 존재하고 종료 시 제거한다.
baseline 계약
- namespace: object-storage
- ObjectStore: minio-aistor
- pool/server/volume: 각각 1
- 저장소: aistor-local-xfs-retain, 900Gi RWO
- S3와 Console Service: ClusterIP
- baseline Ingress, NodePort, LoadBalancer: 없음
- pvcProtection과 Retain Local PV
- 기존 root 계정: 비상용으로 유지
Standalone이므로 erasure-code 이중화와 노드 failover는 없다.
Secret 계약
baseline:
- object-storage/aistor-root-configuration: config.env
admin-oidc profile:
- object-storage/aistor-keycloak-oidc: client-id, client-secret
평문, Base64, checksum을 Git과 문서에 기록하지 않는다.
렌더와 적용
baseline 정적 렌더:
kubectl kustomize --enable-helm services/minio-aistor
admin profile 전체 정적 검증:
PLATFORM_HELM_BIN=/home/donghyeon/.local/bin/helm \
bash scripts/validate/render-admin-services.sh
admin profile 실제 적용은 private DNS, admin 인증서와 Keycloak client/group 준비 뒤 apply-admin-services.sh가 수행한다. S3 API에는 Ingress를 만들지 않는다.
현재 baseline은 Initialized/green이고 data0-minio-aistor-pool-0-0 PVC가 aistor-data-local-pv에 Bound다. S3 회귀 검사는 다음과 같다.
bash scripts/validate/aistor-s3-smoke.sh --execute