*본 글은 필자가 AWS EC2 서버를 구축하면서 헤딩했던 과정을 기록해서, 추후 기록을 더듬기 위한 자료이므로 도움이 안되실 수 있습니다.
* 지역을 꼭 서울로 선택할 것.
회원가입과 기본적인 인스턴스 생성 절차는 생략.
(Amazon Linux 2 AMI 로 설정)
< window 과정 >
putty 설치 : https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
putty에 접속하기 위해 인스턴스 생성 때 만들었던 key 파일인 .pem 을 .ppk로 변환해야 한다.
따라서 putty 파일을 설치하고, puttygen을 실행한다.
위 그림의 Conversions 에서 import key를 클릭하고, .pem 파일을 저장했던 경로를 찾아가 파일을 선택한다.
- type of key to generate를 SSH-1(RSA) 로 설정
(다른 블로그에는 SSH-2 RSA로 설정했지만, 없어서 아무거나 설정함)
- Save private key 를 클릭하면 ppk 파일 완성.
puttygen 파일을 종료하고, putty 파일을 실행하도록 하자.
위 화면의 Host Name에 EC2 인스턴스의 IP주소를 입력하고,
왼쪽 Category - Connection - SSH - Auth를 클릭. (* SSH는 하위 카테고리를 선택하지만, Auth 는 하위 카테고리인 GSSAPI가 아닌 Auth를 클릭해준다.
위 화면처럼 클릭을 해주면, 밑에 Private key file을 입력하는 창이 보인다. Browse 버튼을 클릭하여
아까 puttygen으로 생성한 ppk 파일을 선택한다. 그리고 Open을 클릭.
Open을 하고나면, 다음과 같이 login 창이 나타난다. 이 때 EC2 에서 인스턴스를 생성할 때 선택했던 AMI(Amazon Machine Image)의 사용자 이름을 입력한다.
Amazon Linux AMI의 경우 사용자 이름은 ec2-user
RHEL AMI의 경우 사용자 이름은 ec2-user 또는 root
Ubuntu AMI의 경우 사용자 이름은 ubuntu 또는 root
Centos AMI의 경우 사용자 이름은 centos
Fedora AMI의 경우 사용자 이름은 ec2-user
SUSE의 경우 사용자 이름은 ec2-user 또는 root
이어서 java 설치 및 환경변수 설정, tomcat 을 설정하도록 하자.
이와 관련해서 참고 했던 정리가 잘 되있던 블로그 글.
https://iamsangil.github.io/aws/16-09-13-aws2
- AWS EC2 Java, Tomcat 설치 및 환경변수 설정하기는 다음에 셋팅할 기회가 있을 때 업로드 하기로 하자.
tomcat까지 설치 완료 후에, public ip:8080 으로 들어갔을 때 고양이가 뜬다면 성공!
(* yum을 이용해 설치할 수도 있다.)
winscp 다운로드 : https://winscp.net/eng/download.php
프로그램을 설치하고 실행을 하면,
다음과 같은 화면이 뜬다.
호스트 이름에는 EC2 인스턴스에서 받은 IP 주소를 입력하고, 사용자 이름에는
Amazon Linux AMI의 경우 사용자 이름은 ec2-user
RHEL AMI의 경우 사용자 이름은 ec2-user 또는 root
Ubuntu AMI의 경우 사용자 이름은 ubuntu 또는 root
Centos AMI의 경우 사용자 이름은 centos
Fedora AMI의 경우 사용자 이름은 ec2-user
SUSE의 경우 사용자 이름은 ec2-user 또는 root // 를 입력한다.
사용자 이름까지 입력을 하고 나서, 고급을 입력하여 들어가면
고급 사이트 설정 항목이 뜨는데, SSH - 인증 에 들어가서, 개인키 파일로 저장해두었던 .ppk 파일을 설정한다.
확인 및 로그인을 누르면 끝.
좌측은 내 컴퓨터, 우측은 서버 파일 목록인데,
이클립스의 스프링 파일을 export - war.file 로 생성하여 우측 서버 파일의 경로 /usr/local/tomcat9/webapps/에 복사하면 자동으로 파일을 가져온다.
putty 명령프롬프트를 이용해 tomcat 서버를 껏다가 켜주면 파일을 가져온다.
./shutdown.sh
./startup.sh
이제 public ip:8080 을 주소창에 입력하면 되지만, 아마 들어가지지 않을 것이다.
왜냐하면 aws ec2에 포트 범위를 등록해주지 않았기 때문.
aws ec2 - 보안 그룹에 들어가서
아까 만들었던 ec2 인스턴스와 연결된 보안그룹을 클릭하고,
(인스턴스의 보안 그룹을 보면, 어떤 보안 그룹과 연결되어 있는지 확인할 수 있다)
인바운드를 클릭하여 위 사진과 같이 설정을 하고, 저장 버튼을 누른다.
다시 한번 public ip:8080로 들어갔을 때 페이지가 뜨면 성공!