AWS EC2

김명주·2025년 2월 13일
0

EC2

EC2는 AWS에서 제공하는 가장 인기 있는 서비스다.
EC2sms Elastic Compute Cloud의 약자로, AWS에서 제공하는 IaaS에 해당한다.
EC2는 하나의 서비스가 아니라 많은 서비스를 포함하고 있다.

  • 가상 머신 임대(EC2 인스턴스)
  • 데이터를 가상 장치에 저장(EBS)
  • 서버 부하 분산(ELB)
  • 서비스 확장(AGS)

AWS EC2를 아는 것은 클라우드 작동 방식을 이해할 때 필수적이다. 왜냐하면 클라우드는 언제든지 컴퓨팅을 대여할 수 있고 EC2가 바로 그 예시이기 때문이다.

EC2 인스턴스 옵션

운영체제의 경우 리눅스, 윈도우, 맥 Os로 총 세 가지 옵션이 있다.
가상 머신에 사용할 컴퓨팅 성능과 코어의 양도 선택할 수 있고(CPU의 개수) 그리고 랜덤 액세스 메모리(RAM)의 양, 용량도 선택할 수 있다.
용량의 경우, 네트워크를 통해 연결할 스토리지가 필요한지(EBS, EFS), 하드웨어에 연결할지(EC2 Instance Store) 여부도 결정할 수 있다.
EC2 인스턴스에 연결할 네트워크의 종류도 선택할 수 있다. 속도가 빠른 네트워크를 원하는지, 공용 IP 주소를 원하는지 등등..
보안을 위해 방화벽 규칙을 선택할 수 있고 인스턴스를 구성하기 위한 부트스트랩 스크립트도 있다.

사용자는 많은 옵션들 중 원하는 옵션을 가진 가상 머신을 선택하여 AWS에서 빌릴 수 있다.

EC2 User Data

사용자는 EC2 User Data Script(사용자 데이터 스크립트)를 사용해서 인스턴스를 부트스트래핑 할 수 있다.
부트스트래핑이란, 머신이 작동될 때 명령을 시작하는 것을 말한다. 스크립트는 처음 시작할 때 한 번만 실행되고 다시 실행되지 않는다.
참고로, EC2 사용자 데이터 스크립트는 루트 계정에서 실행된다. 따라서 모든 명령문은 sudo로 실행된다.

EC2 User Data의 목적

EC2 User Data의 목적은 특정 작업을 자동화하기 위해 사용된다.
EC2 User Data는 부팅 작업을 자동화하기 때문에 부트스트래핑이라는 이름을 갖게 된다.
그렇다면 우리가 인스턴스를 부팅할 때 자동화하고 싶은 작업이 무엇이 있을까?
업데이트, 소프트웨어 설치, 인터넷에서 파일을 다운로드 등등 사용자가 원하는 것이라면 무엇이든 가능하다.
단, 사용자 데이터 스크립트에 작업을 추가할수록 부팅 시 인스턴스가 할 일이 늘어난다.

profile
개발자를 향해 달리는 사람

0개의 댓글