Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- FastAPI
- EC2
- intervals
- ansible
- asyncio
- POD
- docker
- event loop
- Django
- terraform
- EKS
- K8S
- Kubernetes
- IAM
- ebs
- asgi
- WSGI
- IAC
- Deployment
- 쿠버네티스
- kernel
- github
- 자바스크립트
- leetcode
- elasticsearch
- Python
- YAML
- AWS
- dockerfile
- Service
Archives
- Today
- Total
궁금한게 많은 개발자 노트
[ AWS ] Storage Service 본문
AWS Storage관련해서 좋은 글이 있어서 읽으며 공부도 할 겸 정리를 해보려 합니다.
https://aws.amazon.com/ko/products/storage/
AWS Storage 종류는 크게 3가지로 나눌 수 있으며 S3(Simple Sotrage Service), EBS(Elastic Block Storage), EFS(Elastic File System)로 나눌 수 있습니다.
※ AWS 공식 문서 발췌
AWS에서 스토리지는 객체, 블록, 파일이라는 3가지 형태로 제공됩니다.
객체 스토리지 는 모든 인터넷 위치에서 사용자가 생성한 콘텐츠, 활성 아카이브, 서버리스 컴퓨팅, 빅 데이터 스토리지 또는 백업 및 복구를 위한 데이터에 액세스할 수 있게 하는 확장 가능하고 내구성이 뛰어난 플랫폼을 제공합니다. Amazon Simple Storage Service(Amazon S3)는 업계 최고의 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스입니다. Amazon S3는 99.999999999%의 내구성을 제공하도록 설계되었으며 전 세계 회사를 위한 수백만 개의 애플리케이션에 대한 데이터를 저장합니다.
블록 스토리지는 DAS(Direct-Attached Storage) 또는 SAN(Storage Area Network)과 유사한 고가용성의 일관적이며 지연 시간이 짧은 블록 스토리지를 각 가상 호스트에 제공합니다. Amazon Elastic Block Store(Amazon EBS)는 EC2 인스턴스에서 영구 스토리지에 액세스할 수 있어야 하는 워크로드를 위해 설계되었으며, 적절한 스토리지 용량, 성능 및 비용으로 애플리케이션을 튜닝하는 데 도움이 됩니다.
파일 스토리지 를 사용하면 여러 시스템에서 공유 파일 시스템에 액세스할 수 있습니다. Amazon Elastic File System(EFS)과 같은 파일 스토리지 솔루션은 대용량 콘텐츠 리포지토리, 개발 환경, 미디어 스토어 또는 사용자 홈 디렉터리와 같은 사용 사례에 적합합니다. Amazon FSx를 사용하면 주요 파일 시스템을 비용 효율적으로 손쉽게 시작하고 실행할 수 있으므로, 널리 사용되는 오픈 소스 및 상용 라이선스 파일 시스템의 풍부한 기능 세트와 빠른 성능을 활용할 수 있습니다.
Amazon Simple Storage Service(S3)
- Object 스토리지 서비스
※ Object의 단순한 구조로 읽기 속도가 빠르다는 점과 높은 확장성, 저렴한 비용의 장점
- 파일 스토리지처럼 폴더 구조는 갖지 않고 객체 키로 데이터를 고유하게 식별해 데이터의 입출력과 관리를 수행.
- 많은 Client가 동시에 사용할 수 있지만 HTTPS를 통한 API를 이용하므로 전송 속도가 빠르지 않음.
- 확장성과 내구성, 저렴한 비용이라는 큰 장점을 가지고 있어 AWS의 다른 서비스와 연계해서 사용하는 경우가 많음.
- CRR(Cross Region Replications) 지원으로 해외 리전에 데이터를 복사하는 기능을 이용하여 데이터의 내구성을 더욱 높일 수 있음.
Amazon Elastic Block Store(EBS)
- Block 스토리지 서비스
※ 파일 저장 시, 변경 필요한 데이터의 블록만 업데이트 하므로 낮은 I/O latency
※ 파일 변경 시 수정된 부분: Orange Color
- EC2 인스턴스 생성 시, 기본적으로 하나의 EBS가 연결되며 추가 연결 가능.
- 매우 빠르지만 하나의 EC2 인스턴스에만 연결할 수 있음.
- 가상 하드 디스크 드라이브로 추상화하여 사용.
- 단일 AZ에 배치되는 대신, Snapshot이라는 백업 기능을 지원. Snapshot에는 Snapshot을 만들 당시 EBS에 보존하고 있던 모든 정보가 백업.
※ Snapshot 보존에는 S3가 사용되어 저비용이면서 높은 내구성을 갖는다.
(AWS가 관리하는 S3로 사용자에게는 보이지 않음.)
Amazon Elastic File System(EFS)
- NFS 프로토콜을 이용한 스토리지 서비스
※ NFS 이용으로 고속으로 데이터 전송 가능
- S3의 느린 엑세스 속도, 여러 EC2 인스턴스가 사용 불가한 점을 보완하기 위한 서비스로 NFS 프로토콜 이용.
- 일반적인 NFS 프로토콜을 사용하기 때문에 ACL(Access Control List) 설정만 잘 돼 있다면 온프레미스 서버나 로컬 PC에서도 마운트 가능.
- 스토리지 용량이 탄력적이라 파일이 추가되고 제거됨에 따라 자동으로 증가하고 줄어듦.
- 여러 EC2 인스턴스가 함께 이용할 수 있음.
- EBS와 다르게 여러 AZ를 거쳐 복제되어 높은 가용성을 보장.
Storage Service 별 비교
Category | S3 | EBS | EFS |
Storage Type | Object | Block | Share File(Network File) |
EC2에 Mount | Unavailable | Available | Available |
Usecase | 빈번한 업데이트가 없는 파일을 저렴한 비용으로 저장하기 위해 | 단일 EC2 인스턴스에 대한 고성능 스토리지 서비스가 필요한 경우 | 자동 고성능 확장을 통해 여러 EC2 인스턴스에 대한 공유 파일 스토리지 옵션이 필요할 때마다 사용(콘텐츠 관리 시스템을 위한 파일 스토리지로 적합) ※ 공유 가능한 파일 저장소는 코드 및 미디어 파일을 저장하는 데 이상적이므로 응용 프로그램 개발에 적합. |
Write/Read Performance | Write once/Read many times | 빈번한 Read/Write | 빈번한 Read/Write |
Capacity | 객체 수나 데이터 용량 제한 없음 객체당 5TB 제약 |
용량 제한 있음. | 용량 제한 없음. 사용량에 따라 자동으로 증가하고 줄어듦. |
Durability | 데이터가 3개 이상 AZ로 복사 99.999999999%의 내구성 |
EC2가 위치하는 AZ에만 위치 | 데이터가 3개 이상 AZ로 복사 |
Cost | 싸다 옵션에 따라 더욱 저렴한 비용 |
평균 | 비싸다 |
'DevOps' 카테고리의 다른 글
[ k8s ] 쿠버네티스 네트워크 플로우 (0) | 2023.06.25 |
---|---|
[ Ansible ] Helm Chart 정리 (0) | 2023.06.23 |
[ k8s ] StatefulSet 배포 시 복수의 Persistent Volume Dynamic Provisioning (0) | 2023.06.12 |
[ k8s ] elasticsearch설치 시 vm.max_map_count값 변경 (0) | 2023.04.24 |
[ k8s ] CSI Driver가 kube-system ns에 설치되는 이유 (0) | 2023.04.23 |
Comments