본문 바로가기
AWS/EC2를 이용한 Streamlit 배포

[Streamlit 앱 서비스 배포] 2. AWS EC2 인스턴스 접속하기

by Fletcher 2024. 7. 7.

※때에 따라서 소프트웨어 또는 프레임워크의 버전 및 인터페이스에 대해,

조회하시는 시간과 본 포스트 작성의 시간적 격차가 있는 경우

해당 설명과 상이한 부분이 있을 수 있습니다!

 

 

 

 

반갑습니다!

저번 포스트에서 AWS EC2 서비스의 인스턴스 생성하기에 대해 나눴습니다

이번 포스트에서는 해당 EC2 인스턴스에 원격 접속하는 방법을 알아보겠습니다 ^^!

 

 

 

 

 

먼저 AWS 로그인 후 EC2 서비스 대시보드 화면에 접근해주세요 ^^

이 대시보드 화면에서 "인스턴스(실행 중)"을 클릭하셔도 되고,

왼쪽 탭에서 "인스턴스"를 클릭하셔도 됩니다!

 

 

 

 

그럼 위 이미지와 같이 현재 생성되어 있는 인스턴스가 무엇이 있는지 목록으로 조회가 가능합니다

해당 인스턴스의 ID를 클릭해서 상세 정보를 확인해볼까요?

 

 

 

할당받은(생성한) 해당 인스턴스의 상세정보입니다

여기서 가장 중요한건 퍼블릭 IPv4 및 퍼블릭 IP DNS가 되겠습니다

 

우리는 서버 컴퓨터로 사용하기 위해서 EC2 인스턴스를 할당 받았습니다

그럼 컴퓨터에 소프트웨어나 라이브러리 등을 설치해서 환경을 구축해야 합니다

근데 이 인스턴스(컴퓨터)에 명령어를 입력하고 결과를 출력 받으려면

어디에 어떻게 모니터랑 키보드를 연결해서 작업을 할 수 있을까요 ^^?

 

우리는 Putty를 이용해 원격 접속을 할겁니다

네트워킹을 위해서 IP Address 또는 DNS를 알아야 하는데,

내가 할당 받은 EC2 인스턴스의 해당 정보가 바로 상기에 기재되어 있죠! 

 

그래서 이 퍼블릭 IPv4 주소 및 프라이빗 IPv4 DNS가 중요한 정보가 되겠습니다 ^^!

 

 

 

 

하단으로 스크롤을 내려서 보안 탭을 누르시면 보안 그룹 및 세부 정보에 대해서 조회하실 수 있는데요

만약에 인바운드 규칙이 설정되어 있지 않으면 그 어떤 IP에서의 접속 시도도 다 차단이 될 것입니다

임의의 연습용이니까 22번 포트에 대해서 모든 IP(0.0.0.0/0)에서 접속을 허용해놨습니다

그럼 이제 Putty를 이용해서 원격 접속을 해볼까요?^^

 

 

 

근데 잠깐 그 전에, 사전 작업이 하나 필요합니다!

우리가 아까 키 페어 형식을 .pem으로 선택했었는데요

윈도우즈 환경에서 Putty로 해당 EC2 자원에 접속하려면 .pem이 아니라 .ppk 형식의 파일이 필요하기 때문에

PuttyGen을 이용해서 파일 형식을 변환해주는 작업을 한 번 거치겠습니다 ^^!

 

 

 

 

Puttygen을 실행시키면 이와 같은 화면이 팝업됩니다

여기서 우측 하단쯤의 Load 버튼을 눌러서 .pem 파일을 로드하시면 됩니다!

 

 

 

 

그럼 이렇게 파일이 로드된 상태가 될텐데요

여기서 Load 버튼 밑의 "Save private key" 버튼을 누르시고

원하는 경로에 임의의 이름으로 지정을 해주시면 Putty에서 쓸 수 있는 .ppk 형식의 파일이 생성됩니다!

기존의 .pem은 그대로 있고 형식만 바뀐 파일이 다시 생겨나는 것이죠 ^^!

그럼 준비물을 챙겼으니 원격 접속을 해볼까요?

 

 

 

 

Putty를 실행시키면 이러한 화면을 보실 수 있습니다!

이 Session 탭이 일종의 로그인 같은 부분이라고 보시면 되겠습니다 ^^

 

보통 웹 사이트에서 로그인을 하려면 ID와 PASSWORD가 필요하죠?

우리는 해당 컴퓨터에 접근하기 위해서 IP Address와 보안 증명(Authentication)이 필요합니다!

아까 EC2 인스턴스의 IPv4 주소가 일종의 아이디 역할,

인스턴스 생성시 발급 받은 키 페어가 비밀번호의 역할을 한다고 생각하시면 되겠습니다 ^^

 

 

 

.ppk 파일을 등록하기 위해 Putty의 메뉴 탭에서 SSH → Auth → Credentials로 이동해주세요!

그리고 "Private key file for authentication 부분에서 Browse를 눌러서

여러분이 발급 받은 .ppk 파일을 찾아 로드해주세요 ^^!

 

 

 

다시 Putty의 Session 탭으로 돌아와주세요

아까 Putty를 실행시켰을 때 제일 먼저 마주했던 그 화면입니다 ^^!

 

여기서 "Host Name(or IP address)" 부분에 EC2 인스턴스의 퍼블릭 IPv4 Address를 입력해주세요!

이렇게하고 Open을 누르면 원격접속이 작동하는데, 여기서 잠깐!

 

매번 Putty로 원격 접속할 때마다 IP Address를 입력하고, Credentials를 등록하고 하는 과정이 번거롭습니다

그래서 메인 화면의 하단에 이 IP Address와 .ppk를 Save 해놓을 수 있는 란이 있는데요

"Saved Sessions" 부분에 여러분이 원하는 임의의 문자열로 이름을 정해주시고 Save를 클릭해주시면

Default Settings 밑에 여러분이 등록한 이름이 나타납니다!

 

다음 접속 때부터는 이렇게 등록해놓은 세션을 클릭하고 Open을 누르면 원격 접속이 가능하겠습니다

그리고 추가로 기본 default이긴 하지만,

22번 포트가 맞는지 커넥션 타입이 SSH가 맞는지도 꼭 확인해주세요 ^^!

 

 

 

 

그럼 이렇게 PuTTY를 통해 접속한 터미널 창이 나옵니다!

이제 딱 한 단계만 넘으면 드디어 EC2 인스턴스에 원격 접속이 마무리됩니다 ^^

 

 

 

 

login as 부분에 "ec2-user"라고 입력해주신 다음에 엔터를 눌러주세요 ^^!

 

 

 

 

정상적으로 E2 인스턴스에 원격 접속을 했습니다!

다음 이어지는 포스트에서는 이 화면부터 시작해서 streamlit 앱을 서버에 배포하는데에 필요한

여러 설정 사항들(소프트웨어 및 라이브러리 설치)을 알아보겠습니다 ^^!

 

 

 

드넓은 개발의 세계를 항해하는 모든 분들 늘 건승하시고 힘내시기 바랍니다

읽어주셔서 감사합니다 ^^!