맨땅에 코딩

RE:BORN Backend - AI 서버(Flask) AWS 설정(EC2, Elastic IP) 본문

KAU 2024 (3학년)/산학프로젝트

RE:BORN Backend - AI 서버(Flask) AWS 설정(EC2, Elastic IP)

나는 푸딩 2024. 6. 19. 22:41

안녕하세요 AWS로 AI 서버를 배포한 바보임니다 ^_ㅠ

종강 기념으로 써보려고 합니다 아주 아주 아주 아주 아주 아주 행복해요 ^!^

 

먼저, 저는 Python을 사용하여 RE:TURN이라는 AI 챗봇을 만들었습니다.

이 친구를 이제 프론트엔드, 그러니까 앱에서도 AI를 사용할 수 있게 만들어줘야 하는데,

그렇게 하기 위해서는 AI 서버를 AWS로 배포하고, 배포한 주소로 API 요청을 해서 사용자가 보낸 질문에 대한 응답을 할 수 있도록 해야했습니다.

 

산학프로젝트에서 AI와 프론트엔드를 함께 담당했던 저는 AI 챗봇을 만들어보고, AI 서버도 만들어보고, 서버를 배포도 해보고, 프론트엔드에서 API 요청까지 시도까지 했다보니 정말 유익한 개발 경험이었습니다.

 

그럼 AWS를 어떻게 활용했는지 알아봅시다 :)

먼저, 루트 사용자로 계정에 로그인한 다음, EC2 인스턴스 시작 버튼을 눌러 인스턴스 생성을 합니다.

 

이름은 아무거나! 하시면 됩니다. 저는 reborn-ai라고 지어주었습니다.

그리고 Ubuntu를 선택해주었습니다.

네트워크 설정은 다음과 같이 해주시면 됩니다.

마지막으로 인스턴스 시작 버튼을 누르면 인스턴스 생성이 완료됩니다.

 

다음으로 인바운드 규칙을 설정해봅시다.

Flask 서버는 기본 5000번 포트로 열리기 때문에 다음과 같이 인바운드 규칙을 설정하여 5000번 포트를 열어줍니다.

 

이제 API 요청이 가능하도록 하기 위한 Elastic IP 주소를 만들어봅시다.

한글로 탄력적 IP라고 검색하면 나옵니다.. :)
탄력적 IP 주소 할당 버튼을 클릭해봅시다.

별다른 설정없이 할당 버튼을 눌러주시면 할당된 IP 주소가 목록에 뜰 것이며, 이를 아까 생성한 EC2와 연결해주면 AWS 설정은 끝이 납니다!

 

이제 우분투 환경에서 제가 개발한 AI 챗봇 코드를 가져와 봅시다.

Python 코드는 저희 팀 Github Organization 에 Reborn-AI Repository에 있어 이 Repository를 클론한 뒤 필요한 라이브러리를 설치하는 등의 작업을 수행하여 AI 서버 배포를 성공하였습니다!

 

Repository를 가져오는 방법은 다음과 같습니다.

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
cat ~/.ssh/id_rsa.pub

 

다음과 같이 ssh Key를 만들어주시고, 본인의 깃허브로 가서 Settings에 ssh Key를 등록해주신 후 다음 명령어를 실행하여 Repository를 Clone 받고 환경 세팅을 시작하시면 됩니다!

git clone git@github.com:username/repo.git

 

이후 환경 세팅에 관한 자세한 내용은 다음 포스트에 적어서 올려두었으니 참고 부탁드립니다 :)

감사합니다!

 

https://jump-in-the-deep-coding.tistory.com/12

 

RE:BORN Issue - AI 서버(Flask) AWS 배포(EC2, Ubuntu)

안녕하세요 산학프로젝트 개발 이슈를 적으러 왔습니다.저는 어제 밤을 새고 재정신 없는 와중에 산학을 하고 있었는데요(종강 내놔), 제가 방금 AI 서버 배포에 성공한 나머지 정말 정말 정말

jump-in-the-deep-coding.tistory.com