벡터 버킷 만들기
벡터 버킷 만들기
S3 콘솔이나 AWS CLI를 사용해 벡터 버킷을 만드는 방법을 설명해요.
본문
S3 콘솔이나 AWS CLI를 사용해 벡터 버킷을 만들 수 있어요. 벡터 버킷에 저장되는 모든 데이터는 항상 저장 시(at rest) 암호화돼요. 기본적으로 벡터 버킷은 SSE-S3로 벡터 데이터를 암호화해요. 대신 AWS Key Management Service(AWS KMS) 키를 사용한 서버 측 암호화(SSE-KMS)를 쓰도록 버킷을 구성할 수도 있어요. 벡터 버킷이 만들어진 뒤에는 버킷 암호화 설정을 바꿀 수 없으므로, 보안 요구 사항과 규정 준수 요구에 맞는 암호화 방법을 신중하게 선택하는 것이 중요해요. 벡터 버킷의 보안에 대한 자세한 내용은 Data protection and encryption in S3 Vectors를 참고해 주세요.
S3 콘솔에서 만들기
- AWS Management Console에 로그인하고 Amazon S3 콘솔(https://console.aws.amazon.com/s3/)을 엽니다.
- 탐색 창에서 Vector buckets를 선택합니다.
- Create vector bucket을 선택합니다.
- Vector bucket name에 버킷 이름을 입력합니다. 버킷 이름은 명명 규칙을 따라야 해요: 버킷 이름은 3자에서 63자 사이여야 합니다. 버킷 이름에는 소문자, 숫자, 하이픈만 포함할 수 있습니다. 버킷 이름은 AWS 리전의 AWS 계정 안에서 고유해야 합니다. 벡터 버킷 명명 규칙에 대한 자세한 내용은 Vector bucket naming rules을 참고해 주세요. 중요: 버킷을 만든 뒤에는 벡터 버킷 이름을 바꿀 수 없어요.
- 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을 참고해 주세요.
- 중요: 벡터 버킷이 만들어진 뒤에는 암호화 설정을 바꿀 수 없어요. 장기 보안·규정 준수 요구에 맞게 신중하게 선택하세요.
- Tags (Optional) 아래에서 AWS Billing and Cost Management로 벡터 인덱스 비용을 추적하고 정리하는 데 쓸 태그를 키-값 쌍으로 추가할 수 있어요. Key와 Value를 입력합니다. 태그를 더 추가하려면 Add Tag를 선택합니다. 벡터 인덱스에는 최대 50개의 태그를 입력할 수 있어요. 자세한 내용은 Using tags with S3 vector buckets을 참고해 주세요.
- 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")