일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- docker
- 프로그래머스
- spring event
- 수신자 대상 다르게
- 알람 시스템
- 셀러리
- 누적합
- 완전탐색
- 코드 계약
- prg 패턴
- 카카오
- branch 전략
- 좋은 코드 나쁜 코드
- AWS
- 깊게 생각해보기
- 객체지향패러다임
- gRPC
- 쿠키
- 레디스 동시성
- piplining
- 구현
- 검색어 추천
- 트랜잭샨
- 숫자 블록
- 결제서비스
- 백준
- 디버깅
- 이분탐색
- jwt 표준
- BFS
- Today
- Total
코딩관계론
AWS - EC2 본문
EC2 (Elastic Compute Cloud)란?
EC2 (Elastic Compute Cloud)은 아마존 웹 서비스(Amazon Web Services)에서 제공하는 Infrastructure입니다..
EC2는 가상 서버 인스턴스를 제공하며, 사용자는 이를 사용하여 필요에 따라 가상 컴퓨터를 생성하고 실행할 수 있습니다. 이를 통해 사용자는 필요한 컴퓨팅 파워를 더 빠르게 확보할 수 있으며, 더 유연하게 서버 자원을 관리할 수 있습니다.
EC2의 구성요소
1. 인스턴스
EC2 (Elastic Compute Cloud)은 AWS의 클라우드 컴퓨팅 서비스 중 하나로, 가상 서버 인스턴스를 제공합니다. 사용자는 EC2를 사용하여 필요에 따라 가상 컴퓨터를 생성하고 실행할 수 있으며, 선택한 운영 체제와 소프트웨어를 설치하고 구성할 수 있습니다.
2. 로드 밸런서
로드 밸런서는 네트워크 트래픽을 여러 대의 서버 인스턴스에 분산시켜 부하 분산을 수행하는 기술입니다. 로드 밸런서는 대규모 트래픽을 처리할 수 있으며, 서버의 가용성과 성능을 향상시킬 수 있습니다. AWS에서는 여러 가지 로드 밸런서 서비스를 제공하며, 사용자는 요구 사항에 맞게 선택하여 사용할 수 있습니다.
3. EBS (Elastic Block Store)
EBS는 EC2 인스턴스와 함께 사용할 수 있는 스토리지 서비스입니다. EBS는 블록 수준에서 데이터를 읽고 쓸 수 있는 스토리지 볼륨을 제공하며, 높은 성능과 가용성을 보장합니다. EBS는 다양한 유형의 스토리지 볼륨을 제공하며, 각 유형은 다른 성능, 비용, 기능을 제공합니다.
4. ELB (Elastic Load Balancer)
ELB는 AWS에서 제공하는 로드 밸런서 서비스 중 하나입니다. ELB는 네트워크 트래픽을 여러 EC2 인스턴스에 분산시켜 부하 분산을 수행합니다. ELB는 높은 가용성과 확장성을 제공하며, HTTPS 트래픽을 보안적으로 처리할 수 있는 기능도 제공합니다.
5. ASG (Auto Scaling Group)
ASG는 AWS에서 제공하는 자동 스케일링 기능입니다. ASG를 사용하면 EC2 인스턴스 수를 자동으로 조절하여 트래픽이나 부하량의 변화에 적응할 수 있습니다. ASG는 EC2 인스턴스를 추가하거나 제거하는 등의 작업을 자동으로 수행하여 가용성과 성능을 유지하고 비용을 최적화할 수 있습니다.
EC2 인스턴스의 부트스트래핑(Bootstrapping)
EC2 인스턴스의 부트스트래핑(Bootstrapping)은 인스턴스를 처음 구성할 때 필요한 초기 작업을 자동화하는 과정입니다. 부트스트래핑은 EC2의 UserData 기능을 사용하여 구현됩니다. UserData를 이용하면 인스턴스 부팅 시 자동으로 스크립트나 명령어를 실행하여 초기 설정 작업을 수행할 수 있습니다. 부트스트래핑에는 웹 서버 설치, 패키지 업데이트, 환경 변수 설정, 서버 구성 파일 업데이트 등의 작업이 포함될 수 있습니다.
EC2 보안 그룹
EC2 보안 그룹은 인바운드(Inbound)와 아웃바운드(Outbound) 규칙을 갖춘 가상 방화벽 역할을 하며, 이를 통해 특정 포트나 프로토콜을 허용하거나 차단하여 EC2 인스턴스에 대한 보안을 제어할 수 있습니다. 이를 통해 웹 서버, 데이터베이스, 애플리케이션 등 다양한 서비스를 안전하게 제공할 수 있습니다.
인바운드 규칙은 수신되는 트래픽을 제어하며, 아웃바운드 규칙은 송신되는 트래픽을 제어합니다. 각 규칙은 프로토콜 유형(TCP, UDP, ICMP 등), 포트 범위, 출발지 IP 주소 등을 기반으로 작동합니다. 기본적으로 인바운드 트래픽은 모두 거부하고, 아웃바운드 트래픽은 모두 허용합니다.
예를 들어, 웹 서버용 EC2 인스턴스에 대한 보안그룹 규칙을 설정할 때, 인바운드 규칙으로 특정 IP에서 출발한 모든 트래픽만을 허용하고, 아웃바운드 규칙으로는 모든 트래픽을 허용할 수 있습니다. 이런 설정을 가지면 아래의 그림과 같아집니다.
또 다른 설정으로는 보안 그룹 간의 통신 규칙이 적용될 수 있습니다.
보안 그룹 간의 통신은 서로의 보안 그룹 ID를 대상으로 규칙을 설정하여 제어할 수 있습니다. 예를 들어, 보안 그룹 1에서 보안 그룹 2로의 트래픽을 허용하려면 보안 그룹 1의 인바운드 규칙에 보안 그룹 2의 ID를 추가하면 됩니다. 이렇게 설정하면 보안 그룹 1에서 보안 그룹 2로의 모든 트래픽이 보안 그룹 2의 인바운드 규칙에 따라 필터링됩니다. 보안 그룹 간에는 상호 참조가 가능하며, 이를 통해 두 보안 그룹 간의 통신을 제어할 수 있습니다.
꿀팁
프리티어면 아래의 빨간 박스처럼 프리라고 표시됩니다.
SSH 연결을 위한 pem키 파일의 모드를 0400으로 주셔야 합니다
'AWS' 카테고리의 다른 글
AWS - Elastic Load Balancer (0) | 2023.04.02 |
---|---|
AWS - 고가용성과 확장성이란? (0) | 2023.03.29 |
AWS - EBS & EFS (0) | 2023.03.27 |
AWS - IAM (0) | 2023.03.25 |
AWS - Region, AZ (Availability Zone)의 개요 (0) | 2023.03.25 |