Cloud Infra Architecture (AWS) 205

AWS EBS vs EFS vs Instance Store의 차이점

Instance Store 이 3개 모두 ec2와 연결이 가능하다. 특정 EC2 인스턴스 유형에 물리적 디스크가 연결되어 있는 가장 고성능 스토리지 고성능 스토리지가 필요한 애플리케이션에 사용 EC2 인스턴스 종료시 스토리지 데이터도 삭제되므로 임시 용도에 적합 EBS (Elastic Block Store) EC2 인스턴스를 시작하면 AMI가 설치되는 EBS 루트 볼륨이 생성됨 여러 개의 EBS 볼륨을 생성해서 EC2에 연결 가능 (1개의 EC2에 여러 개 EBS 연결 가능) EBS 볼륨은 동일한 가용영역에 있는 EC2에만 연결가능 (사용제약이 조금 있음) 스냅샷을 생성해서 볼륨 백업 및 새로운 볼륨 생성, 복사 가능 EFS (Elastic File System) NFS 프로토콜을 이용하는 리눅스 OS ..

EFS란? (Elastic File System)

EFS란? 리눅스 OS에서만 연결이 가능하다. (네트워크 파일 스토리지) Network File System(NFS) 프로토콜을 지원 여러 가용영역에 있는 수십~수백대의 EC2 연결 가능 EFS는 보안 그룹을 통해 인스턴스에 연결 (인,아웃바운딩 필터링 가능) EC2 이외에 Linux 방식의 온-프레미스 서버에서도 연결가능 EFS - 성능 및 스토리지 클래스 스토리지 클래스 (내려갈수록 가격 저렴) 표준 스토리지 (Standard) 3개의 가용영역에 데이터 저장, 자주 액세스 하는 파일을 저장하는데 사용 (고가용성) 표준 IA (Standard Infrequent Access) 3개의 가용영역에 데이터 저장, 자주 액세스하지 않는 파일을 저장하는데 사용 One Zone 1개의 가용영역에 데이터 저장, 자..

AWS Instance Store란?

Instance Store 블록 수준의 임시 스토리지 특정 인스턴스 유형은 Instance Store라고 하는 스토리지를 가지고 있음 이는 서버에 직접 장착되어 있는 물리적 SSD 또는 HDD스토리지 (서버에 직접 장착되어있는 실체 있는거) IOPS 성능이 매우 높은 고성능 스토리지 임시이므로 인스턴스를 중지하거나 최대 절전모드로 전환하거나 종료하면 모든 스토리지 블록이 리셋 임시 파일을 보관하는 가장 빠른 성능의 저장 옵션 EC2 인스턴스가 종료되면 데이터가 삭제되므로 영구적인 저장소가 아닌 고성능을 요구하는 앱의 임시 저장소로 적합 수백 만개의 트랜잭션을 지원하는 I/O처리량이 높은 DB의 데이터의 임시 스토리지 옵션에 사용 중요한 장기 데이터의 경우 S3, EBS, EFS등의 데이터 스토리지를 이용..

AWS EBS란? (Elastic Block Store)

EC2 인스턴스에 연결되는 가상(블록)의 스토리지이다. EC2 인스턴스 시작 시 AMI가 설치되는 EBS 루트(부트) 볼륨이 생성됨 여러 개의 EBS 볼륨을 생성하여 EC2에 추가 연결 가능 (EC2에 A-EBS(10GB) + B-EBS(5GB)) 하지만 EBS와 EC2는 동일한 가용영역에 있어야 연결이 가능하다. 스냅샷(Snapshot) 기능을 통해 EBS 볼륨 백업 가능 수명 주기 관리자 (Data Life Cycle Manager) 정책을 통해 스냅샷 생성 일정을 자동화 가능 AWS Key Management Service (KMS)를 이용해 EBS 볼륨 암호화 가능 EBS 볼륨 유형 볼륨 유형에 따라 제공되는 키기 및 IOPS, 최대 처리량이 다름 부트 볼륨은 범용 SSD, 프로비저닝 된 SSD만..

AWS EC2 Auto Scaling 만들기 및 실습(2)

