반응형
EC2(AmazonElastic Compute Cloud
- 크기조정이 가능한 컴퓨팅 용량
- 인스턴스패밀리와 SIZE를 선택하여 런칭할 수 있다.
- 인스턴스 패밀리란 고객의 워크로드에대해 컴퓨팅타입을 분류한 것으로서 범용, 컴퓨팅 최적화, 메모리최적화, 가속화된 컴퓨팅, 스토리지 최적화 등 기능이있습니다.
- Size는 Small(2코어 CPU,4GB Memory), Medium(4코어 CPU, 8GB Memory) 등과 같은 픽스된 형태로 컴퓨팅 스팩을 제공한다.
- 즉, 이 말은 우리가 원하는 컴퓨터의 유형과 사이즈를 선택하여 할당받을수 있다는 것을 말한다.
- EC2인스턴스가 운용되는 중에도 원하는 유형과 사이즈로 언제든 변경이 가능하다.
- 컴퓨팅 리소스 완전제어
- 사용자는 기존 온프레미스(자체서버)에서 했던 작업을 그대로 구현하고 컴퓨팅 리소스에 대한 완전한 제어를 할수있다.
- AWS에서 검증된 컴퓨팅 환경에서 실행 할 수있다.
- 새로운 서버 인스턴스 확보 및 부팅 시간 단축
- 새로운 서버인스턴스를 확보하고 부팅하는 시간을 단축할 수있다.
- 또한 컴퓨팅 요구사항과 변화에 따라 신속하게 용량을 조절함으로서 비용을 단축 할 수있다.
- EC2는 장애발생시 복원력이 뛰어난 애플리케이션을 구축하고 혹여 생긴 장애 상황에서 애플리케이션을 격리할 수 있는 툴을 제공한다.
가상머신과 물리적 서버의 비교
EC2는 기존 온프레미스 서버로 해결하기 어려운 문제를 해결 할 수 있다.
- 데이터 기반 의사결정
- AWS는 서버, 데이터베이스, 스토리지와 상위애플리케이션 구성요소를 빠른시간에 인스턴스화 가능하다.
- 물리서버는 트래픽과 부하의 변화에 따라 탄력적으로 반응 할 수 없기 떄문에 오버프로비저닝을 하게되었다. 이는 컴퓨팅 자원의 효율성이 낮다는 것을 의미한다.
- 가상머신을 활용하게 된다면 리소스를 효율적으로 사용가능한데 EC2가 가상머신이다.
- AWS에서는 EC2가 일회용 리소스로 취급하여서 EC2인스턴스를 프로비저닝하고 EC2인스턴스에 데이터를 저장하지 않는다.
- 빠른반복
- 모든 정보를 외부에 저장하여서 인스턴스를 일종의 Stateless하게 관리가 가능하다. (EC2인스턴스는 기능만 하게됨 ⇒ 인프라를 탄력적으로 확장하고 축소가 가능하다.)
- EC2 인스턴스의 부하를 CloudeWatch라는 모니터링 서비스로 모니터링하고 데이터를 기반으로 인스턴스를 확인하여 Scale Up,Down하거나 Scale Out,In 하도록 결정 가능하다.
- 자유로운 실수
- EC2는 자유로운 실수를 해야하는데 서버에 추가적으로 어떠한 리소스를 깔기위해 새로운 서버를 구축할 필요없이 리소스를 On / OFF 하기만 하면 된다.
- 이렇게 AWS는 신기술 도입과 아키텍쳐 변경등 새로운 시도를 마음껏 할 수있다.
EC2는 Amazon Machine Image 즉 , AMI를 기준으로 인스턴스화 되는데
AMI란 운영체제, 애플리케이션 서버, 애플리케이션과 같은 필요한 소프트웨어 밒 AMI 시작권한 그리고 시작 될떄 인스턴스에 연결할 볼륨을 지정하는 블록디바이스맵핑 등이 구성된 템플릿입니다.
EC2이점
- 탄력성
- 필요한 인프라 용량을 추정할 필요가없다.
- 애플리케이션을 개발할 때 용량을 추정하게되면 비싼 리소스를 구입하여 한정된 용량으로 작업하게 되는데 클라우드 컴퓨팅을통해 필요한만큼 확장 축소하기만 하면되기때문이다.
- 제어
- EC2는 언제든 중단 시작 재시작등 제어가 쉽고 필요시 관리의 오버헤드없이 유형과 사이즈를 바꿀 수있다.
- 통합
- EC2의경우 ELB나 S3, RDS와 같이 다양한 AWS서비스와 통합 될 수 있다.
- 우리가 원하는 아키텍처를 쉽게 구현하고 다른 서비스를 편하게 이용할 수 있다.
- 안정성
- EC2는 99.99%가용성을 제공하고있다.
- EC2를 사용하는 중 발생하는 이벤트 시간을 최소화하고있다.
- 보안
- AWS라는 큰 기업에서 제공하는 여러단계의 보안을 하고있으며
- VPC내에서 동작하기 때문에 컴퓨팅 리소스에 계층적인 보안을 적용하여서 더욱 안전하게 사용할 수 있다.
- 비용절감
- EC2는 사용되어질때 비용을 자유롭게 조절가능하다.
- 오토 스케일링을 활용하여 트래픽이 몰리는 시간에 요청을 처리할 수 있는 충분한 자원을 제공하면서 필요하지않을때 해당자원을 중단하여 탄력적으로 관리가 가능하다.
- 용이성
- AWS는 Mangaement Console, CLI, SDK와 같이 추상화 방법을 제공하고있어서 사용하기 용이하다.
위에서 말했던 인스턴스 패밀리와 이에따른 사용 사례들로 알맞은 컴퓨팅을 선택하는 것이 비용절감과 효율적인 사용에서 중요합니다.
인스턴스 패밀리
- 범용 : A1,T3,T3a,T2,M6g, M5
- 트래픽이 적은 웹사이트와 웹 애플리케이션
- 소형 데이터베이스 및 중형 데이터베이스
- 가장 일반적으로 사용되고 균형잡힌 인스턴스의 성능이 필요할 때 사용된다.
- 컴퓨팅 최적화 : C5 ,C5n, C4
- 고성능 웹서버
- 동영상인코딩
- 컴퓨팅의 성능을 집약적으로 제공하여서 고성능의 CPU를 제공한다.
- 메모리 최적화 : R5, R5n, X1e, X1, z1d
- 고성능 데이터베이스
- 분산 메모리 캐시
- 이름과 같이 대규모의 메모리를 제공한다.
- 스토리지 최적화 : I3, I3en, D2, H1
- 데이터 웨어하우징
- 로그 또는 데이터 처리 애플리케이션
- 처리량에 강점을 가지고있다.
- 액셀러레이티드 컴퓨팅 : P3, P2, Inf1, G4, G3, F1
- 3D시각화
- 기계학습(머신러닝)
- GPU 성능이 필요할때 사용된다.
기본적으로 인스턴스를 선택할때는 범용인스턴스를 선택하여 애플리케이션을 실행하여 모니터링한 이후 해당 목적에 맞는 패밀리를 선택하면됩니다.
이렇게 AWS 온라인 컨퍼런스를 통해 알게된 EC2에관한 대략적인 내용을 먼저 정리하였습니다.
AWS에는 엄청나게 많은 것을 지원하고있지만 그중 핵심이되는 것을 조금더 정리하여 추후에 게시할 예정입니다. AWS 사이트에 가보시면 온라인 교육을 여러가지로 실시하고있어서 시간을 내신다면 충분히 공부하실 수 있을거라고 생각합니다.
반응형
'AWS > 웹서비스' 카테고리의 다른 글
Spring 프로젝트 AWS EC2이용해서 배포하기(완) (3) | 2021.07.15 |
---|---|
Ubuntu 에서 톰켓과 아파치 연결 (2) | 2021.07.15 |
Ubuntu Spring 웹 서비스 환경 구축하기 (0) | 2021.07.15 |
AWS EC2 가상 웹서버 윈도우에서 접속하는법 (0) | 2021.07.15 |
AWS EC2 인스턴스 생성 (0) | 2021.05.30 |