minIO

minIO셋업

DanielZZI 2024. 3. 8. 10:59
728x90

minIO는 오브젝트 스토리지 매니지먼트툴이다.

aws s3와 호환이된다.

 

오브젝트스토리지 매니지의 대표적은 오픈소스로,

mlflow 와 함께 모델 버전관리에 쓰인다.

인풋데이터등 비정형데이터를 관리하기에 좋아 머신러닝에서 많이 쓰인다.

 

 

 

 

1.셋업

minio lifecycle정책을 집에서 테스트해볼일이 생겨서 간단하게 구축해보았다.

 

 

-private git repostory에 helm index가 셋업된 helm registry가 있다고 가정

-private image registry가 있다고 가정

 

 

*주의: minIO 는 2021년 5월부터 AGPL 라이센스 v3가 되었다. 네트워크에 배포시 유관 소스코드 공개 필수

 

bitnami minIO helm chart를 활용했다.

 

먼저 values.yaml위에 덮어쓸 myvalues.yaml을 만들어보자.

 

image:
  debug: true

mode: distributed

accessKey:
  password: <테스트용 액세스키>
  forcePassword: true
secretKey:
  password: <테스트용 시크릿키with base 64 encoding>
  forcePassword: true



statefulset:
  updateStrategy: RollingUpdate
  podManagementPolicy: Parallel
  replicaCount: 2
  zones: 1
  drivesPerNode: 2



service:
  type: NodePort
  port: 9000
  nodePort: 30003

 

debug true로 에러로그를 자세히볼수있도록했다.

minIO 는 erasure coding방식을 통해 데이터복구를 지원한다. 

distributed 모드로 노드당 여러 디스크에 분산/복제를 지원한다.

 

테스트환경이라 노드포트로 셋업했다.