아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁
네 자신의 불행을 생각하지 않게 되는 가장 좋은 방법은 일에 몰두하는 것이다. Ludwig van Beethoven
Elastic File System(EFS)
Amazon EFS(Amazon Elastic File System)은 AWS 클라우드 서비스와 온프레미스 리소스에서 사용할 수 있는 간단하고 확장 가능하며 탄력적인 완전관리형 NFS 파일 시스템을 제공합니다. 이 제품은 애플리케이션을 중단하지 않고 온디맨드 방식으로 페타바이트 규모까지 확장하도록 구촉되어 파일을 추가하고 제거할 때 자동으로 확장하고 축소하며 확장 규모에 맞게 용량을 프로비저닝 및 관리할 필요가 없습니다. -AWS-
Elastic File System
세션 관리, 소스코드 관리, 빅데이터, ML 분산처리 시 필요
NFS 기반 공유 스토리지 서비스(NFSv4)
따로 용량을 지정할 필요없이 사용한만큼 용량이 증가 <-> EBS는 미리 크기를 지정해야함.
페타 바이트 단위까지 확장 가능
몇천개의 동시 접속 유지 가능
데이터는 여러 가용면적에 나누어 분산 저장.
쓰기 후 읽기(Read After Write) 일관성
private Service: AWS 외부에서 접속 불가능
AWS 외부에서 접속하기 위해서는 VPN 혹은 Direct Connect 등으로 별도로 VPC와 연결 필요
각 가용영역에 Mount Target을 두고 각각의 가용영역에 해당 Mount Target으로 접근
linux만 사용 가능
하나의 서브넷은 하나의 가용영역태에 존재
구조
퍼포먼스 모드
General Purpose: 가장 보편적인 모드, 거의 대부분의 경우 사용 권장.
Max IO: 매우 높은 IOPS가 필요한 경우
빅데이터, 미디어 처리
Throughput 모드
bursting throughput: 낮은 throughput일 때 크레딧을 모아 높은 throughput일 때 사용
EC2 T 타입과 비슷한 개념
Provisioned Throughput: 미리지정한 만큼의 throughput을 확보한 후 사용
스토리지 클래스
EFS Standard: 3개 이상의 가용영역에 보관
EFS Standard - IA: 3개 이상의 가용영역에 보관, 조금 저렴한 비용 대신 데이터를 가져올 때 비용 발생
EFS One Zone: 하나의 가용영역에 보관 → 저장된 가용영역의 상황에 영향을 받을 수 있음.
별로 중요하지 않은 데이터 등을 보관
EFS One Zone - IA: 저장된 가용영역의 상황에 영향을 받을 수 있음. 데이터를 가져올 때 비용발생(가장 저렴)
아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁
네 자신의 불행을 생각하지 않게 되는 가장 좋은 방법은 일에 몰두하는 것이다. Ludwig van Beethoven
로드 밸런싱
스케일링 => 많은 인스턴스를 확보하고 고가용성 확보하는 서비스
Load Balancing
로드 밸런싱
모든 인스턴스를 접속하기 위해서는 IP를 다 알고 있어야 됨.
또 인스턴스가 죽고 다시 새로 생성되면 IP가 변동될 수 있음.
인스턴스 관리 비용이 엄청 큼 => 부하 분산 서비스가 필요(ELB)
통신 트래픽 알아서 분산, 부하를 분배해주는 서비스
ELB
Elastic Load Balancing은 들어오는 애플리케이션 트래픽을 Amazon EC2 인스턴스, 컨테이너, IP 주소, Lambda 함수와 같은 여러 대상에 자동으로 분산시킵니다. Elastic Load Balancing은 단일 가용 영역 또는 여러 가용영역에서 다양한 애플리케이션 부하를 처리할 수 있습니다. Elastic LoadBalancing이 제공하는 세가지 로드 밸런서는 모두 애플리케이션의 내결함성에 필요한 고가용성, 자동 확장/축소, 강력한 보안을 갖추고 있습니다. -AWS-
Elastic Load Balancer
다수의 서비스에 트래픽을 분산시켜주는 서비스
Health Check: 직접 트래픽을 발생시켜 Instance가 살아있는지 체크
Auto Scaling과 연동 가능
여러 가용영역에 분산 가능
지속적으로 IP 주소가 바뀌며 IP 고정 불가능: 항상 도메인 기반으로 사용
총 네가지 종류
Application Load Balancer
트래픽을 모니터링하여 라우팅
ex) image.sample.com -> 이미지 서버 web.sample.com -> 웹 서버로 트래픽 분산(클라이언트가 접속한 주소에 맞게)
아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁
네 자신의 불행을 생각하지 않게 되는 가장 좋은 방법은 일에 몰두하는 것이다. Ludwig van Beethoven
Scaling
instance를 늘리거나 컴퓨팅 파워를 늘리는 것.
Vertical Scale(Scale Up)
인스턴스의 성능을 높이는 것.
비용과 성능이 비례해서 올라가지 않음
Horizontal Scale(Scale Out)
규모를 늘리는 것
비용과 성능이 비례
지원하기 위한 아키텍처 및 소프트웨어를 설계해야함.
AWS의 Auto Scaling 방법
Auto Scaling
AWS Auto Scaling은 애플리케이션을 모니터링하고 용량을 자동으로 조정하여, 최대한 저렴한 비용으로 안정적이고 예측 가능한 성능을 유지합니다. AWS Auto Scaling을 사용하면 몇분만에 손쉽게 여러 서비스 전체에서 여러 리소스에 대해 애플리케이션 규모 조정을 설정 할 수 있습니다. -AWS-
Scaling을 자동화 하는 서비스.
목표
정확한 수의 EC2 인스턴스를 보유하도록 보장
그룹의 최소 인스턴스 숫자와 최대 인스턴스 숫자 설정 가능
최소 숫자 이하로 내려가지 않도록 인스턴스 숫자를 유지(인스턴스 추가)
최대 숫자 이상 늘어나지 않도록 인스턴스 숫자 유지(인스턴스 삭제)
다양한 스케일 정책 적용 가능
ex) CPU 부하에 따라 인스턴스 크기를 늘리기
가용 영역에 인스턴스가 골고루 분산될 수 있도록 인스턴스 분배 => 서비스 장애에 대비(최소화)
오토 스케일링 구성
시작 구성(launch configurations) / 시작 템플릿(launch template): 무엇을 실행시킬 것인가
EC2 타입, 사이즈
AMI
보안그룹, Key, IAM
유저 데이터
모니터링을 언제 실행시킬 것인가?: 상태 확인용
ex) CPU 점유율이 일정 퍼센트를 넘어섰을 때 추가로 실행 or 2개 이상이 필요한 스택에서 EC2 하나가 죽었을 때
CloudWatch(and/or) ELB와 연계
설정: 얼마나 어떻게 실행시킬 것인가
최대/최소 원하는 인스턴스 숫자
ELB와 연동 등.
Flow
Auto Scaling flow
특정 인스턴스가 모종의 이유로 다운이 되었을 때
Auto Scaling Group이 감지.
시작 구성에 맞는 EC2를 auto Scaling 클러스터에 띄워줌.
실습
1. 시작 템플릿을 생성해야함
1. EC2에서 시작 템플릿 클릭 후 생성
2. EC2 인스턴스를 만드는 것과 비슷하게 진행
3. 퍼블릭 IP와 실습 종료시 삭제를 권장
EC2 대시보드 -> 시작 템플릿체크 박스 선택AMI 선택
2. 오토 스케일링 그룹 설정
1. Auto Scaling 선택 후 Auto Scaling 그룹 생성
2. 시작 템플릿 선택
1. 가용영역 및 서브넷은 우리가 인스턴스를 띄울 곳
2. 태그선언 -> 모든 인스턴스에 태그가 붙어서 태그에 적용하면 모든 인스턴스에 영향
Auto Scaling 그룹 생성만들었던 시작 템플릿, 가용영역, 서브넷 선택처음 만들 인스턴스 갯수와, 최소 갯수 & 최대 갯수 선택Auto Scaling Group이 실행중Auto Scaling Group을 통해서 실행중인 인스턴스작업 기록을 통해서 확인할 수 있음
아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁
네 자신의 불행을 생각하지 않게 되는 가장 좋은 방법은 일에 몰두하는 것이다. Ludwig van Beethoven
EC2 구성
하드 디스크 => EBS
랜카드 => ENR
EBS란
Amazon Elastic Block Store(EBS)는 AWS 클라우드의 Amazon EC2 인스턴스에 사용할 영구 블록 스토리지 볼륨을 제공합니다. 각 Amazon EBS 볼륨은 가용 영역내에 자동으로 복제되어 구성요소 장애로부터 보호해주고, 고 가용성 및 내구성을 제공합니다. Amazon EBS 볼륨은 워크로드 실행에 필요한 지연시간이 짧고 일관된 성능을 제공합니다. Amazon EBS를 사용하면 단 몇분내에 사용량을 많게 또는 적게 확장할 수 있으며, 프로비저닝한 부분에 대해서만 저렴한 비용을 지불합니다. -AWS-
EC2 구성
EC2 구성
EBS 소개
가상의 하드 드라이브
EC2가 종료되어도 유지 가능
EC2 EBS 관계여러개의 EBS 사용
EC2와 EBS는 분리되어있고, EC2는 컴퓨팅EBS는 데이터 저장소. 그 둘은 네트워크 통신으로 이루어짐
인스턴스 정지 후 재기동 가능
하나의 EBS를 여러 EC2 장착 가능(EBS Multi Attach)
루트 볼륨으로 사용시 EC2가 종료되면 같이 삭제 됨
단 설정을 통해 EBS만 따로 존속 가능
EC2와 같은 가용영역에 존재
총 5가지 타입을 제공
범용(General Purpose or GP3): SSD
프로비저닝된 IOPS(Provisioned IOPS or io2): SSD
쓰루풋 최적화(Throughput Optimized HDD or st1)
콜드 HDD(SC1)
마크네틱(Standard)
SSD, HDD, Magnetic(위에서부터)
Snapshot
EBS를 저장하는 효율적인 방법
특정 시간에 EBS 상태의 저장본
EBS에 사진을 찍어둔 개념
필요시 스냅샷을 통해 특정 시간의 EBS를 복구 가능
S3에 보관(S3 ⇒ Amazon에서 제공하는 파일 저장소)
증분식 저장
상태를 저장하는 것이 아닌 Action을 저장.
Action을 저장하면 데이터 용량이 적음
EBS 상태저장EBS Action 저장
AMI(Amazon Machine Image)
EC2 인스턴스를 실행하기 위해 필요한 정보를 모은 단위
OS, 아키텍쳐 타입(32bit or 64bit), 저장 공간 용량등
AMI를 사용하여 EC2를 복제하거나 다른 리전 → 계정으로 전달 가능
스냅샷을 기반으로 AMI 구성가능
구성
1개 이상의 EBS 스냅샷
인스턴스 저장 인스턴스의 경우 루트 볼륨에 대한 템플릿(운영체제, 애플리케이션 서버, 애플리 케이션)
사용 권한(어떤 AWS 어카운트가 사용할 수 있는지)
블록 디바이스 매핑(EC2 인스턴스를 위한 볼륨 정보 = EBS가 무슨 용량으로 몇개 붙는지)