aws EC2란?
서버를 구축할 때 사용되는 aws에서 빌려주는 가상의 서버 컴퓨터, 어플리케이션을 사용하거나 호스팅할 때 사용한다.
즉 열심히 만든 프로젝트를 편리하게 배포하게 되는 환경이 바로 이 EC2
오토스케일링, Elastic Load Balancer, CloudWatch 등의 다른 AWS 서비스와 연동 가능하다.
EC2의 구성
EC2의 구성은 다음의 4가지로 설명할 수 있다.
- 인스턴스 : 가상 서버 하드웨어
- EBS : 가상 하드 디스크
- AMI : EC2 인스턴스 실행을 위한 정보를 담은 이미지
- 보안 그룹 : 가상의 방화
EC2 연결 전 준비(인바운드 규칙 편집)
EC2를 연결하기에 앞서 aws에서 제공하는 EC2 연결 방법중 가장 편리한 Instance Connect 방법을 활용하기 위해 aws의 서울 리젼 ip대역을 허용하도록 인바운드 규칙을 편집한다.
2023.10.21 - [aws] - [aws] EC2 Instance connect 사용시 인바운드 규칙 ssh ip 설정
[aws] EC2 Instance connect 사용시 인바운드 규칙 ssh ip 설정
인바운드 규칙은 접속을 허용하는 규칙을 정리한 것으로 내가 ssh연결로 instance에 연결하고자 한다면 당연히 내 ip만 허용하는 것이 보안 상 유리하다. 하지만 인바운드 규칙을 위와같은 이유로
paralleldev.tistory.com
포스팅 내용에 이어서 http 포트를 열어야 배포 테스트를 할 수 있으므로, 내 ip에서 http 규칙을 허용하도록 허용하자, EC2 서비스의 네트워크 및 보안 탭에서 보안 그룹을 선택하고, 현재 내 EC2에 적용되는 보안 그룹의 인바운드 규칙을 아래와 같이 편집한다.

사진의 아래 두개의 인바운드 규칙만 확인해보면 됨.
EC2 서버 배포 테스트
EC2 인스턴스에 연결한 후 간단한 배포를 위해 필요한 프로그램을 설치한다.
슈퍼 유저 권한으로 쉘 실행
[ec2-user@ip-ip~]$ sudo -s
httpd 설치
[root@ip-ip ec2-user]# yum install httpd
httpd란 Apache HTTP 서버의 패키지 이름으로, 간단하게 테스트하는데 사용할 것이다.
설치완료되면
service httpd start
내 인스턴스에 부여된 IP를 타고 들어가면 아래처럼 귀여운 걸 볼 수 있다.

