33/120

스토리지

데이터를 저장하는 저장소의 역할을 수행하는 요소

스토리지 유형

  • DAS(Direct attached Storage)
    직접 서버에 연결하는 저장소
  • NAS(Network Attached Storage)
    스토리지를 네트워크로 연결, 파일 기반 스토리지
  • SAN(Storage Area Network)
    별도의 스토리지용 네트워크를 구성(Fibre Channel)
    블록 기반 스토리지

스토리지 종류

파일, 블록, 오브젝트 스토리지 by RedHat

Amazon S3

Amazon Simple Storage Service

  • 확장성이 뛰어나고, 무한대로 저장 가능
  • 99.999999999(9가 11개)% 내구성 보장
  • 사용한 만큼 비용 지불
  • 리전 내에서 유일한 Bucket을 생성하여 데이터를 저장 -> 웹 url로 접근하기 때문에 리전 내에 버킷 이름은 유일해야 함
  • 저장 기능을 활용한 간단한 정적 웹 서비스 구현 가능
  • EBS와 서비스 유형이 다르게 파일 단위 접근만을 지원
  • 데이터 크기, 다운로드 용량에 따라 요금을 책정

주의점

  • S3를 사용해야 하는 경우 : 한 번 쓰고, 여러번 읽어야하는 데이터
    컨텐츠가 다양하고 데이터 양이 지속적으로 증가하는 경우
    사용자가 많고, 데이터 접근이 일시적으로 급증하는 경우
  • S3를 사용하면 안되는 경우 : 여러 번 쓰기 작업을 하는 데이터, 블록 스토리지가 필요한 경우

리전 선택

  • 데이터 주권 문제 고려
  • 사용자와 가까운 리전
  • 서비스 제공 여부
  • 리전별 서비스 비용

활용분야

  • Backup & Restore : 뛰어난 내구성 확장성, 버전관리 기능을 통헌 데이터 보호
  • Data Archiving : 요구사항에 맞는 아카이빙 방식 제공
  • Data Lake : 빅데이터 분석용 저장소로 활용
  • Hybrid Cloud Storage : AWS Storage Gateway를 통해 온프레미스 환경에서 클라우드 스토리지 활용. 데이터 백업 및 재해복구
  • Disaster Recovery : 글로벌 인프라를 활용한 데이터 보호 및 ㅌ타 리전으로 교라 리전 복제 서비스

Amazon S3 스토리지 클래스

  • Amazon S3 Standard
    짧은 시간과 많은 처리량을 제공 -> 자주 액세스하는 데이터용
    데이터 저장 암호화 및 SSL 전송 지원
  • Amazon S3 Standard-Infrequent Access(S3 Standard-IA)
    빈번하지 않은 액세스용 -> 자주 접근하지는 않지만, 빠르게 접근해야 하는 데이터에 적합 기존 S3 대비저렴
  • Amazon S3 One Zone-Infrequent Access(S3 One Zone-IA)
    단일 AZ에 데이터를 저장 -> S3 Standard-IA보다 20% 비용이 저렴
  • Amazon S3 Glacier
    데이터 보관을 위한 안전하고 안정적이며 저렴한 스토리지
    S3 Standard 대비 최고 77%저렴

amazon S3 Glacier

데이터 아카이빙 및 장기 백업을 위한 안전하고 안정적이며 비용이 매우 저렴한 클라우드 스토리지 서비스
Bucket과 유사한 Vault라는 개별 스토리지 영역 생성하여 데이터 보관

데이터 접근 방법

  1. API/SDK를 이용한 Direct 연결
  2. S3 라이프 사이클과의 통합. 오래된 데이터에 대해 Glacier로 자동 이관
  3. Third Party Tool과 AWS Storage Gateway 연동

S3의 저장 위치

버킷 : https://[버킷이름].s3.amazon.com
---
버킷-fille https://[버킷이름].s3.amazon.com/파일명
test버킷 내에 test.jpg 있다면 https://test.s3.amazon.com/test.jpg
인터넷을 통해 사용자가 접근

접근 권한

소유자버킷(비공개)user, 인터넷 사용자금지
소유자버킷(공개)user,인터넷 사용자접근가능
소유자버킷(접근정책)허가된 A user접근가능
허가되지 않은 B user금지

Amazon S3로 파일 업로드 및 삭제

  • 콘솔에서 S3 선택
  • 버킷 만들기
  • 버킷 이름 지정

    버킷 이름은 리전 내에서 유일해야 함
  • 퍼블릭 액세스 차단 설정 : 공개적인 접근 못 하도록 막아놨음 -> 전체적으로 공개하려면 해제해야함
  • 버킷 생성 확인
  • 버킷 선택 후, 업로드
  • 업로드 할 파일 추가
  • 업로드 확인
  • 파일에 접근하는 URL 확인
  • 퍼블릭 차단때문에 현재 접근 불가
  • 외부접근을 위한 퍼블릭 차단 해제
  • 버킷 정책 편집
    버킷 정책 추가 링크에서 복사
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "PublicReadGetObject",
            "Effect": "Allow",
            "Principal": "*",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::Bucket-Name/*"
            ]
        }
    ]
}

Bucket-Name 항목을 자신의 버킷 이름으로 수정

버킷을 삭제하려면 먼저 오브젝트를 삭제해야 함

사용자 생성하여 윈도우 시스템 파일 동기화

  • 동기화할 버킷 생성
  • IAM 서비스 사용
  • 사용자 추가

  • 그룹 생성후 권한 정책 부여 및 그룹에 사용자 추가
  • 사용자 만들기
  • 사용자 정보가 담긴 csv파일 다운로드

    csv 파일 필드
User namePasswordAccess key IDSecret access key Console login link
PS --- > aws --version
aws-cli/2.0.30 Python/3.7.7 Windows/10 botocore/2.0.0dev34
  • 동기화 할 폴더 및 파일 생성
PS --- > ls .\test.txt


    디렉터리: --- 


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----      2022-03-29   오후 3:31              0 test.txt
  • 사용자 연결
PS ---\Desktop\s3test > aws configure
AWS Access Key ID [None]: csv파일에 있는 값
AWS Secret Access Key [None]: csv파일에 있는 값
Default region name [None]: 버킷이 있는 리전
Default output format [None]: json
  • 버킷과 동기화
PS ---\Desktop\s3test > aws s3 sync .\ s3://ken-desktop-backup
upload: .\test.txt to s3://ken-desktop-backup/test.txt

인스턴스 이미지화, 백업

  • 이미지화 할 인스턴스 선택 후 이미지 생성
  • 생성된 이미지 확인
  • 선택 후 실행

좋은 웹페이지 즐겨찾기