ASG 크기 변경해보기 (자동조정) 예약된 작업 원하는 요일, 원하는 날짜에 따라 (트래픽이 증가할 날 예를들어 연말, 게임 이벤트 등등) 조정할 수 있다. 선택한 날이 되었을 때, 트래픽이 적으면 최소치로 EC2를 낮추고 (원하는건 2개니까 2개로) 트래픽이 많으면 최대 EC2를 5대까지 생성할 수 있다. 예측 크기 조정 정책 CPU사용량, 네트워크 사용량 등등 어느정도 넘어갈 경우를 목표치를 정해놓는다. 넘어갈 경우 수집된 데이터(기록된 데이터)들을 머신러닝하여 자동적으로 늘리거나 줄이는 역할을 해준다. 동적 크기 조정 정책 [단계 크기 조정]과 [단순 크기 조정]은 CloudWatch 경보를 통해 작업을 진행한다. 즉, CloudWatch가 트리거가 되어 용량 단위 (개수) 혹은 현재의 퍼센트지 (..

AWS EC2 Auto Scaling 만들기 및 실습(1)

EC2 Auto Scaling이란? EC2 인스턴스를 자동으로 확장하고 축소하는 기능 사용자가 정의한 조정 정책에 따라 인스턴스 수가 늘어나거나 줄어든다. 서버의 로드가 증가하면 EC2 인스턴스 개수가 추가 됨 서버의 로드가 감소하면 EC2 인스턴스 개수 줄어 듬 이 경우 원하는 사용량은 3대지만 사용량이 줄면 최소 2개까지, 사용량이 증가하면 대 7대까지 자유자제로 늘었다, 줄었다 하는 것이 오토스케일링이다. EC2 Auto Scaling 구성요소 1. Auto Scaling Group EC2의 인스턴스의 그룹 2. 시작 템플릿 (런치 템플릿) EC2 서버를 시작하기 위한 AMI, 인스턴스 유형 정보를 가진 템플릿 3. 조정 옵션 (조정 정책) Auto Scaling을 실행하기 위한 조건 EC2 Aut..

AWS Network Load Balancer(NLB)란? 실습

NLB 특징은? TCP, UDP, TLS 요청을 로드 벨런싱 해야 하는 경우 사용 고도의 성능이 요구되거나 대기 시간이 낮아야 하는 앱에 적합 게임 등의 수백만의 동시 사용자 처리에 적합 (게임회사들) NLB의 경우는 고정 IP 주소 할당 가능 (ALB는 불가능) 클라이언트 IP 주소를 전달이 가능하다 (Source IP Preservation) => NLB를 통해 클라이언트 IP를 가져옴 ALB 처럼 리스너 규칙 설정이 따로 필요 없다. 리스너 프로토콜은 TCP, TCP/UDP, UDP, TLS를 사용할 수 있음 데이터 전송 보안을 위한 TLS 프로토콜 사용시 SSL/TLS 인증서를 배포해야 함 인증서는 ACM 사용 또는 클라이언트 인증서를 사용 가능 생성 실습 미리 설정한 TG - NLB 대상그룹(연..

AWS Application Load Balancer(ALB)란? 실습

ALB 특징 HTTP/HTTPS 요청을 로드 밸런싱 해야 하는 경우 사용 Web 앱 처리에 적합 (당연히 HTTP이므로) 리스너 규칙을 기반으로 라우팅 설정이 가능함 데이터 전송 보안을 위한 HTTPS 프롵오콜 사용시 SSL/TLS 인증서를 배포해야 함 인증서는 ACM (AWS Certificate Manger)사용 또는 클라이언트 인증서 사용 가능 Listener 규칙 조건을 걸어준다. (ex) 크롬 등 HTTP로 80포트로 들어오면 if 조건에 따라 그에 맞는 Target Group으로 라우팅 (트래픽전달) 한다. Host Header : 각 요청의 호스트 이름을 기반으로 라우팅 (ex) aaa.example.com 접속시 이와 연결된 Target Group으로 연결해줌) Path : 요청의 URL의..

AWS Target Group이란? 실습

대상 유형(Target Type) 1. 인스턴스 EC2 인스턴스 EC2 Auto Scaling Groups 2. IP 주소 Local VPC CIDR (Private IP대역) Public IP 주소 온프레미스에서도 가능 3, Lambda 4.Auto Scaling Group Protocols 선택 종류 ALB => HTTP, HTTPS NLB => TCP, TLS, UDP, TCP_UDP GWLB => GENEVE 상태 검사 (Health Checks) EC2가 서로 살아있는지 죽었는지 확인해야할 필요가 있는데 이것을 상태 검사로 진행 등록된 Target에게 상태 확인 메시지를 보내서 대상의 상태를 확인 속성 (Attributes) - HTTP/HTTPS 등록 취소 지연 (Deregistration d..

로드벨런서(Elastic Load Balancer)란?

Load Balancer 개요 트래픽을 분산하는 서비스 각 EC2 서버는 이중화되어 있으면 고 가용성도 신경쓸 수 있음 클라이언트가 로드벨러서가 없으면 각각의 개별 서버로 접속한다. 동일한 서버로 접속할 경우 트래픽이 과부화 될 수 있는데 ELB를 통해 해결한다. 각각의 클라이언트, 서버, SQL은 등등 ELB에 연결되어 사용된다. EC2 인스턴스, 컨테이너, IP 주소 등 여러 대상으로 자동으로 분산 가능 만일 맨위 EC2 서버를 사용하다가 장애가 발생하면 (비정상 대상) 트래픽 라우팅을 중단하고 다시 빈 EC2 서버로 다시 라우팅 ELB 종류 1. Application Load Balancer Application단에서 작동하므로 Layer 7 계층에서 작동한다. Layer7이기 때문에 주로 HTTP..