본문 바로가기

AWS

AWS의 EC2에서 Visual Studio Code 연결방법(SSH)

현재 프로젝트를 진행하고 있는 학생으로서 여러가지 생각을 해보게 되었다.

주의 : EC2라서 그런지 몰라도 금전적으로 발생될 수 있으니 주의를 하도록 하자.

 

그 중에 하나가 Visual Studio Code(앞으로는 vscode로 적도록 하겠다.)

나의 경우 vscode를 연결했던 목적 중 하나는 github형식 처럼 사용할 수 있지 않을까라는 생각에 대해 사용을 하게 되었던 것인데 파일을 업로드 한다는 명목하에 사용한다던가 코드만 입력을 하고 저장공간으로 둔다면 괜찮겠지만, 다른 부분에 대해서는 부족한 부분이 많으므로 배포를 목적으로 두는 사람이라면 추천하고 싶지는 않다.

배포의 경우는 jar파일로 배포하는 것을 추천하는데 이 부분에 대해서는 다음 포스팅으로 적어보려고 한다.

 

우선 본인들이 EC2로 서버를 생성한 것을 확인하자. 

EC2에 컴퓨팅 생성은 금방 작성하도록 하겠다.

(참고로 현재 나의 인스턴스는 종료가 아닌 중지를 해두었는데 금전적 발생되는 느낌이 커서 그렇다.)

원래는 가려야하는 것들이 퍼블릭 IPv4 주소와 여러가지가 존재하고 있지만, 개방을 해둔 이유는 초보자가 보기 쉽게 하기 위해서 이기도 하고 두번째로는 어짜피 나는 이 프로젝트가 끝나면 배포를 시놀로지를 통해서 해둘 예정이기 때문이다.

막상 포스팅을 하려고 보니 연결부분이 존재하고 있지 않기 때문에 다시 배포를 하고 해야한다는 것을 포스팅하면서 깨닫게 되었다. 위의 이미지를 보면 연결이라는 버튼이 있는데 연결 버튼을 누르게 되면 아래와 같이 나온다.

여기서 기억해야할 것은 username은 ubuntu라는 것! 이것은 항상 기억을 해두자.

vscode에 연결을 할 예정이니 ssh클라이언트를 클릭한다.

이곳에서 필요로 하는 것은 우선 pem 파일과 예: 부분에 적혀있는 부분이다. 이제 vscode를 켜서 하는 방법을 소개해주겠다. 우선 확장에서 설치를 해줘야 할 것이 있는데, 바로 Remote - SSH 다. 이것을 설치해주자.

설치가 완료되었다면 이제 F1를 입력하여 SSH를 입력하면 구성 파일 열기가 나온다. 새호스트 추가는 하는 방법을 아직 잘 모르기에 PASS

두가지 config가 나오는데 두번째는 클릭을 해도 들어가지지 않으므로 이유는 모르겠지만, 첫번째를 사용해 준다.

아래의 이미지 처럼 입력해야할 부분이 있는데, HostName에는 고정아이피를 입력해도 되지만, 위에서 예: 부분을 기억하라는 부분을 적어두었다.

ssh -i "projectpwd.pem" ubuntu@ec2-13-124-130-146.ap-northeast-2.compute.amazonaws.com

이 문장에서 호스트 네임은 @의 뒤수분을 말하는 것이며 주소를 뜻하고 Host는 무엇으로 설정하든 크게 상관이 없다.

User는 ubuntu로 잡혀있으니 입력해주고 IdentityFile은 EC2의 컴퓨팅 서버를 생성할때 키파일로 해놨기 때문에 해당 키파일이 저장된 위치로 파일명까지 주소를 입력해 줘야 한다.

해당 셋팅 설정을 저장 한 후에 F1을 누른 후 연결을 시켜줘야 한다.

연결을 누르면 내가 만든 Host파일이 생성되게 되었을 것이다.

해당 파일을 클릭하게 된다면, 새창이 열리면서 어떠한 언어로 할것인지 나오며 계속 버튼이 나오는데 현재는 무슨 문제가 있는지 모르겠지만 제대로 연결되어서 생성된 것을 확인할 수 있다.

 

여기서 주의해야할 점은 새로운 컴퓨터에 vscode를 활용한다고 보면 되는데 본 컴퓨터에는 java가 설치되어 있으니 자바스프링부트가 제대로 구동되는 것을 확인할 수 있으나 서버에 접속한 vscode의 경우에는 java 설치가 안되어 있으므로 자바스프링부트가 제대로 안된다는 것을 확인할 수 있는데 vscode에 그럼 확장에서 설치하면 되겠지? 하고 설치를 하게 된다면 오류가 발생되며 해당 EC2서버가 제대로 운영되지 않은 것을 확인할 수 있다. 그렇기 때문에 주의를 해야하며 그냥 코드 작성만 하겠다 생각하고 진행하면 된다. ubuntu에 java를 설치하고 나서 해봤으나 제대로 안되었는데 다시 도전하기 싫으므로 이것은 패스하겠다.