[Cloud Computing] 5-2 UsingAmazon S3

채린·2023년 10월 12일
0

Basic steps to create and configure a bucket

Create a Bucket

첫번째 단계- 버킷에 이름 부여

  • 버킷이 지역 내에서 생성되더라도 이름은 전역적으로 고유해야 함(globally unique)

버킷 이름은 다음을 포함:

  • 3-63자
  • 소문자
  • 점( . )
  • 하이픈(-)
    문자 또는 숫자로 시작, 끝

버킷에 객체 저장할 때, bucket name, key, version ID의 조합으로 객체를 고유하게 식별

  • 이 unique URL로 버킷내의 객체 참조

Configure the Bucket: Choose a Region

이름을 지정한 후 버킷의 지역을 선택

  • AWS account에 현재 선택된 지역이 default
  • 가까운 지역을 선택해 latency와 costs 최소화

Configure the Bucket: Object Ownership and Access

ownership과 access controls설정해 버킷 및 개체에 access할 사용자 제어

object ownership 객체소유권

  • access control list (ACL)을 통해 제어
  • ACL: 누가 무엇과 통신할 수 있는지 말할 때 사용하는 목록
  • Default = Turn off ACL
    Block public access 공용 액세스 차단
  • AWS 계정 외부의 사용자와 애플리케이션이 사용자의 objects를 보고 사용할수있게해줌
  • (default) new buckets, access points, objects는 public access 허용X
  • However 사용자는 bucket policies, access point policies, or object permissions을 수정하여 공용 액세스를 허용

Configure the Bucket: Versioning

S3 bucket에 저장된 모든 object의 모든 버전을 보존, 검색 및 복원하기 위해 versioning 이용

  • unintended user actions과 application failures 복구 가능
  • disabled이 default, 추후 enabled가능

versioning state는 해당 버킷의 모든 개체에 적용됨

versioning을 가능하게 하면, 새 objects가 모두 버전 관리되고 unique version ID가 부여됨

버킷을 버전 활성화한 후에는 버전이 없는 상태(unversioned state)로 되돌릴 수 없다

  • 버킷에 대한 버전 지정을 일시 중단은 가능

Configure the Bucket: Tags

버킷에 태그를 추가하여 storage costs or criteria(기준) for individual projects 추적 가능
tag key는 태그 이름으로 고유해야함
tag value는 옵션이고 고유하지 않아도됨

Upload objects

버킷을 구성한 후 [버킷 작성]을 선택하면 버킷이 작성됨

버킷에 objects 업로드 가능

  • Upload button을 누르거나 버킷에 객체를 drag and drop
  • Amazon S3는 버킷당 데이터를 무제한으로 저장, single objects는 5TB미만
  • 콘솔에서 objects는 160GB로 제한됨

objects 업로드할 때, 업로드의 일부인 storage class 선택 가능

  • 기본 클래스는 S3 Standard
  • 업로드 후 콘솔에 각 개체의 저장 클래스가 표시됨
  • 언제든지 storage class 변경 가능

Upload Objects: Multipart Upload

single object를 set of parts로 올릴 때 multipart upload 이용 가능

  • 각 part은 개체의 데이터의 연속된 부분(contiguous portion)
    objects의 모든 parts가 업로드된 후, Amazon S3는 이 부분들을 조립해 object만듦

크기가 100MB가 넘으면 multipart upload 사용을 고려하라

Work with Objects

객체가 업로드되는 즉시 함께 작업 가능

  • object 복사 가능:
  • Create a copy
  • Rename an object
  • Move an object
  • Change object metadata
  • 버킷의 개체를 참조(reference)하려면 개체의 URL을 복사You can download individual objects in the console

Delete Objects

S3 버킷의 모든 objects는 스토리지 비용이 발생→더 이상 필요 없는 개체는 삭제
개체를 선택한 다음 Delete(삭제)를 선택하면 콘솔에서 개체 삭제 가능
S3 버전 관리가 실행된 버킷에서는 MFA(Multi-factor Authentication) 삭제 실행 가능

Additional Features: Lifecycle Rules

Amazon S3 lifecycle: Amazon S3가 개체 그룹에 적용하는 작업을 정의하는 규칙 집합

2가지 유형:

  • Transition actions: 개체가 on storage class에서 다른 클래스로 전환될 때 정의
  • Expiration actions: 개체가 만료(expire)되고 삭제될 때 정의

ex 버킷→management→create lifecycle rule⇒특정 기간 지나면 expire되게 할 수 있다

Additional Features: Replication Rules

복제를 통해 S3 버킷 간에 개체 자동 복사 가능
개체를 다음과 같이 복제하도록 복제 규칙 설정 가능:

  • Your AWS account
  • Another AWS account
  • A single bucket
  • Multiple buckets
  • Within same Region
  • Into a different Region

복제를 사용하면 여러 지역, 여러 스토리지 클래스 및 여러소유권의 복사본을 효율적으로 유지 관리 가능

Cross-Region and Same-Region Replication

동일한 영역 내vs여러 영역에 걸쳐서 개체를 복제할지 결정해야 함

Cross-Region Replication:

  • 서로 다른 AWS 영역의 Amazon S3 버킷 간에 object 복사
  • Use case:
    • disaster recovery(재해 복구)를 위해 훨씬 더 먼 데에 data를 저장해야 한다는 규정준수요구사항(Compliance requirements)
      - 사용자에게 지리적으로 가까운(geographically closer) 객체 복사본을 유지 관리하여 latency 최소화
      - 서로 다른 두 AWS 지역의 컴퓨팅 클러스터에 대한 운영 효율성(operational efficiency) 향상