EC2 인스턴스에 연결해서 서버가 열리는 맛을 봤으니까,
돈내기싫으면 인스턴스를 종료하자, 인스턴스를 종료하면 물론 나중에 다시 인스턴스를 연결하고싶다면 다시 시작해야한다.
인스턴스를 종료하는 대신 중지 후 재시작 하는 방식으로 인스턴스를 살려두겠다고하면 틀린 방법은 아니지만, EC2가 실행되는 환경에 대한 부분을 담당하는 EBS는 계속해서 사용된다. 그러면 EBS 사용 용량이 잡혀서 요금이 청구될 수가 있다.
사실 free tier에게 부여된 ebs 스토리지 용량은 30기가바이트로, 인스턴스 하나당 8gb의 용량을 잡아먹을 것을 생각해보면 사실 인스턴스 한개 종료 안 한 것쯤은 문제가 안되지만 그래도 혹시 모르니까 종료했다.
참고로 요금에 관해서..
aws→aws 트래픽과 local → aws 트래픽에대해서는 요금을 물지 않고,
AWS → Local 트래픽에 대해서만 요금을 부과한다.
EC2 인스턴스의 유형
나는 현재 freetier t2.micro EC2 인스턴스를 사용하고 있는데, t가 나의 현재 인스턴스 타입이고, 여러가지 종류가 있다.
저렴한 웹서버용 t, 앱 서버용 m 머신러닝용 p 등등.. 20개정도 있는데, 지금 단계에서 중요한 건 아닌듯..
EC2 동작 구성
- Instance 컴퓨팅 : 프로세싱하는 cpu
- EBS 하드디스크 : 하드 드라이브
- ENI 랜카드 : 네트워크 담당
위의 3개가 잘 맞물려서 일을하며 동작하는 방식인데, 아까 EBS에 대해서 EC2가 실행되는 환경에 대한 부분을 담당한다고 했다.
EBS에 대해서 알아보도록하자.
aws EC2란?
서버를 구축할 때 사용되는 aws에서 빌려주는 가상의 서버 컴퓨터, 어플리케이션을 사용하거나 호스팅할 때 사용한다.
즉 열심히 만든 프로젝트를 편리하게 배포하게 되는 환경이 바로 이 EC2
오토스케일링, Elastic Load Balancer, CloudWatch 등의 다른 AWS 서비스와 연동 가능하다.
EC2의 구성
EC2의 구성은 다음의 4가지로 설명할 수 있다.
- 인스턴스 : 가상 서버 하드웨어
- EBS : 가상 하드 디스크
- AMI : EC2 인스턴스 실행을 위한 정보를 담은 이미지
- 보안 그룹 : 가상의 방화
EC2 연결 전 준비(인바운드 규칙 편집)
EC2를 연결하기에 앞서 aws에서 제공하는 EC2 연결 방법중 가장 편리한 Instance Connect 방법을 활용하기 위해 aws의 서울 리젼 ip대역을 허용하도록 인바운드 규칙을 편집한다.
2023.10.21 - [aws] - [aws] EC2 Instance connect 사용시 인바운드 규칙 ssh ip 설정
[aws] EC2 Instance connect 사용시 인바운드 규칙 ssh ip 설정
인바운드 규칙은 접속을 허용하는 규칙을 정리한 것으로 내가 ssh연결로 instance에 연결하고자 한다면 당연히 내 ip만 허용하는 것이 보안 상 유리하다. 하지만 인바운드 규칙을 위와같은 이유로
paralleldev.tistory.com
포스팅 내용에 이어서 http 포트를 열어야 배포 테스트를 할 수 있으므로, 내 ip에서 http 규칙을 허용하도록 허용하자, EC2 서비스의 네트워크 및 보안 탭에서 보안 그룹을 선택하고, 현재 내 EC2에 적용되는 보안 그룹의 인바운드 규칙을 아래와 같이 편집한다.

사진의 아래 두개의 인바운드 규칙만 확인해보면 됨.
EC2 서버 배포 테스트
EC2 인스턴스에 연결한 후 간단한 배포를 위해 필요한 프로그램을 설치한다.
슈퍼 유저 권한으로 쉘 실행
[ec2-user@ip-ip~]$ sudo -s
httpd 설치
[root@ip-ip ec2-user]# yum install httpd
httpd란 Apache HTTP 서버의 패키지 이름으로, 간단하게 테스트하는데 사용할 것이다.
설치완료되면
service httpd start
내 인스턴스에 부여된 IP를 타고 들어가면 아래처럼 귀여운 걸 볼 수 있다.

EC2 인스턴스에 연결해서 서버가 열리는 맛을 봤으니까,
돈내기싫으면 인스턴스를 종료하자, 인스턴스를 종료하면 물론 나중에 다시 인스턴스를 연결하고싶다면 다시 시작해야한다.
인스턴스를 종료하는 대신 중지 후 재시작 하는 방식으로 인스턴스를 살려두겠다고하면 틀린 방법은 아니지만, EC2가 실행되는 환경에 대한 부분을 담당하는 EBS는 계속해서 사용된다. 그러면 EBS 사용 용량이 잡혀서 요금이 청구될 수가 있다.
사실 free tier에게 부여된 ebs 스토리지 용량은 30기가바이트로, 인스턴스 하나당 8gb의 용량을 잡아먹을 것을 생각해보면 사실 인스턴스 한개 종료 안 한 것쯤은 문제가 안되지만 그래도 혹시 모르니까 종료했다.
참고로 요금에 관해서..
aws→aws 트래픽과 local → aws 트래픽에대해서는 요금을 물지 않고,
AWS → Local 트래픽에 대해서만 요금을 부과한다.
EC2 인스턴스의 유형
나는 현재 freetier t2.micro EC2 인스턴스를 사용하고 있는데, t가 나의 현재 인스턴스 타입이고, 여러가지 종류가 있다.
저렴한 웹서버용 t, 앱 서버용 m 머신러닝용 p 등등.. 20개정도 있는데, 지금 단계에서 중요한 건 아닌듯..
EC2 동작 구성
- Instance 컴퓨팅 : 프로세싱하는 cpu
- EBS 하드디스크 : 하드 드라이브
- ENI 랜카드 : 네트워크 담당
위의 3개가 잘 맞물려서 일을하며 동작하는 방식인데, 아까 EBS에 대해서 EC2가 실행되는 환경에 대한 부분을 담당한다고 했다.
EBS에 대해서 알아보도록하자.