728x90
AWS 글로벌 인프라
AWS 글로벌 인프라 빌딩 블록
- 리전
- 가장 큰 틀.
- 지리적 영역 내에서 격리되고, 물리적으로 분리된 최소 AZ로 구성된다.
- 가용영역, AZ
- AWS 리전 내 중복 전력, 네트워킹 및 연결성이 제공되는 하나 이상의 개별 데이터 센터로 구성
- 여러 개의 데이터 센터로 묶여있는 클러스터
AWS 리전 설계/디자인
- AWS 리전은 고가용서으 높은 확장성 및 높은 내결함성을 위해 복수개의 가용영역(AZ)으로 구성된다.
- 애플리케이션과 데이터는 실시간으로 서로 다른 AZ로 실시간 복제 및 배포되어 고가용성 및 내결함성을 유지한다.
AWS VPC
VPC 개요
Virtual Private Cloud
- 사용자가 정의한, 논리적으로 격리된 가성의 프라입빗 네트워크 환경
- 가상 네트워크 제어 기능
- IP 주소 범위, 서브네팅, 라우팅, 보안그룹 등
- CIDR 블록으로 VPC 크기를 지정하여 생성 - / 16~/28까지 지원
- 네트워크 설계를 할 때 필요하다.
- 설계를 잘못하면 IP충돌이 있을 수 있다.
→ 간단한 구성만으로도 AWS의 확장 가능한 인프라를 기존 데이터선테 환경과 유사하게 사용.
- VPC를 설계할 때 AZ를 어떻게 구성할지도 정하게 된다.
- VPC = 리전 레벨
- 각 리전별 Default VPC가 제공되어 쉬운 리소스를 시작 가능하다.
VPC 구성
VPC 구성 절차
- VPC 네트워크 IP 대역 정의
- 권장 대역 : RFC1918 대역
- 권장 프리픽스 : /16 (65,536 개 주소)
- 다른 VPC를 여러 개 정의할 때 IP 충돌을 조심해야 한다.
- 가용 영역 (AZ) 별 서브넷 지정
- 용도에 따른 분리
- A 서비스, B 서비스
- 여러 가용영역 배포
- 고가용성 확보
- 용도에 따른 분리
- 라우팅 테이블 생성 및 연결
- VPC 생성 - 기본 라우팅 테이블
- VPC 대역 내 라우팅
- 게이트웨이 등 외부와의 연결은 서브넷 라우팅 테이블을 만들어서 연결 후 사용한다.
- 퍼블릭 서브넷과 프라이빗 서브넷
- 퍼블릿 : 인터넷으로부터 들어올 수 있는 서브넷
- 프라이빗 : 인터넷과 통신 불가능
- 트래픽 접근 제어
액세스 제어
VPC 액세스 제어 : NACL과 보안그룹
- 보안그룹을 사용해서 IP레벨의 접근 제한을 막겠다.
- VPC에서 액세스를 제어하는 방법
- Network Access Control List(NACL)
- 서브넷 단위 방화벽
- 상태 비저장(Stateless)
- Allow, Deny 설정 가능
- 보안그룹
- 인스턴스(ENI) 단위 방화벽
- 상태 저장(Stateful)
- Allow만 설정 가능
- Network Access Control List(NACL)
운영환경을 위한 VPC 디자인
- 원하는 수준의 가용성을 달성하기 위한 중복 구성(최소 2 + 가용영역)
- 적절한 크기의 VPC 대역 확보 및 주소범위 중복 고려
- 여분의 IP대역 확보
- 모든 리전 동일 대역을 쓰는 Default VPC 보다는 Custom VPC 활용
- 보안성을 위해 인터넷 통신을 의도하지 않은 환경은 프라이빗 서브넷으로 분리
Amazon EC2 개요
Amazon Elastic Compute Cloud (Amazon EC2)
- Linux | Windows | Mac
- Arm 및 x86 아키텍처
- 범용 및 특정 워크로드 최적화
- 베어 메탈, 디스크, 네트워킹 기능
- Packaged | Custom | Community AMI
- 다양한 구매 옵션 : 온디맨드 인스턴스, 스팟 인스턴스, 예약 인스턴스(RI), 절감형 플랜(Savings Plans), 전용 호스트
Amazon EC2 인스턴스 수명 주기
- 실행중(Running)
- 인스턴스 동작 중 상태
- 과금 발생
- 정지/종료/리붓 명령으로 상태 전이 가능
- 정지됨(Stopped)
- 중지된 상태
- EBS 볼륨을 루트로 사용하는 인스턴스만 가능
- 과금 안 됨
- 시작/종료 명령으로 상태 전이 가능
- 종료됨(Terminated)
- 인스턴스가 완전히 제거된 상태
- 시작이나 정지 불가능
- 과금 안됨
Amazon EC2 인스턴스 선택
인스턴스 명명 규칙
컴퓨팅 관련 서비스
Amazon CloudWatch - 모니터링
- AWS 리소스 및 애플리케이션의 모니터링 및 관찰기능
- 로그, 지표 및 이벤트 형태로 모니터링 및 운영 데이터를 수집
- AWS 리소스, 애플리 케이션 및 서비스에 대한 통합 뷰
- 이상 동작 감지
- 경보 설정
- 로그와 지표 시각화
Storage in AWS
AWS 스토리지를 선택해야 하는 이유
- 매력적인 경제성
- 종량제
- 용량 계획 리스크 없다
- 중복성 또는 오버헤드를 프로비저닝할 필요 없다.
- 사용 편의성
- 셀프 서비스 관리
- 간단한 통합을 위한 SDK
- 무약정
- 위험 감소
- 뛰어난 내구성 및 보안
- 물리적 미디어 취급으로 인한 위험 방지
- 속도, 민첩성, 규모
- 시장 출시 기간 단축
- 인프라가 아닌 비즈니스에 집중
- 글로벌 스케일
스토리지 기초
스토리지 타입
- 블록 스토리지
- 데이터를 일정 크기의 블록으로 나누어 저장
- 호스트에서 파일 시스템을 생성
- Storage Area Network(SAN)
- 파일 스토리지
- 디렉토리 구조로 파일을 저장
- 스토리지단에서 파일 시스템을 생성
- Network Attached Storage(NAS)
- 오브젝트 스토리지
- REST 기반의 API 호출을 통해 데이터에 접근
- HTTP 프로토콜
Amazon S3
Amazon Simple Storage Service(S3)
- 무제한에 가까운 스토리지 용량과 오브젝트
- Amazon S3 기반의 데이터 레이크 구축
- S3 Intelligent-Tiering를 통한 자동화된 비용 절감
- S3 Glacier Deep Archive를 사용해 비용 효율적인 스토리지 저장
Amazon S3 관리 기능
- 구성
- S3 태깅
- S3 접두사
- S3 버전관리
- 모니터링
- CloudWatch
- CloudTrail
- S3 이벤트 알림
- S3 Inventory
- S3 Gracier 복원 알림
- S3 Storage Lens
- AWS Config
- 복제 및 계층화
- S3 라이프사이클
- Amazon S3 스토리지 클래스 분석
- S3 Intelligent - Tiering
- 리전 간 복제
- 복제 시간 제어 활성화
- 기본
- S3 이벤트 알림 + Lambda
- S3 배치 작업
- S3 오브젝트 잠금
- S3 오브젝트 Lambda
Amazon S3 Storage Len
- Amazon S3 Storage Lens는 AWS Organization에서 사용중인오브젝트 스토리지에 대한 가시성을 제공하는 분석 솔루션이다.
- 활동 지표와 대화형 대시보드를 이해, 분석 및 최적화하여 Organization, 특정 Account, Region, Bucket 등에 대한 데이터를 집계할 수 있다.
블록 스토리지
AWS 블록 스토리지 포트폴리오
- 인스턴스 스토리지
- 호스트 하드웨어에 연결된 임시 블록 수준 스토리지
- 자주 변경되거나 여러 인스턴스에 복제되는 정보를 저장하는 데 적합하다.
- Amazon EBS
- 처리량 및 트랜잭션 집약적 워크로드
- Amazon Elastic Compute Cloud(EC2) 와 함께 사용하도록 설계된 간편한 고성능 블록 스토리지 서비스
- 스냅샷
- 증분, 포인트 인 타임 복제
- 사용할 수 있는 EBS 데이터 새 볼륨 복원, 볼륨 크기 확장 또는 가용 영역 간 볼륨 이동
공유 파일 시스템
Amazon Elastic File System
- 서버리스 방식의 탄력적인 파일 스토리지
- 서버리스 및 확장 가능
- 프로비저닝, 용량 확장, 연결 및 IOPS
- AWS 컴퓨팅 서비스와 통합
- EC2 인스턴스, 컨테이너 및 서버리스 10,000개의 연결 지원
- 서버리스 및 확장 가능
- 간판하고 안정성이 높다
- 탄력성
- 사용한 용량에 대해서만 청구
- 성능 기본 제공, 용량에 따라 확장 가능
- 뛰어난 내구성과 고가용성
- 99.99% 가용성 SLA
- 탄력성
- 성능 및 비용 최적화
- 고성능
- 스토리지 클래스
- 자동 라이프사이클 기반 비용 최적화
Databases in AWS
기존 방식의 사용 Database
- 비싼 가격
- 관리의 어려움
- 징벌적 라이센스
- 잦은 감사
자체 관리 Database 및 분석 서비스의 어려움
- 하드웨어 및 소프트웨어 설치, 구성, 패치, 백업
- 성능 및 고가용성 문제
- 컴퓨터 및 스토리지를 위한 용량 계획, 클라스터 확장
- 보안 및 규정 준수
AWS의 완전 관리형 Database 서비스
목적에 맞는 Database 사용
Amazon RDS
- 관계형 DB
- 관리 용이성
- 하드웨어 준비, 소프트웨어 설치등의 관리 작업 불필요
- 가용성 및 내구성
- 다중 AZ를 통한 동기식 복제, 자동화된 백업, 스냅샷, 장애 조치
- 뛰어난 확장성
- 몇 번의 클릭만으로도 다운타임 없이 컴퓨팅 및 스토리지 확장
- 빠른 성능과 보안
- SSD 스토리지 및 성능 향상된 I/O 보장, 저장 및 전송 중 암호화 지원
Amazon Aurora
- 클라우드용으로 구축된 MySQL 및 PostgreSQL 호환 관계형 Database
- 완전 관리형
- RDS에서 관리 : 서버 프로비저닝, 소프트웨어 패치, 설정, 백업 등 자동 관리
- 성능 & 확장성
- 표준 MySQL의 5배 처리량 표준 PostgreSQL의 3배 최대 15 개의 읽기 전용 복제본 확장
- 가용성 & 내구성
- 내결함성, 자가 복구 스토리지, 3개의 AZ에 걸쳐 6개의 데이터 복사본을 S3에 지속적 백업
- 보안
- 네트워크 격리, 저장/전송 시 암호화
Amazon Aurora의 Architecture
Aurora의 운영편의성
- 최대 128TB까지 자동 스토리지 확장 - 성능에 영향을 미치지 않는다.
- Amazon S3로의 지속적인 증분 백업
- 성능에 영향을 미치지 않고 사용자 스냅샷을 즉시 생성
- 자동 재스트라이핑, 미러 복구, 핫 스팟 관리, 암호화
다양한 DB Feature 제공
AWS 데이터베이스 서비스
728x90
'Study > TIL(Today I Learned)' 카테고리의 다른 글
24.04.20 VeryBadChild (0) | 2024.04.20 |
---|---|
24.04.19 C++ (0) | 2024.04.20 |
24.04.17 서버 개발기, git readme 작성 (0) | 2024.04.17 |
24.04.16 서버 개발기 (0) | 2024.04.17 |
24.04.15 서버 개발기 (0) | 2024.04.16 |