이전 포스팅은 AWS에서 사용자를 추가하고 그룹 권한을 지정하는 것에 대해서 공부를 했다.
오늘은 AWS에서 가장 중요한 EC2에 대해서 공부를 해보려고 한다.
AWS EC2
EC2 란 고가용성 가상머신 서버로, 클라우드에서 EC2를 사용하는 것은 여러 동작 원리를 파악하는데 반드시 필요하다.
EC2는 기존의 가상화 기술방식의 서비스이다.
각각의 EC2는 격리되고, 고객에게 격리된 EC2 서버를 각각 제공해 줄 수 있게 된다.
EC2 인스턴스의 7가지 유형
- General Purpose
- Compute Optimized
- Memory Optimized
- Accelerated computing
- Storage Optimized
- Instance Features
- Measuring Instance Performance
위와 같은 7가지 유형이 있다.
C로 시작하는 인스턴스 : CPU 최적화를 다루고 대용량 연산작업 서버와 게임, 고성능 웹 서버에 적합하다.
M,R로 시작하는 인스턴스 : 메모리 최적화를 다루고 아래와 같은 사용 및 서버에 최적화 되어 있다.
● 대규모 데이터셋 처리에 적합
● 관계형 데이터베이스, 비관계형데이터베이스를 실시간으로 처리하는 서버
● 일래스틱 캐시서버
I, G, H1 시작하는 인스턴스 : 로컬 스토리지에 최적화되어 있고, 아래와 같은 경우에 사용된다.
● 대규모 데이터셋 파일저장에 적합
● 관계형 데이터베이스, 비관계형 데이터베이스
● 데이터 웨어 하우징 애플리케이션
● 분산 파일 저장에 적합
네이밍 컨벤션
m5.4xlarge의 의미
- m : 인스턴스의 클래스(범용의 인스턴스)
- 5 : 인스턴스의 세대 ( 버전? )
- 4xlarge : 인스턴스의 크기로 크기가 클수록 더 많은 cpu와 메모리를 가지므로 성능이 좋다.
보안 그룹 ( Security Group )
보안그룹은 쉽게 설명하면 EC2의 방화벽이라고 생각하면 된다.
포트번호를 통제할 수 있고, 아래와 같이 인바운드, 아웃바운드 규칙을 세울 수 있다.
인바운드 : 외부에서 EC2에 접속하는 규칙
아웃바운드 : EC2에서 외부로 나가는 규칙으로, 기본적으로 모든 포트를 아웃바운딩한다.
그리고 아래와 같은 에러도 있으니 확인을 해주면 좋다.
time out 에러(무한로딩) : 100% 보안그룹의 문제이다.
connection refused 에러 : 보안그룹은 통과했지만, 애플리케이션 레벨에서의 문제이다.
알아두면 좋은 인바운드 포트
포트번호 | 통신규약 | 내용 |
22 | SSH | 리눅스 인스턴스 접속에 사용 |
80 | HTTP | 비보안 웹서버 포트 |
443 | HTTPS | 보안 쉡서버 포트 |
21 | FTP | 파일 전송 프로토콜 |
22 | SFTP | 보안 파일 전송 프로토콜 |
3389 | RDP | 윈도우 인스턴스용 포트 |
탄력적 아이피
EC2 인스턴스를 생성할 때 랜덤한 공용 아이피(Pulbic IP)를 부여받게 된다. 그리고 인스턴스를 종료 후에 시작하게 되면, 공용 아이피는 변경된다. 이게 이해가 안될 수도 있는데, 우리는 IP를 구매하는 것이 아니라 빌리는 것이기 때문에 해당 인스턴스를 사용하지 않는다고 전달하면 해당 아이피는 나의 소유가 아니기 때문에 타인 혹은 aws에서 관리하게 된다.
그래서 탄력적 아이피(고정 아이피)를 부여받고 인스턴스의 아이피를 고정시키는 전략을 사용할 수 있어 내 홈페이지에게 아이피를 부여할 수 있다. 탄력적 아이피는 최대 5개까지 발급이 가능하고, 인스턴스와 연결(중지)하지 않고 내버려두게 되면 요금이 부여되니 주의할 필요가 있다.
탄력적 아이피의 사용은 즉, 네트워크와 보안의 일부임으로 각별히 신경써야 한다.
'Programming > AWS' 카테고리의 다른 글
[AWS] EC2 고급 기능 1 (0) | 2024.06.13 |
---|---|
[AWS] EC2로 서버 연결하기 (0) | 2024.06.13 |
[AWS] IAM 서비스 (0) | 2024.06.11 |
[AWS] AWS란? (0) | 2024.06.11 |