CS 내용 요약, 지식/Google Cloud Associate

Google Cloud Associate 강의 요약: Object storage

걍판자 2025. 1. 11. 03:21
반응형

Cloud storage 특

-내용
- key-value 접근
- 서버리스, 오토스케일링으로 거의 무한대
- 부분 업데이트 불가
- 오브젝트 단위로 접근 가능해서 object storage 라고도 부름
- rest api 가능
- cli 가능 근데 gcloud 아니고 gsutil임.
- 모든 파일형식 다 됨 백업 아카이브, 텍스트, 바이너리 등
- 지연율 낮고 튼튼함.

objects and buckets

  • 버켓 이름은 url의 일부로 활용되기에 글자 제한 지켜야 하고 중복 안됨.
    • 고유 키가 있고 한개의 최대 오브젝트 사이즈는 5TB, 최소사이즈 없음
      • 기간별 설정
        • 가장 짧은기간 자주 변경되면 standard
        • 달에 한번꼴이면 nearline
        • 분기에 한번꼴이면 coldline
        • 년에 한번꼴이면 archive

업로드와 다운로드 방법

업로드/다운로드 설명
simple upload 작은 파일들, metadata 없음
multipart upload 작은 파일들, metadata 있음
resumable upload 큰 파일들, 대부분 권장됨, HTTP 요청 가짐, 오류 시 재요청
streaming transfers 사이즈 모르겠는거
parallel composite uploads 32개로 chunking해 병렬 업로드, 네트워크와 디스크 좋으면 빠름
simple download 간단
streaming download 크기 모름
sliced object download 나누어 슬라이스 해 다운로드

version

  • 삭제 방지, 히스토리 제공이라는 이점
  • 버킷 레벨에서 가능하고 온오프 가능
  • 가장 최신 버젼이 live version, live version을 삭제하면 live version에서 내려오고, live version이 아닌 걸 삭제하면 완전히 삭제됨
  • 개체번호+버젼번호로 구별됨
  • 옛날 버젼 삭제하면 비용 절감

라이프 사이클

  • 자동으로 저장소 들어있는 것의 age나 CreatedBefore, 라이브여부, 클래스, 가장 최신버젼 숫자 등으로 스토리지의 class를 바꾸거나 삭제하는 행동을 자동화할 수 있다.
  • 옮기는 건 왼쪽에서 오른쪽으로 일방향으로만 가능, 한번에 여러칸 뛰어 넘는 건 가능
-> -> -> ->
standard
multi-regional
regional
nearline coldline archieve

암호화

  • cloud storage는 항상 서버단에서 데이터를 암호화 함
  • 그 암호화 구성을 google-managed로 구글에서하는 기본값으로 한다면 굳이 별도 구성 필요 없음
  • customer-managed로 한다면 KMS를 이용하여 권한을 얻고 별도의 방법으로 암호화 할 수 있음
  • option으로 customer가 upload 하기전에 client단에서 암호화할지 선택할 수 있음. 이경우 클라이언트가 전송하는 중에도 암호화 유지되는 장점 있음

시나리오

  • Q: 100GB 넘는 큰 사이즈를 cloud storage에 더 빠르게 업로드 하고 싶어요
    A: Parllel composite uploads 사용하세요
    Q: 영구적으로 저장하며 접근안할 것 같음
    A: archive 쓰세요
    Q: 분기에 한번 정도 접근할 것 같아요
    A: Cold Line 쓰세요
    Q: 존재하는 bucket 의 storage class를 바꾸고 싶어요
    A: 1.bucket의 기본 storage class를 바꾸고, 2. 오브젝트가 들어있는 버킷을 업데이트 하세요

    명령어

    • storage는 gcloud 대신 앞에 gsutil을 쓴다.
      gsutil mb gs://BKT_NAME 클라우드 스토리지 버킷 생성
      gsutil ls -a gs://BKT_NAME 버젼 나열
      gsutil cp gs://SRC_BKT/SRC_OBJ gs://DESTN_BKT/NAME_COPY 오브젝트 복사
      -o 'GSUtil:encryption_key=ENCRYPTION_KEY' - 인자로 붙여주면 암호화 가능
      gsutil mv 이름변경하거나 이동
      gsutil rewrite -s STORAGE_CLASS gs://BKT_NAME/OBJ_PATH 오브젝트의 스토리지 클래스 변경
      gsutil cp : 오브젝트 업로드나 다운로드 local 위치와 bucket 위치 인자로 입력하면 됨 처음 입력한 곳에서 두번째 입력한 곳으로 이동
      gsutil versioning set on/off 버져닝 온오프
      gsutil uniformbucketlevelaccess set on/off 모든 객체에 동일한 엑세스 제어정책 할건지 아니면 개별 객체 따로 할건지 정함
      gsutil acl ch 특정사용자나 그룹의 버킷 엑세스 권한 관리
      gsutil iam ch MBR_TYPE:MBR_NAME:IAM_ROLE gs://BKT_NAME iam 정책 변경
      gsutil signurl -d 10m YOUR_KEY gs://BUCKET_NAME/OBJECT_PATH signedurl 생성해 인증 없이 해당 url로 접근 가능(유효기간 설정)
반응형