AWS/EC2

AWS EC2 준비

초코chip 2024. 5. 30. 17:09

인스턴스 생성

  • 이름 및 태그: 인스턴스 이름 설정
  • OS: Ubuntu로 설정 (Linux 환셩)
  • 인스턴스 유형: t2.micro
  • 키 페어: EC2 서버에 원격으로 접속하기 위해 필요한 키 
    • 키 페이  이름: 아무거나
    • 키 페어 유형: RSA
    • 파일 형식: .pem ( SSH 방식 )
  • 네트워크 설정: HTTP 트래픽
    • SSH를 위해 22번 포트 활성화
    • https를 위한 443번 포트 활성화
    • http를 위한 80번 포트 활성화
  • 스토리지 구성: 프리티어는 최대 30GB까지 설정 가능
 

 

인바운드 규칙 추가

  • 외부에서 해당 인스턴스로 들어올 수 있는 규칙(방화벽)
  • 해당 규칙에 명시된 요청만이 접근할 수 있음
  • 우리 프로젝트에서 사용하는 포트도 추가적으로 올려야함 스프링의 경우 8080포트를 열어야함

 

SSH 방식을 통한 EC2 접속

  • Linux환경에서는 비밀키(.pem)에 700 권한을 부여하고 ssh 명령어로 접속할 수 있다.
  • 명령어: ssh -i "비밀키.pem" ubuntu@<퍼블릭 IPv4 DNS>
  • 보통 인스턴스 창에 가서 [연결] - [SSH 클라이언트]에 들어가면 형식을 복사할 수 있도록 해줌

 

.pem 키 권한 오류

  • 이제 .pem가 저장된 곳에서 터미널을 열어 접속을 시도할 때 위 오류가 발생하는 경우가 있다
  • 제 3자가 Key에 대하여 접근할 수 있는 권한이 많아서 발생하는 오류
  • key에 대한 권한 설정 필요: sudo chmod 600 fortest.pem

위 설정을 하고 다시 접속을 시도해보면 성공!

 

 

EC2 초기 설정

Swap 메모리 설정

AWS EC2를 프리티어로 사용하면 t2.micro를 사용하는 경우가 많은데, 램이 1G밖에 되지 않아 Spring 빌드 작업을 하면 EC2가 먹통이 되는 경우가 자주 발생

#1
sudo dd if=/dev/zero of=/swapfile bs=128M count=16

#2
sudo chmod 600 /swapfile

#3
sudo mkswap /swapfile

#4
sudo swapon /swapfile

#5 
sudo swapon -s

#6 
sudo vi /etc/fstab 

# 마지막 행에 추가하기
/swapfile swap swap defaults 0 0

#7 
sudo free -h

 

참고

https://velog.io/@hwsa1004/AWS-EC2-EC2-멈춤다운CPU-사용률-100-해결하기

 

[AWS EC2] EC2 멈춤,다운,CPU 사용률 100% 해결하기

EC2 폭파 멈춰. ✋

velog.io

 

EC2에 자바 설치

초기 EC2에는 자바(JDK)설치가 안되어있다

java 명령어를 누르면 아래 버전에 맞도록 명령어를 입력하라고 알려줌

 

요즘 스프링은 JDK 17을 사용하므로 아래 명령어를 입력하여설치 진행

sudo apt install openjdk-17-jre-headless

설치가 완료되면 아래처럼 뜨는 것을 확인

 

 

 

+ git은 기본적으로 설치되어있다.

 

'AWS > EC2' 카테고리의 다른 글

FastAPI EC2 배포  (0) 2024.05.31
스프링 EC2에 배포 (with. Git)  (0) 2024.05.30