생성형 AI 활용한 클라우드&보안 전문가 양성 캠프
Amazon EC2(Elastic Compute Cloud)
- 안전하고 크기 조정이 가능한 컴퓨팅 파워를 클라우드에서 제공하는 웹 서비스
- 안정적인 확장 가능한 인프라에 온디맨드로 엑세스
- 99.99%의 가용성을 지원하는 SLA(Service Level Agreement, 서비스 수준 계약: 공급업체가 고객에게 제공하기로 약속한 서비스 수준을 명시하는 아웃소싱 및 기술 공급업체 계약)를 기반으로 몇 분 안에 용량 크기를 조정
- 보안은 AWS Nitro System에서 Amazon EC2를 기반으로 구축
가상화 및 하드웨어 기술 스택으로,
EC2와 같은 가상머신 서비스에서 물리적 하드웨어와 가상화 계층 간의 관계를 정의하는 핵심 구성 요소 중 하나
- AWS Graviton 기반 인스턴스, AmaZon EC2 스팟 인스턴스 및 AWS 절감형 플랜과 같은 유연한 옵션을 통해 성능과 비용을 최적화
AMI(Amazon Machine Image)
- https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/AMIs.html
- 인스턴스를 시작하는 데 필요한 소프트웨어 구성(운영 체제, 애플리케이션 서버, 애플리케이션)이 포함된 템플릿
- 사용자 커뮤니티 또는 AWS Marketplace에서 제공하는 AMI를 선택하거나, 자체 AMI를 선택할 수 있음
인스턴스 유형
- https://aws.amazon.com/ko/ec2/instance-types
- Amazon EC2는 다양한 사용 사례에 맞게 최적화된 다양한 인스턴스 유형을 제공합니다. 인스턴스 유형은 CPU, 메모리, 스토리지 및 네트워킹 용량의 다양한 조합으로 구성되며, 애플리케이션에 따라 적합한 리소스 조합을 선택할 수 있는 유연성을 제공합니다. 각 인스턴스 유형은 하나 이상의 인스턴스 크기를 포함하고 있으므로 목표로 하는 워크로드 요구 사항까지 리소스를 확장할 수 있습니다.
인스턴스 유형 명명 규칙
https://docs.aws.amazon.com/ec2/latest/instancetypes/instance-type-names.html
EBS(Elastic Block Store)
https://aws.amazon.com/ko/ebs/
- EBS는 EC2를 위해 설계된 사용이 쉽고 학장 가능한 고성능 블록 스토리지 서비스
- EBS 볼륨은 특정 가용 영역에 위치하며 여기에는 자동으로 복제되므로, 단일 구성 요소에 장애가 발생하더라도 안전하게 보호됨
- 모든 EBS 볼륨 유형은 안정적인 스냅샷 기능을 제공하며 높은 가용성을 제공하도록 설계
EBS 스냅샷
- https://aws.amazon.com/ko/ebs/snapshots/
- AWS EBS(Elastic Block Store) 볼륨의 백업본
- AWS 클라우드 환경에서 데이터를 안전하게 백업하고, 필요 시 신속하게 복구할 수 있도록 지원하는 기능
- 백업 관리, 데이터 복구, 리전 간 데이터 이동 등 여러 용도로 사용할 수 있어 데이터 보호와 효율적인 관리에 큰 장점을 제공
EIP(Elastic IP, 탄력적IP)
- 고정된 공인 IP 주소를 EC2 인스턴스와 같은 AWS 리소스에 할당할 수 있는 기능
- 일반적으로 IP 주소는 인스턴스를 중지하고 다시 시작할 때 변경되지만 EIP를 사용하면 항상 동일한 IP 주소를 통해 인스턴스에 접근할 수 있어 안정적으로 서비스가 가능
- 2024년 2월 1일부터, 실행 중인 인스턴스와 연결된 주소를 포함하여 모든 탄력적 IP 주소에 대해 요금이 부과
- https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html#eip-pricing
가용성 증대 방안 => 수평적 확장 + 부하 분산 => Auto Scaling + ELB
웹 서비스 환경 구성
초록색 사람 얼굴은 인터넷을 사용하려는 사람을 의미하고,
VPC는 웹사이트가 안전하게 운영되는 공간으로 생각하면 되는데 고객 전용 사설 네트워크 공간이라고 생각하면 된다
예시로는 대규모 아파트를 생각하면 되는데 위에 펜트하우스는 VPC로 생각하면 되고 다른 단지들은 AWS 클라우드 환경이라고 생각하면 되는데 펜트하우스는 함부로 출입을 못하고 독립적인것임을 생각하면 된다.
VPC 가상 프라이빗 클라우드에 약자이다.
igw로 돼어 있는 부분은 외부와 VPC로 연결 시켜주는 인터넷 게이트웨이를 말하고,
lb로 돼어있는 동그라미 부분은 컴퓨터를 두대라고 가정할때 골고루 분산을 시켜주는 역할을 한다고 생각하면 된다.
rt는 라우팅 테이블에 약자로 VPC 내에서 트래픽이 올바르게 전달되도록 정의된 라우팅 테이블이다.
AZ는 Availability Zone 의 약자로 VPC안에 각자의 방이 생성돼어 있다고 생각하면 되는데 여기서는 AZ1과 AZ3가 그 방에 해당된다.
AMI는 특별한 컴퓨터 사진 같은 것을의미하는데 예를 들어, 웹사이트를 운영하는 서버가 필요하다면, 미리 웹사이트 설정을 만들어놓고 그 설정을 컴퓨터로 복사해서 빠르게 시작할 수 있게 하는 방식으로 생각하면 된다.
EC2는 서버를 말한다.
로드 밸런서 구성
동일한 내용의 서비스를 제공하는 인스턴스 두 개가 실행되고 있음
개별 인스턴스의 주소로 접속하는 경우, 이용의 불편과 부하 집중의 문제가 발생할 수 있음
⇒ 로배러드밸런서를 이용해서 서비스될 수 있도록 수정 ⇒ 부하 분산, 서비스 편의를 제공
로드 밸런서 유형
유형 | 계층 | 주요 프로토콜 | 사용 사례 | 특징 |
Application L/B | 7계층 | HTTP/HTTPS | 웹 애플리케이션, API 서버, 마이크로서비스 | URL 기반 라우팅, WebSocket 지원, SSL 종료 |
Network L/B | 4계층 | TCP/UDP | 실시간 데이터 처리, 높은 트래픽 서비스 | 고정 IP, 높은 처리량, 낮은 지연 시간 |
Gateway L/B | 3계층 | 모든 IP 기반 | 네트워크 보안, 트래픽 분석 | 보안 애플리케이션에 유리한 트래픽 라우팅 |
개별 인스턴스의 IP 주소 접근을 확인
현재는 사용자가 로드밸런서를 이용하지 않고 개별 인스턴스로 직접 접근하는 것도 가능
⇒ 모든 요청을 로드밸런서를 통해서 처리하도록 제한
⇒ 개별 인스턴스에 로드밸런서로부터 오는 HTTP(80)만 허용하도록 수정 ⇒ 보안 그룹(Security Group)
위에 해당하는 사진을 보면 로드 밸런서를 통해서 인스턴스로 접근하게 설정이 돼어있는 그림이다
아마존에는 모니터링 기능이 있다
Amazon SNS(Simple Notification Service)
https://docs.aws.amazon.com/ko_kr/sns/latest/dg/welcome.html
애플리케이션 간(A2A) 또는 애플리케이션과 사용자 간(A2P) 통신을 위한 완전 관리형 메시징 서비스
모니터링을 설정하게 되면 메일로 부하 발생을 알린다던가
오토 스케일링(Auto Scaling)
애플리케이션의 로드(부하)를 처리할 수 있도록 EC2 인스턴스를 자동으로 증가 또는 감소시켜주는 서비스
오토 스케일링되어 졌을때도 알림이 간다
이상 오늘의 공부 끝