항해99

항해 99 - 2023.02.25 TIL

나도관 2023. 2. 25. 22:05

미니 프로젝트 주가 시작 되었다.

 

이전에 작은 프로젝트를 2회 정도 진행했었지만, 주특기를 학습한 후에 처음으로 진행하는 프로젝트였다.

 

프론트와 백엔드와 상의하며 와이어프레임, ERD, API 명세 등을 작성했다.

 

기존과 다른 점은 EC2 + RDS + S3 를 사용해서 배포를 진행해야한다는 것이다.

 

EC2 외에는 듣도 보도 못한 기술들이였는지라, 가장 어렵고 막막했던 것 같다.

 

 

RDS (Relational Database Service)

관계형 데이터베이스를 제공하는 서비스로, 서버에 직접 데이터 베이스를 설치하지 않고도 RDS에 연결하여 관계형 데이터베이스를 사용할 수 있다.

DB 버전 관리라던지 자동 백업 등 기존 사용자가 직접 해야했던 DB 관리를 대행해주는 서비스이다.

 

AWS에서는 이러한 RDS를 제공하고 있다.

 

정리하자면, 클라우드 환경에 데이터베이스를 세팅 후 연결하여 사용하는 것이라고 보면 될 것 같다.

 

 

AWS S3 (Simple Storage Service)

파일서버의 역할을 하는 서비스이다. 파일을 객체화 하여 Bucket이라는 공간에 담아둔다.

저장된 파일은 고유한 객체 URL이 생성되는데, 이 주소로 접근하면 파일을 로컬에 바로 다운로드 받을 수 있다.

 

 

 

즉, EC2 (서버) + RDS (데이터베이스) + S3 (파일 서버) 를 서로 연결해서 서버 환경을 구축하는 것이 이번 주의 주된 목표인 것이다.

 

모두 AWS에서 제공하는 서비스이다보니, 한 계정으로 연결해서 사용할 수 있었다. 

 

현재 상황은 EC2와 RDS는 연결이 되었고, S3는 설정을 완료하고 로컬 환경에서 테스트를 완료했는데 EC2 환경에 연결하지는 못한 상태이다. 

 

가장 어렵게 느껴졌던 게 AWS 내 보안 설정이다.

보안그룹, VPC, IAM 등 각 기술마다 적용해야하는 네트워크 및 보안 설정이 있고, 공개 범위나 권한도 따로 설정해주어야한다.

 

우선은 구글링을 통해서 최대한 따라해보는 식으로 학습을 진행했다..

 

현재 프로젝트가 진행 중이므로 모르는 내용들을 전부 다 정리하고 지나갈 수 는 없을 것 같다.

 

 

느낀 점

간단히 EC2에 배포만 해본 상태 였는데, 갑자기 덜컥 하라고 주제를 주니 팀원들 모두 당혹스러워 했다.

구글링에만 의존하다보니 개념도 정리되지 않은 상태이고, 따라하기 급급한 것 같다.

차라리 학습 주에 하루 이틀이라도 따로 편성을 하던지, 참고 자료를 주면서 구현해보라고 했다면 좋았을텐데.. 

 

목표하는 것은 EC2 배포 자동화를 하는 것인데.. 구현할 수 있을지는 의문이 든다.