IT/클라우드 / / 2022. 9. 25.

Amazon S3 알아보기

포스팅 목차

    Amazon S3 - Buckets

    • Amazon S3는 객체를 저장을 위한 서비스
    • 파일이 bucket 또는 디렉토리에 있고 각 bucket은 전역적으로 고유한 이름을 갖는다.
    • bucket은 region 수준에서 정의된다
    • Namining Convention
      • 대문자 포함 안됨
      • 밑줄 안됨
      • 3~63 캐릭터 길이
      • IP 주소 안됨
      • 소문자 또는 숫자로 시작 할 것

     

    Amazon S3 - Object

    • S3 버킷에서 객체를 만든다
    • 객체는 파일로 Key를 가진다.
      • Key는 파일의 전체 경로이다 (bucket 뒤에 있는 경로)
        • s3://my-bucket/file.txt
        • s3://my-bucket/dir/file.txt
    • Key는 prefix + object name의 조합이다.
      • s3://my-bucket/dir/my_file.txt
    • 버킷 내에는 디렉토리 개념이 없이 Key 이름이 길어진다.
    • Key는 단지 “/”를 포함한 긴 이름이다.
    • 객체의 값은 Conent body의 내용이다
      • 최대 5TB(5000GB)의 사이즈로 매우 크다
      • 한번에 5GB 이상 없로드 할수 없기 때문에 multi-part upload를 사용해야 한다.
    • Metadata : 각 객체에 대한 key pair 리스트 (시스템이나 사용자 메타데이터에 사용)
    • Tags : 객체나 수명 주기 정책 관련 보안이 없는 경우에 매우 유용한 key/value pair와 태그를 가질 수 있다.
    • Version ID : versioning이 enabled 일 경우

     

    Amazon S3 - Versioning

    • Amazon S3 안에 파일을 version 관리할 수 있다.
    • bucket 레벨에서 enabled 되어야 한다.
    • 같은 Key로 파일 버전을 다시 업로드 하면 기존 파일을 덮어쓰는 게 아니라 해당 파일의 새로운 버전을 생성한다.
    • 모든 파일 버전을 어느 정도 유지하면 원치 않는 삭제로 부터 보호 받을 수 있다. 원하는 이전 버전으로 복원할수 있기 때문이다.
    • 버저닝을 활성화 하기 전에 버전 관리 되지 않는 파일은 null 버전이 된다.
    • 버저닝을 활성화 했다가 중단하면 이번 버전을 삭제 하는게 아니라 이후의 파일이 버전 할당을 받지 못하도록 한다.

     

     

     

    Amazon S3 - Block Public Access 버킷 설정

    • 객체가 public 화되는 것을 차단하는 설정.
    • 계정에 제한이 있을 경우 사용됨.
    • 아래와 같은 방식이 승인되는 경우 객체와 버킷이 외부로 공개되지 않도록 차단할 수 있게 된다. (퍼블릭 엑세스 차단 설정 4가지)
      • new access control lists (ACLs) - 새 엑세스 제어 목록
      • any access control lists (ACLs) - 모든 엑세스 제어 목록
      • new public bucket or access point policies - 새 퍼블릭 또는 엑세스 포인트 정책
    • 퍼블릭 버킷이나 액세스 포인트 정책을 통해 버킷과 객체를 향한 퍼블릭 및 교차 계정 액세스를 막을수 있다.
    • 이 설정들은 기업 데이터 유출을 막기 위해 만들어짐.
      • Amazon S3 버킷이 유출이 많았고 결국 S3는 버킷이 퍼블릭이 아니라는 사실을 알릴 수 있는 설정을 만듬
      • 따라서 버킷을 절대로 퍼블릭으로 두지 않으려면 이 설정을 켜둬야 한다.
    • account 레벨에서 설정할 수 있다.

     

    Amazon S3 - Websites

    • S3는 정적 웹사이트를 호스팅 할 수 있고 www에서 접근이 가능하도록 허용한다.
    • 웹사이트 URL도 아주 간단하다
      • .s3-website-.amazonaws.com
      • .s3-website..amazonaws.com
    • 웹사이트를 활성화 했지만 설정된 버킷 정책이 없을 때는 해당 버킷에 대한 공개 액세스가 가능하며 403 Forbidden 오류가 발생한다.

    • 네이버 블로그 공유
    • 네이버 밴드 공유
    • 페이스북 공유
    • 카카오스토리 공유