CKA SimA 02 MinIO 오퍼레이터, CRD 설정, Helm 설치

1 개요[ | ]

MinIO Operator 설치 및 Tenant CRD 구성 실습
  • Helm Chart를 이용하여 MinIO Operator를 네임스페이스에 설치
  • Helm 설치로 생성된 CRD를 활용하여 Tenant 리소스를 생성
  • Tenant 기능 설정 예제로 enableSFTP: true 추가

2 네임스페이스 생성[ | ]

MinIO Operator 및 Tenant 리소스를 위한 전용 네임스페이스 생성

# k create ns minio
namespace/minio created

3 Helm Chart 설치[ | ]

MinIO Operator Helm 차트를 해당 네임스페이스에 설치

# helm repo list
NAME    URL
minio   http://localhost:6000
# helm search repo minio/operator
NAME            CHART VERSION   APP VERSION     DESCRIPTION
minio/operator  6.0.4           v6.0.4          A Helm chart for MinIO Operator
# helm -n minio install minio-operator minio/operator
NAME: minio-operator
LAST DEPLOYED: ...
NAMESPACE: minio
STATUS: deployed
REVISION: 1
# helm -n minio ls
NAME            NAMESPACE   REVISION  STATUS     CHART           APP VERSION
minio-operator  minio       1         deployed   operator-6.0.4  v6.0.4

4 CRD 확인[ | ]

MinIO Operator 설치 후 생성된 CRD 목록 확인

# k get crd | grep minio
miniojobs.job.min.io
policybindings.sts.min.io
tenants.minio.min.io

Tenant CRD에서 사용 가능한 필드 목록 중 features 항목 확인

# k describe crd tenants.minio.min.io | grep -i feature -A 20
              Features:
                Properties:
                  Bucket DNS:
                    Type:  boolean
                  Domains:
                    Properties:
                      Console:
                        Type:  string
                      Minio:
                        Items:
                          Type:  string
                        Type:    array
                    Type:        object
                  Enable SFTP:
                    Type:  boolean
                Type:      object

5 Tenant 리소스 정의[ | ]

enableSFTP: true 설정을 포함하여 Tenant 리소스를 정의한 YAML 작성

# /opt/course/2/minio-tenant.yaml
apiVersion: minio.min.io/v2
kind: Tenant
metadata:
  name: tenant
  namespace: minio
  labels:
    app: minio
spec:
  features:
    bucketDNS: false
    enableSFTP: true
  image: quay.io/minio/minio:latest
  pools:
    - name: pool-0
      servers: 1
      volumesPerServer: 0
      volumeClaimTemplate:
        apiVersion: v1
        kind: PersistentVolumeClaim
        metadata: {}
        spec:
          accessModes:
            - ReadWriteOnce
          resources:
            requests:
              storage: 10Mi
          storageClassName: standard
        status: {}
  requestAutoCert: true

6 Tenant 리소스 적용[ | ]

작성한 YAML을 이용해 Tenant 리소스 생성

# k apply -f /opt/course/2/minio-tenant.yaml
tenant.minio.min.io/tenant created

Tenant 상태 확인

# k -n minio get tenant
NAME     STATE                      HEALTH   AGE
tenant   empty tenant credentials            21s

7 같이 보기[ | ]

8 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}