벡터 버킷 만들기

벡터 버킷 만들기

S3 콘솔이나 AWS CLI를 사용해 벡터 버킷을 만드는 방법을 설명해요.

출처: Creating a vector bucket

본문

S3 콘솔이나 AWS CLI를 사용해 벡터 버킷을 만들 수 있어요. 벡터 버킷에 저장되는 모든 데이터는 항상 저장 시(at rest) 암호화돼요. 기본적으로 벡터 버킷은 SSE-S3로 벡터 데이터를 암호화해요. 대신 AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)를 쓰도록 버킷을 구성할 수도 있어요. 벡터 버킷이 만들어진 뒤에는 버킷 암호화 설정을 바꿀 수 없으므로, 보안 요구 사항과 규정 준수 요구에 맞는 암호화 방법을 신중하게 선택하는 것이 중요해요. 벡터 버킷의 보안에 대한 자세한 내용은 Data protection and encryption in S3 Vectors를 참고해 주세요.

S3 콘솔에서 만들기

  1. AWS Management Console에 로그인하고 Amazon S3 콘솔(https://console.aws.amazon.com/s3/)을 엽니다.
  2. 탐색 창에서 Vector buckets를 선택합니다.
  3. Create vector bucket을 선택합니다.
  4. Vector bucket name에 버킷 이름을 입력합니다. 버킷 이름은 명명 규칙을 따라야 해요: 버킷 이름은 3자에서 63자 사이여야 합니다. 버킷 이름에는 소문자, 숫자, 하이픈만 포함할 수 있습니다. 버킷 이름은 AWS 리전의 AWS 계정 안에서 고유해야 합니다. 벡터 버킷 명명 규칙에 대한 자세한 내용은 Vector bucket naming rules을 참고해 주세요. 중요: 버킷을 만든 뒤에는 벡터 버킷 이름을 바꿀 수 없어요.
  5. Encryption에서 다음 옵션 중 하나를 선택합니다.
    • Don't specify encryption type – Amazon S3가 새 벡터의 기본 암호화 수준으로 Amazon S3 관리형 키를 사용한 서버 측 암호화(SSE-S3)를 자동 적용해요. 추가 구성이 필요 없는 가장 간단한 설정이 필요할 때 선택하세요.
    • Specify encryption type – 특정 암호화 방법을 선택합니다.
      • Server-side encryption with Amazon S3 managed keys (SSE-S3) – SSE-S3 사용을 명시적으로 선택합니다. Amazon S3가 벡터 데이터를 저장소에 쓸 때 암호화하고 접근할 때 복호화합니다. AWS가 모든 암호화 키를 자동 관리합니다.
      • Server-side encryption with AWS Key Management Service keys (SSE-KMS) – AWS KMS의 고객 관리형 키(CMK)를 사용해 암호화 키, 키 회전, 접근 정책을 더 잘 제어할 수 있습니다. SSE-KMS를 선택하면 추가 옵션이 생겨요.
        • Choose from your AWS KMS keys – 계정의 기존 고객 관리형 키를 선택합니다.
        • Enter AWS KMS key ARN – KMS 키의 전체 ARN을 지정합니다(필수 형식).
        • Create a KMS key – AWS KMS 콘솔을 열어 새 고객 관리형 키를 만듭니다.
        • KMS 키 요구 사항: KMS 키는 벡터 버킷과 같은 리전에 있어야 합니다. 전체 KMS 키 ARN을 지정해야 합니다(키 ID와 별칭은 지원되지 않아요). S3 Vectors 서비스 프린시펄(indexing.s3vectors.amazonaws.com)에게 키 사용을 위한 kms:Decrypt 권한을 부여해야 합니다.
    • AWS KMS 키 정책 예시에 대한 자세한 내용은 Data protection and encryption in S3 Vectors를, 암호화 옵션과 KMS 키 설정에 대한 자세한 내용은 Using SSE-KMS encryption을 참고해 주세요.
    • 중요: 벡터 버킷이 만들어진 뒤에는 암호화 설정을 바꿀 수 없어요. 장기 보안·규정 준수 요구에 맞게 신중하게 선택하세요.
  6. Tags (Optional) 아래에서 AWS Billing and Cost Management로 벡터 인덱스 비용을 추적하고 정리하는 데 쓸 태그를 키-값 쌍으로 추가할 수 있어요. Key와 Value를 입력합니다. 태그를 더 추가하려면 Add Tag를 선택합니다. 벡터 인덱스에는 최대 50개의 태그를 입력할 수 있어요. 자세한 내용은 Using tags with S3 vector buckets을 참고해 주세요.
  7. Create vector bucket을 선택합니다.

만든 뒤에는 확인 메시지가 표시돼요. 새 벡터 버킷이 벡터 버킷 목록에 나타나며, 버킷 안에 벡터 인덱스를 만들 준비가 됩니다.

다음 명령으로 SSE-S3 암호화를 사용하는 벡터 버킷을 만들 수 있어요. 이 예시를 사용하려면 사용자 입력 플레이스홀더를 여러분의 정보로 바꿔 넣으세요.

aws s3vectors create-vector-bucket \
   --vector-bucket-name "amzn-s3-demo-vector-bucket"

고객 관리형 KMS 키로 SSE-KMS 암호화를 사용하는 벡터 버킷을 만들려면:

aws s3vectors create-vector-bucket \
   --vector-bucket-name "amzn-s3-demo-vector-bucket" \
   --encryption-configuration '{"sseType": "aws:kms", "kmsKeyArn": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"}'

AWS SDK (Python/boto3)

import boto3

# Create a S3 Vectors client in the AWS Region of your choice. 
s3vectors = boto3.client("s3vectors", region_name="us-west-2")

#Create a vector bucket
s3vectors.create_vector_bucket(vectorBucketName="media-embeddings")

더 알아보기 (Learn more)