SpringBoot, MariaDB 프로젝트 AWS 배포하기 총정리(1)❗
1. 프리티어 가격확인
2. EC2 (서버)생성하기
3. 예산 설정하기(AWS Budgets)
4. IP 고정하기 (탄력적 IP, Elastic IP)
SpringBoot, MariaDB 프로젝트 AWS 배포하기 총정리(2)❗ << 현재 게시글
5. Putty 설치 및 접속
6. Open JDK11 설치 및 환경변수 설정
7. MariaDB 설치
8. HeidiSQL로 EC2의 데이터베이스 원격 접속하기
SpringBoot, MariaDB 프로젝트 AWS 배포하기 총정리(3)❗
9. SpringBoot 프로젝트 Github에 업로드하기
10. Git 설치 및 Repository Clone하기
11. jar파일 실행하기
⭐주의!
12. 실행확인해보기
5. Putty 설치 및 접속
인스턴스를 생성했으니 접속해보자.
리눅스에 원격제어하기 위해서는 SSH방식을 사용해야하는데
윈도우에는 SSH방식이 없기때문에, 접속하기 위해서는 SSH프로그램인 putty가 필요하다.
5-1. putty 설치
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
설치는 기본설정으로 두고 전부 next누르면된다.
5-2. puttygen.exe 실행
putty를 설치하면 자동으로 puttygen이 설치된다.
5-3. RSA에 체크되어있는지 확인하고 load 클릭
5-4. All Files로 변경 후 저번에 저장한 pem파일 선택
5-5. Successfully 팝업 확인 클릭
5-6. save private key 클릭, 팝업도 예 클릭
5-7. ppk 확장자로 파일 저장
5-8. AWS EC2들어가서 접속하고자 하는 인스턴스 우클릭 - 연결 클릭
5-9. "OS명@퍼블릭DNS"를 복사하여 putty > session > hostname에 붙여넣는다.
port는 22, SSH에 선택되어야한다.
5-10. putty > connection > ssh > auth 접속
pem을 ppk로 바꾼 파일 등록한 후 open 클릭
5-11. accept 클릭
5-12. 접속 완료! ls -al 입력하면 아래와 비슷하게 나온다.
6. Open JDK11 설치 및 환경변수 설정
sudo는 일반 사용자가 root 권한을 빌려 명령을 실행할 때 사용한다.
apt-get은 일종의 앱스토어이다.
6-1. apt-get 업데이트하기
$ sudo apt-get update
$ sudo apt-get upgrade //(중간에 Y/N 나오면 Y입력)
6-2. OpenJDK 설치하기
$ sudo apt install openjdk-11-jdk //(중간에 Y/N 나오면 Y입력)
6-3. java -version, javac -version 입력하여 설치 확인
6-4. javac 위치 확인
$ which javac
$ readlink -f /usr/bin/javac
6-5. 환경변수 입력하기
$ sudo nano /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
//입력 후 ctrl+o 해서 저장, 파일명 그대로 저장 엔터
//nano에서 빠져나오기 ctrl+x
$ source /etc/profile //수정한 파일 적용
$ echo $JAVA_HOME //적용되었는지 확인
7. MariaDB 설치
7-1. MariaDB 설치하기
$ sudo apt install mariadb-server //중간에 Y/N 나오면 Y 입력
7-2. MariaDB 접속하기
//$ mysql -u root -p
//ERROR 1698 (28000): Access denied for user 'root'@'localhost'
//위와 같은 오류 발생한다
$ sudo mysql -u root -p
//password는 그냥 엔터치면 접속된다
7-3. root@localhost 권한 및 비밀번호 설정하기
아래와 같이 실행하고나면 sudo없이 mysql 로그인 가능하다
> grant all privileges on *.* to 'root'@'localhost' identified by '설정할 비밀번호' with grant option;
7-4. charset 확인하기
utf8mb4로 되어있어야한다!
> show variables like 'char%';
7-5. 날짜 및 시간 변경하기
MariaDB는 시스템 시간을 따라가기 때문에, 일치하지 않는다! 일단 exit로 MariaDB를 빠져나온 후, 시간대를 변경한다.
$ sudo timedatectl set-timezone 'Asia/Seoul';
$ sudo systemctl restart mysqld; //mariadb 재실행
변경완료
8. HeidiSQL로 EC2의 데이터베이스 원격 접속하기
8-1. 테스트를 위해서 데이터베이스를 하나 추가하자
8-2. 세션을 하나 생성하고, 네트워크 유형을 SSH tunnel로 설정한다.
사용자와 암호는 EC2 MariaDB에서 접속했던 계정의 사용자와 암호를 적고
포트는 그대로 놔둔다!
8-3. plink, 개인키(ppk) 입력
ppk는 저번에 pem파일을 변환했던 것을 넣으면되고,
plink는 putty사이트에서 다운받을 수 있다.
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
8-4. SSH호스트+포트, 사용자 이름, 포트 입력
사용자이름은 EC2에 접속했을 때의 계정인 ubuntu를 입력하고
포트는 가상 포트로 접속하는 것이기때문에 3306이 아닌 다른 번호를 입력해준다.
탄력적 IP주소는 AWS EC2 인스턴스에서 확인할 수 있다.
8-5. 연결버튼 눌러서 확인
아까 만든 testdb를 확인할 수 있다!
'Infra' 카테고리의 다른 글
CircleCI로 SpringBoot+Postgresql 프로젝트 빌드 배포하기(2) (0) | 2022.03.18 |
---|---|
CircleCI로 SpringBoot+Postgresql 프로젝트 빌드 배포하기(1) (0) | 2022.03.18 |
AWS EC2 Jenkins 설치 (0) | 2022.03.18 |
SpringBoot, MariaDB 프로젝트 AWS 배포하기 총정리(3)❗ (1) | 2022.02.19 |
SpringBoot, MariaDB 프로젝트 AWS 배포하기 총정리(1)❗ (0) | 2022.02.18 |