Same-Region Replication (SRR)

  • 동일한 AWS 영역에 있는 Amazon S3 버킷 간에 개체 복사
  • Use case:
    - single location의 로그를 처리하기 위해 단일 버킷에 로그 집계
    - 동일한 데이터를 사용하는 운영 계정과 테스트 계정 간에 실시간 복제 구성
    - 여러 복사본을 별도의 AWS 계정에 저장하여 데이터 주권 관련 법규(data sovereignty laws) 준수(Abide)

Bucket Security: IAM Policy

(default) 모든 Amazon S3 resources는 비공개private

  • IAM 액세스 정책을 작성하여 다른 사용자에게 액세스 권한을 선택적으로 부여 가능

Amazon S3 및 개체에 대한 사용자, 그룹 및 역할 제어 액세스 권한을 부여 가능

ex IAM 역할을 사용하여 S3 버킷에 대한 액세스를 허용

Bucket Security: Bucket Policy

S3 버킷에 대한 액세스를 허용하는 또 다른 방법- 버킷 정책(policy) 사용

  • 정책은 JSON으로 작성됨

Bucket Security: Encryption

개체를 업로드하고 다운로드할 때,
클라이언트 측 암호화(client-side encryption)를 사용하여 데이터를 보호 가능

  • 데이터는 업로드하기 전에 암호화되며, 모든 암호화 키(encryption keys)를 보유하게 됨
  • 전송 중인 데이터와 쉬고있는 데이터에 대해

서버측 암호화(server-side encryption)도 사용 가능

  • 아마존 S3는 데이터를 업로드할 때 객체 수준에서 암호화
  • 객체를 다운로드하면 아마존 S3는 데이터를 해독

Moving Large Amounts of Data into S3

AWS에는 대용량 데이터 이동(migration)을 지원하는 서비스 기능과 서비스 제품군이 존재

  • S3 Transfer Acceleration 전송 가속
    - 수백 개의 CloudFront edge locations의 global network를 사용하여 client applications과 Amazon S3 간 거리 단축
  • AWS Snowcone
    - edge computing 및 데이터 전송을 위한 portable, rugged, and secure device
  • AWS Snowball
    - physical storage devices를 사용하여 대용량 데이터를 Amazon S3와 onsite data storage 위치 간에 인터넷보다 빠른 속도로 전송
  • AWS Snowmobile
    - 대용량 데이터를 AWS로 이동하는 데 사용되는 exabyte-scale data transfer service

Block Storage at AWS

block storage: 장치의 fixed-sized blocks으로 저장되는 데이터
AWS의 두 개의 블록 스토리지 솔루션:

  • Amazon EC2 인스턴스 저장소: EC2 인스턴스에 대한 임시 블록 레벨 저장소
  • Amazon EBS: Availability Zone과 관련된 분리 가능한(detachable) 스토리지

EBS Key Features and Benefits

Data availability가용성

  • EBS 볼륨을 생성하면 자동으로 AZ 내에서 복제

Data persistence지속성

  • EBS volume은 인스턴스의 수명과 독립적으로 유지될 수 있는 off-instance storage

Data encryption암호화

  • AES-256을 사용하는 암호화된 EBS 볼륨 생성 가능

Data security보안

  • Amazon EBS 볼륨이 포맷되지 않은 원시 블록 장치(raw, unformatted block devices)로 제공됨

Snapshots유연성

  • 서비스 중단 없이 변경 가능

Amazon EBS Volume Types

Solid state drives (SSD)

  • frequent read/write operations과 small I/O size 크기를 가진 트랜잭션 워크로드에 사용되어 보다 빠른 I/O operations per second (IOPS) (초당 I/O 작업 수행)
  • General purpose, Provisioned IOPS

Hard disk drives (HDD)

  • high throughput performance(높은 처리량 성능)을 필요로 하는 대규모 스트리밍 워크로드에 사용
  • Throughput optimized HDD, Cold HDD

Use Cases for EBS Volume Types

File Storage at AWS

file storage는 users, applications, and services가 파일 시스템의 데이터에 액세스하는 데 도움이됨
Amazon EFS: AWS Cloud 서비스 및 사내(on-premises) 리소스와 함께 사용되는 확장 가능한(scalable) 파일 시스템

Amazon EFS Key Features and Benefits

Fully managed

  • 파일 서버 또는 스토리지 관리, 하드웨어 업데이트, 소프트웨어 구성 또는 백업 수행에 대해 걱정할 필요X

Highly available and durable

  • 99.9999999999%의 내구성과 99.999%의 가용성을 위해 설계됨
  • (default) Amazon EFS는 파일 시스템에 대해 여러 AZ에 걸쳐 모든 파일 시스템 개체를 이중으로 저장

Elastic and scalable

  • 파일을 추가 및 제거할 때 스토리지 용량이 자동으로 증가 및 축소됨
  • 파일 시스템이 증가 → 처리량과 IOPS가 확장, 이때 파일 작업은 지속적으로 low latencies로 제공됨

Data encryption

  • 저장된 데이터와 이동 중인 데이터를 모두 보호하는 포괄적인(comprehensive) 암호화 솔루션

Amazon EFS Use Cases



Summary

▪ 몇 단계로 버킷을 생성하고 개체 업로드를 시작할 수 있습니다
▪ 개체를 복사, 다운로드 또는 삭제할 수 있습니다
▪ 라이프사이클 정책, 복제 규칙 및 보안 등의 추가 기능
▪ Amazon EBS는 블록 스토리지 서비스입니다
▪ 블록, 파일 및 개체는 스토리지 카테고리입니다
▪ 워크로드 기준에 따라 적절한 스토리지 선택
▪ AWS에는 선택할 수 있는 여러 스토리지 솔루션이 있습니다

0개의 댓글