Bucket Manage

최신 업데이트:2025-08-18 15:54:14

버킷 관리

1. 버킷 목록 조회

WosClient.listBuckets를 사용하여 모든 버킷을 조회할 수 있습니다. 아래 예시에서는 버킷 목록을 가져오는 방법을 보여줍니다.

String endPoint = "https://your-endpoint";
String ak = "*** Provide your Access Key ***";
String sk = "*** Provide your Secret Key ***";
// WosClient 인스턴스 생성
WosClient wosClient = new WosClient(ak, sk, endPoint, regionName);

// 버킷 목록 조회
List<WosBucket> buckets = wosClient.listBuckets();
for (WosBucket bucket : buckets) {
    System.out.println("BucketName: " + bucket.getBucketName());
    System.out.println("CreationDate: " + bucket.getCreationDate());
    System.out.println("Endpoint: " + bucket.getEndpoint());
}

참고: 반환된 버킷 목록은 버킷 이름을 기준으로 사전순(lexicographical)으로 정렬됩니다.

2. 버킷 존재 여부 확인

WosClient.headBucket을 사용하여 지정한 버킷의 존재 여부를 확인할 수 있습니다. 다음은 버킷 존재여부를 확인하는 예제입니다.

String endPoint = "https://your-endpoint";
String ak = "*** Provide your Access Key ***";
String sk = "*** Provide your Secret Key ***";
// WosClient 인스턴스 생성
WosClient wosClient = new WosClient(ak, sk, endPoint, regionName);

boolean exists = wosClient.headBucket("bucketname");

라이프사이클 관리

WOS는 버킷에 대한 라이프사이클 규칙을 설정하여 저장 클래스 자동 전환 및 만료된 오브젝트 자동 삭제를 지원합니다. 이를 통해 저장 공간을 효율적으로 활용하고 버킷 관리를 최적화할 수 있습니다.

다양한 프리픽스를 가진 오브젝트 별로 여러 규칙을 정의할 수 있습니다. 각 규칙에는 다음과 같은 요소가 포함됩니다.

  • 규칙 ID(고유해야 함)
  • 오브젝트 접두사(해당 접두사와 일치하는 오브젝트만 규칙 적용)
  • 최신 오브젝트 버전에 대한 전환 정책:
    • 오브젝트 생성 후 지정한 일수 이후 지정 저장 클래스(스토리지 클래스)로 전환 또는
    • 지정한 날짜에 저장 클래스로 전환
  • 최신 오브젝트 버전에 대한 만료 정책:
    • 오브젝트 생성 후 지정한 일수에서 만료 또는
    • 정확한 만료 날짜 지정
  • 활성/비활성 플래그

1. 라이프사이클 규칙 설정

WosClient.setBucketLifecycleConfiguration을 이용해 버킷의 라이프사이클 규칙을 설정할 수 있습니다.

String endPoint = "https://your-endpoint";
String ak = "*** Provide your Access Key ***";
String sk = "*** Provide your Secret Key ***";

// WosClient 인스턴스 생성
WosClient wosClient = new WosClient(ak, sk, endPoint, regionName);

final String ruleId = "delete obsoleted files";
final String matchPrefix = "obsoleted/";

LifecycleConfiguration lifecycleConfig = new LifecycleConfiguration();
LifecycleConfiguration.Rule rule = lifecycleConfig.new Rule();
rule.setEnabled(true);
rule.setId(ruleId);
rule.setPrefix(matchPrefix);
LifecycleConfiguration.Expiration expiration = lifecycleConfig.new Expiration();
expiration.setDays(10);

rule.setExpiration(expiration);
lifecycleConfig.addRule(rule);

System.out.println("Setting bucket lifecycle\n");
HeaderResponse headerResponse = wosClient.setBucketLifecycleConfiguration(bucketName, lifecycleConfig);
System.out.println(headerResponse);

2. 라이프사이클 규칙 조회

WosClient.getBucketLifecycle을 사용하여 버킷에 설정된 라이프사이클 규칙을 조회할 수 있습니다. 다음은 라이프사이클 규칙을 조회하는 예시입니다.

String endPoint = "https://your-endpoint";
String ak = "*** Provide your Access Key ***";
String sk = "*** Provide your Secret Key ***";
// WosClient 인스턴스 생성
WosClient wosClient = new WosClient(ak, sk, endPoint, regionName);

LifecycleConfiguration config = wosClient.getBucketLifecycle("bucketname");

for (Rule rule : config.getRules()) {
    System.out.println(rule.getId());
    System.out.println(rule.getPrefix());
    for (Transition transition : rule.getTransitions()) {
        System.out.println(transition.getDays());
        System.out.println(transition.getStorageClass());
    }
    System.out.println(rule.getExpiration() != null ? rule.getExpiration().getDays() : "");
}

3. 라이프사이클 규칙 삭제

WosClient.deleteBucketLifecycle을 사용하여 버킷의 모든 라이프사이클 규칙을 삭제할 수 있습니다. 아래는 라이프사이클 규칙 삭제 예시입니다.

String endPoint = "https://your-endpoint";
String ak = "*** Provide your Access Key ***";
String sk = "*** Provide your Secret Key ***";
// WosClient 인스턴스 생성
WosClient wosClient = new WosClient(ak, sk, endPoint, regionName);

wosClient.deleteBucketLifecycle("bucketname");
이 문서의 내용이 도움이 되었습니까?
아니오
정상적으로 제출되었습니다.피드백을 주셔서 감사합니다.앞으로도 개선을 위해 노력하겠습니다.