728x90
클라우드 서비스 복습
스토리지 서비스
블록 스토리지
- 하나의인스턴스에 연결해서 디스크 IOPS가 좋을 때 사용
- 같은 가용영역내에 있어야 함
파일 스토리지
- 공유파일의 읽고쓰기 작업을 하기 위해 쓰고, 같은 리전내에만 있으면 됨
1. 블록스토리지
- 데이터를 블록 단위의 조각으로 나누어 저장
- 데이터 입출력(IOPS)에 대한 성능이 좋아서 신속한 검색이 가능
- 네트워크상에 있는 블록 스토리지를 서버에 연결하여 활용
- 대용량 트랜잭션, 대구모 데이터 저장이 요구되는 애플리케이션 환경에 적합
Amazon EBS
- EC2 인스턴스에 사용할 수 있는 블록스토리지 볼륨 제공
- 같은 가용영역 내 인스턴스에 연결해서 사용
- 데이터에 빠르게 액세하고 장기적으로 지속해야하는 경우 EBS 사용이 적합
- EBS볼륨은 인스턴스를 AMI로 백업하는데 사용
SSD 기반 EBS볼륨
- 범용 SSD: 가격과 성능간의균형을 제공하며 대부분의 워크로드에 적합
- 프로비저닝된 IOPS SSD: 지연시간이 짧거나 처리량이 많은 워크로드에 적합, 범용 SSD보다 디스크 성능이 4배 이상 좋음
HDD 기반 EBS 볼륨
- 처리량 최적화 HDD: 자주 액세스 하는 처리량 집약적 워크로드에 적합, 저비용 HDD
- 콜드 HDD: 자주 액세스 하지 않는워크로드에 적합, 가장 저렴한 HDD
EBS 스냅샷
- 지정 시간에 스냅샷을 생성하여 데이터를 백업할 수 있음
- 가용영역 간 복제가능, 리전간 복제 가능
- EBS 스냅샷은 증분식 백업 방식이며 최초 스냅샷 생성 이후 변경 혹은 추가된 디바이스의 블록만이 저장되기 때문에 스냅샷을만드는 데 필요한 시간이 최소화되며 스토리지 비용이 절약됨
2. 파일 스토리지
- 여러 사용자나 애플리케이션이 접근하여 파일을 공유하기 위한 공유 파일 시스템으로 활용
- 리눅스 환경에서 사용할 NFS 및 윈도우 환경에서 사용할 SMB 프로토콜을 지원
- NAS에 사용되며 블록 스토리지에 비해 확장성은 뛰어나지만 데이터가 많아지면 성능이 저하
Amazon EFS
- 리전내의 여러 가용 영역에서 실행되는 EC2 인스턴스가 파일시스템에 액세스하여 공통 데이터 소스를 공유할 수 있음
- 사용하는 용량에 따라 페타바이트 규모로 자동으로 확장 및 축소가 가능하며 대규모 분석 작업및대량의 데이터 처리에 적합
- EFS는 리눅스 전용, 수천대의 EC2 인스턴스의 동시 액세스 가능
3. 객체 스토리지
- 데이터와 메타데이터를 하나의 객체 단위로 개별 저장소에 보관하며 고유 식별자(키)를 매핑하여 데이터 액세스와 검색이 용이함
- 객체 저장시 고유의 URL을 부여해 Reset API를 통한 액세스가 가능
- 사용한 만큼만 비용 지불, 뛰어난 확장성을 보유함(거의 무한대)
Amazon S3(Simple Storage Service)
- 업계 최고 수준의 확장성, 데이터 가용성, 보안 및 성능을 제공하는 서비스
- 클라우드 상에서 원하는 만큼의 다양한 유형의 데이터를 저장, 보호, 관리 가능
- 객체의 크기는 최대 5TB까지 가능하고 수정불가, 업데이트 및 삭제만 가능
- 버킷은 객체 저장을 위한 저장소로 버킷 이름은 반드시 고유(Unique)해야 함
- 버킷에 저장할 수 있는 객체 수에는 제한이 없음 따라서 무한대로 저장 가능
- 데이터 분석용 스토어, 데이터 백업 및 아카이브, 미디어 저장 및 배포, 정적 웹사이트 호스팅의 용도
정적 웹 사이트 호스팅
- DNS는 도메인 이름을 IP주소로 변환하거나 반대의 경우를 수행할 수 있도록 개발된 데이터베이스 시스템
CDN서비스
- 지리적 제약 없이 전 세계 사용자에게 빠르고 안전하게 콘텐츠를 전송할수 있는 콘텐츠 전송 기술
- 트래픽이 과도하게 증가하는 경우 성능 저하와 장애 발생 확률이 커지는 데 이를 해결하기 위해 각 지역 엣지로케이션에 캐시 서버를 분산 배치해 근접한 사용자의 요청에 원본 서버가 아닌 캐시 서버에서 콘텐츠를 전달함
데이터 암호화
- HTTP
- 80포트, 암호화를 하지 않고 데이터를 전송
- HTTPS
- 443포, 암호화를 하고 데이터 전송(SSL/TLS 암호화 방식)
데이터 이동
- 인터넷을 통해 지역적으로 떨어진 S3로 업로드 할 때 대역폭이 충분하지 않은 경우 또는 전 세계 각지에서 특정 버킷으로 정기적으로 업로드해야 하는 경우에 활용
데이터 복제
- 객체 복제 기능을사용하여 동일 리전 내 가용영역 간 혹은 교차 리전간 라이브 복제를 수행할 수 있음
- 객체 복제는 DR목적과 지연시간 단축이 목적임
데이터베이스 서비스
- DB는 데이터의 집합, DBMS는 DB를 관리하는 소프트웨어
관계형 DB
- 데이터를 고정된 엄격한 데이터 스키마에 따라 행과 열로 이루어진 테이블 형태로 저장
- SQL을 사용하여 데이터를 저장, 수정, 삭제 및 검색
- 데이터 중복을 피하기 위해 데이터들을 여러 테이블로 나누어 저장
- 데이터는 관계를 통해서 연결된 여러 테이블에 분산
비관계형 DB
- 동적인 스키마구조를 갖으며 NoSQL이라고도 함
- 다른 구조의 데이터를 같은 컬렉션에 추가할 수 있음
- 데이터 중복이 발생할수 있으나 여러 테이블을 조인할 필요가 없고 데이터 구조 변경이 용이함
AWS Database Services
Amazon RDS
Fail-over
- 장애조치를 위해 구성하는 것
- 하나의 가용영역에 DB서버(A)가 배포되어 있고 다른 가용영역에 스탠바이 DB서버(B)를 만들어 놓음
- 그 두개의 DB서버는 동기식 자동복제를 구성해서 동기화가 작동하도록 해놓음
- 이렇게 해놓으면 A서버에 문제가 생기면 B서버를 자동으로 Primary로 승격
Read replica
- 읽고 쓰는 기능(Read/Write)이 되는 서버에 부하가 걸리기 때문에 읽는 기능(Read Only)이 가능한 복제본을 만들어 놓음
AWS 실습 내용
객체 스토리지 이해
- S3 버킷 생성
- 버킷 정책 설정
- 파일 작성 및 업로드
- 정적 웹 사이트 호스팅 설정
- S3 Presigned URLs
- 버킷 버전관리
- 버킷 수명주기 정책 구성
DB 인스턴스 생성
- RDS 인스턴스 생성
- RDS 인스턴스에 접속
- MySQL 명령문 실행
728x90