학습목표
- AWS EC2의 개념에 대해 설명할 수 있다.
- AWS EC2 인스턴스 개요에 대해 설명할 수 있다.
- AWS EC2 인스턴스 실행과 가격 및 특징을 설명할 수 있다.
학습내용
- EC2 개요
- EC2 인스턴스 개요
- EC2 인스턴스 실행
강의에 많은 내용이 설명되긴한데, 시간 관계상인지 축약된게 많아요
그런데 PDF보면 내용이 다 정리되어 있으니 PDF 꼭 보도록 하고요,
추가로 더 많은 개념을 설명해줘야 될 것 같긴 하지만, EC2야 워낙 중요하고 앞으로도 계속 더 나오게 될테니까,
여기선 일단 걍 이정도만 보고 넘어갑시다. 나중에 아예 시험공부라 치고 더 할 때에 더 자세한 내용을 보기로 하고, 여기선 강의에 나오는 내용 + PDF 내용 정도로 정리하죵
(그리고 다음 강의에 EC2 다시 나오는데, 여기서 빠진 일부 내용이 다음 강의에서 다시 설명되니까요~ 다음 강의까지도 쭉 이어서 참고합시다!!)
그래도 일단 내가 조금 정리&보충 해보자면..
EC2 개념
EC2 = Elastic Compute Cloud (ECC → C가 2번 나와서 EC2 / 비슷하게 SSS는 S3 / 등등..)
- AWS를 비롯하여 다양한 SW들이 Elastic 하다는 특징을 내세우는 경우가 있는데,
Elastic의 단어 뜻 자체는 '신축성 있는' '탄력적인' 정도의 의미이고,
SW가 Elastic 하다는 특징을 달고 있으면, 구성 노드수를 쉽게 늘였다 줄였다 할 수 있다거나, 리소스 할당량을 쉽게 늘였다 줄였다 할 수 있다거나 등등. 탄력적으로 최종 성능을 늘였다 줄였다 할 수 있는 경우 Elastic 하다고 표현함. 그래서 피크 타임에서의 성능 부족을 걱정할 필요 없고, 널널한 시간대에 리소스가 낭비되는 일도 없게끔 사용할 수 있는 SW가 Elastic한 SW임.
그런데 AWS의 VM 서비스에 해당하는 EC2에도 Elastic하다는 수식어가 붙어있다..?
AWS 외의 클라우드 서비스들도 모두 마찬가지지만, 손쉽게 추가 VM을 생성했다가, 제거했다가 할 수 있으며, 운영 중에 시스템 사양도 증설 가능하고 (줄이는건 안됨 ㅠㅠ)
이런걸 Elastic한 특성이라 할 수 있음. 그래서 이름도 Elastic Compute Cloud.
(걍 다른데서도 Elastic이란 표현이 종종 쓰이니까 추가 정보삼아 정리함.. -ㅅ-)
- EC2는 가상 서버. 즉, VM임
→ 그러니 온프레미스 환경에서 처럼 Windows나 Linux에 붙어서 작업 가능하다는 것이고,
→ 다만 물리적인 서버는 내가 가지고 있는게 아니라, 클라우드 사업자가 가지고 있는 서버를 이용한다능..
→ 클라우드 사업자가 제공해주는 VM을, 우리가 쓰고싶은 사양대로 생성해서 (이 사양이란게 완전 맘대로는 아니고, 인스턴스 타입과 사이즈가 나뉘어 있음. 뒤에 다시 나옴. 암튼 그 제공되는 템플릿 사이즈 내에서는 맘대로) 사용하는데, 사이즈가 크면 돈이 더 나가는거고, 작으면 덜 나가는거고~~
→ 암튼 그런 원격지의 VM에 인터넷을 통해 접속하여 사용하는 개념인 것임.
→ 어찌됐든 중요한건 그래서, EC2는 가상머신 같은 것이란 점~!
→ 다만, 내 VM이 아니라 남의 VM이고, 그래서 인터넷 통해 사용하는거고, 쓰는만큼 돈이 나가는거고, 걍 서버처럼 쓸 수 있는거고 그러함
- 요약하면, EC2는 Elastic한 VM
인스턴스와 AMI
- 인스턴스 → VM 그 자체
- AMI
→ Amazon Machine Image
→ 이건 전에 마켓플레이스 상품 등록한 것 설명해줄 때 어느정도 같이 설명이 되었다고 생각되는데.
→ EC2가 온프레미스의 VM과 다른점이 있다면, OS 설치를 직접할 수가 없습니다.
→ 내 로컬의 VM이라면 가상의 ROM bios에 조차 붙을 수가 있는데.. 이를 테면 내 노트북에 깔려있는 VMware에선 부팅하면서부터 모니터에 뜨는 결과물들을 마치 로컬 서버에 모니터 붙여서 보는 것 마냥 다 볼 수 있져..
→ 그런데 EC2는 이렇게 직접 키보드/모니터 붙여놓고 작업 하는 것 처럼은 동작하지 않습니다. → 따라서 OS를 직접 설치할 수도 없고, 실수로 뭔가 날려먹었을때 싱글모드/안전모드 같은데 들어가볼 수도 없어요 ㅠㅠ 이건 단점..
→ 암튼 그런 특성이 있는 고로, OS설치를 진행하려면, EC2에 바로 설치를 진행하는 것이 아니라, 사용 가능한 내 로컬 시스템 등에서 설치하고, 그 설치된 OS를 AMI라는 이미지 형태로 싸그리 다 복사&저장해서 AWS에 올려야 됩니다. (물론 기본 OS 이미지라면, 이미 대부분의 OS가 AWS에서 제공됩니다.)
→ 이 때에 OS뿐 아니라 내가 추가로 설치하고 싶은 프로그램들이 있다면 그것들도 설치한 체로 이미지로 묶으면, 향후 그 이미지를 사용할 때엔, 해당 프로그램들이 이미 설치된 체로 배포가 됩니다.
→ 지금 은근슬쩍 AMI의 용도도 같이 설명했는데,
=> 그래서 AMI가 뭔지 다시 설명하자면, OS및 필요한 SW가 설치되어 있는 이미지. (뭐 일종의 압축파일 같은거라고 해두져!)
=> 그걸 어따 써먹냐하면, OS를 직접 설치할 수가 없으니, 인스턴스를 띄울때에 AMI라는 이미지를 통해 초기 OS등이 설치 완료된 상태로 하드 드라이브를 초기화 해주는 용도로 사용됩니다.
→ AMI는 AWS에서 기본 제공되는 것들도 있고 / 누군가 팔아먹기 위해 만들어놓은 AMI도 있고 (예를 들면 관제 툴이 설치된 AMI를 마켓플레이스에 등록해놓고, 이 이미지를 사용하면 시간당 2달러를받는다... 이런식) / 내가 쓰기 위해 AMI를 만들어서 등록해놓을 수도 있습니다.
→ 즉, 내가 우리 회사에서 쓰기 위한 용도로, 표준 구성의 MySQL, Apache, JBoss가 설치된 이미지를 하나 만들어 놓으면, 이 후에 DB/Web/WAS등이 필요해지면, 새로 설치할 필요 없이 저 이미지 가지고 VM을 하나 찍어내면 됩니다.
EC2역사
- 서울리전에서 사용 가능해진 인스턴스 유형이라는데 → 그런 역사같은건 별로 중요한게 아니고... → 인스턴스 유형이 저렇게나 다양하다는 점에 주목하며 강의 들어주세용~
EC2 인스턴스 개념
- 예) c5.large
c → 인스턴스 패밀리
5 → 인스턴스 세대
large → 인스턴스 크기
→ 이거 다음 강의에 다시 나오니까, 여기선 이런게 있더라~~ 라고만 하고 넘어갑시다.
EC2 인스턴스 스토리지
→ 이 개념은 EBS나 S3처럼 중요하게 다뤄지는 개념은 아닌데,
이 강의에선 이걸 열심히 설명해주고, 심지어 이 다음 강의에도 이게 또 나옴.
그래서 한번 정리해보자면,
→ 이건 EC2를 기동하고 있는 동안에만 임시로 사용할 수 있는 공간인데, 무조건 쓸 수 있는건 아니고, 특정 요금제의 EC2를 사용하는 경우에 포함되어 있는 스토리지 공간입니다.
→ 밑에 예시를 보면,
대부분의 경우 이렇게 EBS 전용입니다. 인스턴스 스토어란건 쓸 수 없어요. 저기 저 검은색 풍선 도움말 떠있는게 인스턴스 스토어에 대한 설명이고요~
→ 헌데 아래와 같이 일부 요금제의 경우는,
EBS 전용이 아니라, 사이즈가 표시되어 있는데, 이게 인스턴스 스토어 공간으로 사용할 수 있는 공간입니다.
→ 강의에서도, 설명에서도 계속 언급되는 것 처럼,
이 공간은 해당 EC2를 사용하고 있는 동안에만 임시로 사용할 수 있는 공간이고,
별도의 스토리지 비용은 받지 않습니다. (EC2 비용에 포함되어있는 개념임. 그래서 일부 비싼 요금제에만 제공해줌)
아무데서나 쓸 수 있는 것도 아니고, 임시성 공간인지라 활용하기가 애매함.
그래서 공부하는 입장에서든, 실제 써먹을걸 생각하는 입장에서든, EBS처럼 중요도 있게 다뤄질 내용은 아닌데, 이 강의에선 엄청 열심히 언급하고 설명해주네용.. (다음 강의에도 또 나옴)
좌우간 시험을 생각하고 공부하는 입장에선, 이런게 있다는건 잘 기억해두고 넘어가야 될 것 같습니다. 뭐 실제 써먹을 때에도 은근히 유용한 사용 팁이 될지도 모르겠고요 -ㅅ-!!
- EBS (Elastic Block Store)
→ 영구 저장용 블록 스토리지 (이건 당연한거라 대개 따로 언급되지 않는데.. 오히려 인스턴스 스토어가 임시 저장용인게 특이사항이지... -_-; 좌우간 인스턴스 스토어가 먼저 언급된 바람에 영구 저장용이란걸 특이사항처럼 남겨둬야겠네요... )
→ 블록스토리지 / 오브젝트스토리지 구분 해가며 설명할때 주구장창 설명해온 블록스토리지.
서버에 마운트해서, 파티션 나누고, 파일시스템 얹어서, 파일복사해가며 사용하는 그 제일 일반적으로 보이는 형태의 그 디스크!
→ 영구 저장용이니까, 서버 꺼놔도 데이터 잃지 않고 계속 보관됨.
다만 서버 꺼놔도 계속 저장하고 있어야 되니까, 서버 꺼놔도 스토리지 비용은 계속 나감.
→ 스냅샷 기능 제공됨 → 특정 시점으로 돌아갈 수 있음.
인스턴스 생명 주기
(여기에 나오는 내용은 다음 강의에 거의 그대로 다시 나옴.)
- 인스턴스 생명 주기란건, VM이 생성되어서 없어지기 까지의 주기를 의미.
→ PDF에 있는 예쁜 표를 참조하도록 해용...
- AMI => 생성 => 생성 대기 => 실행중(VM은 AMI로부터 출발)
- 실행중 => 중단중 => 중단됨(VM 전원 내려간 상태. 다음에 다시 재부팅 하여 사용 가능)
- 실행중 => 종료중 => 종료됨(제거됨)
- 실행중 => 최대 절전모드 (윈도에 있는 최대 절전모드랑 비슷. 프로그램들이 종료되지 않고, 그대로 시스템 전원만 내려가고, 재부팅하게 되는 경우, 사용하던 프로그램들이 그대로 떠있는 상태로 재기동 됨)
- 생명주기에서 요점
→ 인스턴스의 생성은 AMI로 부터
→ EC2를 꺼두는 방식은 크게 3가지. 중단/종료/최대 절전모드
→ EC2를 꺼두면 EC2의 비용은 나가지 않는다. → 하지만 EBS의 비용은 계속 나갈것이다.
→ 종료하면 EC2를 완전 삭제해버림
가격 옵션
- 온디맨드 → 쓰면 쓰는대로 비용이 나가는 방식. 제일 기본 형태 같은거
- 예약 인스턴스 → 하지만 특정 EC2를 아주 오래 계속 사용할 예정이라면, 1년치or3년치 비용을 미리 지불하고 할인 받아 사용할 수 있음. 3년이면 약 50%정도 할인됨. 그리고 예약 기간동안에는 EC2를 꺼둔다고 돈이 나가지 않는다는 개념이 없음. 그냥 1년 예약이면 1년동안은 키든 끄든 계속 돈 나가는 것임
- 스팟 인스턴스 → 이건 좀 매우 특이한건데... 아주 잠깐 사용하려는 EC2를 매우 저렴하게 사용 가능하다..는 것이 설명이고..
어떤식으로 동작하는 것이나면, 마감직전 비행기 빈좌석 같은거랄까..
그때 그때 AWS에서 여유로 남는 리소스를 저렴하게 푸는 경우가 있고, 그걸 순간순간 사용하는 개념임.
'오후 3~5시 사이에 시간당 1달러 이하로 사용할 수 있으면 내가 사용한다' 라는 식으로 룰을 걸어두고, 그에 맞는 조건이 뜨면 그 2시간동안에만 순간 사용할 수 있는 것임.
저런 조건 자체가 뜰수도 있고, 안뜰수도 있고, 누가 더 높은가격 불러놓은 상태일 수도 있고.. 암튼 근데 조건만 맞으면 잠깐동안 싸게 사용할 수 있음
- 전용호스팅 → VM이 아니라 물리서버 사용하는 요금제임
- 세이빙 플랜
→ 예약인스턴스랑 거의 비슷. 기간동안 약정 거는건데
→ 예약 인스턴스는 인스턴스 타입으로 약정은 거는 것이고 (이를테면 m5.large 3년)
→ 세이빙플랜은 리소스 합산으로 약정 거는 것임 EC2가 아닌 람다나 파깃같은거에도 걸 수 있음. EC2에 걸 때엔 사이즈 상관없이 인스턴스 패밀리로 걸게됨 (m5를 1년간 얼마치 쓰겠다. 라는식으로 걸고, large쪼금 쓰다가, medium 2개 쓰다가, xlarge도 쫌 쓰고 그래서 암튼 합산으로 계산됨)
EC2 특징
- 1분안에 생성되고, 즉시 삭제됨
- 쓴만큼 비용 나감
- 여러 리전, 가용영역에 걸쳐 사용 가능
- 다양한 OS 사용 가능.
- 설치된 내역을 AMI통해 재사용 가능함
Add Comment