Spring Boot AWS RDS 연결 및 사용
지난 글에서 AWS RDS를 세팅하고, 데이터베이스를 연동했다!
이제 EC2로 실제 백서버를 구동시키고 계속 구동될 수 있게 설정해보자.
EC2란?
Amazon Web Services(AWS)에서 제공하는 클라우드 컴퓨팅 서비스로 가상 서버를 제공한다.
인바운드 규칙 (Inbound Rules)
인바운드 규칙은 외부에서 인스턴스로 들어오는 네트워크 트래픽을 제어합니다. 이 규칙은 특정 IP 주소, IP 범위, 포트 번호, 프로토콜 등을 기반으로 설정됩니다. (밖에서 안으로 들어올 때 설정되는 규칙)
ssh -i "키페어이름" ubuntu@퍼블릭ip주소
입력배포란 무엇인가?
쉽게 말하자면 빌드 파일을 서버에 올려서 가동 시키는 것!
위에서 EC2로 가상서버를 연결했으니, 아래에선 빌드하고 EC2 설정을 마저하도록 하자.
sudo apt-get install openjdk-17-jdk
java -version
https://filezilla-project.org/download.php?type=client
FileZilla 다운 후 가상서버를 연동시킨다.
프로토콜은 SFTP
호스트는 인스턴스에 할당된 퍼블릭 ip주소
사용자는 처음에 고른 운영체제로
키파일은 다운받아둔 키페어로
참고로 퍼블릭 ip주소는 인스턴스에서 확인가능하다.
로컬에서 가상서버로 빌드 파일을 전달한다.
우분투 안에 빌드 파일을 모아둘 수 있게 디렉터리 하나 만들고, 거기에 빌드 파일 끌어서 옮긴다.
java -jar 빌드파일.jar
위에서 서버는 터미널이 닫히면, 서버가 종료된다. 하지만 개발이라는 게 언제 꺼질지 모르는 인생이니... 이왕이면 편하게 원격 접속이 끊어져도 컴퓨터가 꺼지지 않는 이상 구동될 수 있게 만들자.
nohup
사용
nohup java -jar 빌드파일.jar &
로 jar파일을 실행시킨다.
이후 터미널을 종료해도 가상서버는 잘 돌아간다.
물론, 터미널 끌 때는 exit
명령어를 이용해서 셀을 꺼줘야 함!
작동 중인 프로세스 보기
ps -ef | grep java
로 java가 들어간 프로세스를 확인한다.
이후 -jar로 실행중인 빌드파일을 kill 한다.
kill -9 프로세스id
아니, 근데...간단히 데이터만 공유 관리하려고 했는데
왜 여기까지 왔을까...?
오늘도 알차게 배웠다! 끝!