MinIO 객체 수명 주기 설정(일단위)

백엔드&인프라 추종자·2025년 11월 16일

MinIO에서 하루 단위로 만료된 파일을 자동으로 삭제하려면 객체 수명 주기 관리(Object Lifecycle Management, ILM) 기능을 사용해야 합니다.

ILM 규칙을 설정하면 객체가 생성된 후 지정된 날짜(일)가 지나면 자동으로 삭제되도록 할 수 있습니다.


📅 MinIO 객체 수명 주기 규칙 설정 (1일 만료)

MinIO의 클라이언트 도구인 mc를 사용하여 버킷에 만료 규칙을 설정할 수 있습니다.

1. mc Alias 설정 (선택 사항)

MinIO 서버에 접근하기 위한 별칭(alias)이 아직 설정되지 않았다면 먼저 설정해야 합니다.

mc alias set ALIAS_NAME YOUR_MINIO_ENDPOINT ACCESS_KEY SECRET_KEY
  • ALIAS_NAME: 원하는 별칭 이름 (예: myminio)
  • YOUR_MINIO_ENDPOINT: MinIO 서버 주소 (예: http://192.168.1.10:9000)
  • ACCESS_KEY: 접근 키
  • SECRET_KEY: 비밀 키

2. 객체 만료 규칙 추가 (하루 단위)

mc ilm rule add 명령어를 사용하여 버킷 내 객체가 **생성된 후 1일(하루)**이 지나면 만료되도록 규칙을 추가합니다.

mc ilm rule add ALIAS_NAME/BUCKET_NAME --expire-days "1"
  • ALIAS_NAME: 1단계에서 설정한 별칭 (예: myminio)
  • BUCKET_NAME: 만료 규칙을 적용할 버킷 이름 (예: tempdata)
  • --expire-days "1": 객체가 생성된 후 1일이 지나면 만료(삭제)되도록 지정합니다.

예시:

mc ilm rule add myminio/tempdata --expire-days "1"

참고: MinIO는 AWS S3와 호환되므로, 내부적으로 주기적인 스캐너를 통해 만료된 객체를 확인하고 삭제합니다. 이 스캐너의 실행 주기는 일반적으로 24시간 단위로 작동하도록 설계되어 있으므로, 객체가 만료 시점(1일)에 즉시 삭제되지 않고 24시간 이내에 삭제 처리가 될 수 있습니다.


🔍 규칙 확인

규칙이 제대로 적용되었는지 확인하려면 다음 명령어를 사용합니다.

mc ilm rule ls ALIAS_NAME/BUCKET_NAME

출력 예시:

ID | Type | Version | Tier | Date/Days | Prefix | Enabled | Tags
----------------------|------------|--------------|------------------|--------------|----------------|------------|------------------------
Expiry-Rule-1 | Expiry | Current | | 1 day(s) | | ✔ |

Date/Days 항목에 **1 day(s)**로 표시되면 하루 단위 만료 규칙이 성공적으로 설정된 것입니다.

profile
AI 답변 글을 주로 올립니다.

0개의 댓글