최종 프로젝트를 티켓팅 서비스로 기획한 만큼, 많은 사용자가 동시에 몰릴 경우 서버에서의 트래픽 관리가 매우 중요하다.
티켓팅 시스템은 특정 시간대에 급격한 트래픽 증가가 발생하는 특성이 있어, 서버가 이를 효과적으로 처리하지 못하면 서비스 중단이나 지연 문제가 발생할 수 있다.
이를 위해 AWS EC2 인스턴스를 활용하여 필요한 만큼의 컴퓨팅 자원을 유연하게 관리하고, Github Actions를 통해 CI/CD 파이프라인을 구축하여 코드 변경 사항을 자동으로 배포할 수 있는 환경을 구성하는 것이 필수적이다.
이 글에서는 기본적인 EC2 인스턴스 설정과 CI/CD 구축 과정을 설명하고 이후 글에서 트래픽 관리를 위한 기본적인 서버 운영 방법을 설명하고자 한다.
EC2 인스턴스
Region 선택이란?
실제 서버가 있는 공간. 각 Region 마다 고유의 값을 가지고 있음.
해당 애플리케이션의 주된 사용자들의 위치에 ㄸ라ㅏ 가까운 Region 을 선택하는것이 유리함.
자신이 선택한 Region 에서 EC2 를 생성해두고 다른 Region 에 들어가면 생성한 EC2 가 보이지 않는다!
EC2 인스턴스의 유형이란?
인스턴스 : 아마존에서 지원하는 논리적 컴퓨터 1대
인스턴스 유형 : 그 컴퓨터 1대의 사양.
인스턴스 유형 : 아마존 aws에서 지원하는 컴퓨터 유형 (컴퓨터 1개)
키페어: 빌린 컴퓨터의 접근할 수 있는 키들의 모음 (직관적으로 알아볼 수 있게짓는게 좋다.)
해당 키페어를 생성하면 {키페어 이름}.pem
파일이 생성됨.
해당 키페어 파일이 접속 시 활용되니 잘 보관할 것!
네트워크 설정
💡VPC, 서브넷 관련 개념 : https://youtu.be/tkP5u_SrF-8?si=MIui_Lw5T1zuwisr
AWS 클라우드 내에서의 네트워크 보안 을 의미
인바운드 트래픽
: 외부에서 EC2 인스턴스로 보내는 트래픽
ssh
란? 원격 접속을 위한 프로토콜
화면에 보이는 인바운드 트래픽 보안 그룹은
전체 IP에서 22번 포트로 접속하는 ssh 프로토콜 요청을 허용하겠다.
전체 IP에서 80 번 포트로 접속하는 HTTP 프로토콜 요청을 허용하겠다.
을 의미
아웃바운드 트래픽
: EC2 인스턴스에서 외부로 보내는 트래픽
→ 허용할 IP와 Port 범위를 설정할 수 있다.
스토리지 구성
💡EC2인스턴스의 저장 공간을 EBS(Elastic Block Storage)라고 부름 더 포괄적인 용어로 스토맂 볼륨이라고도 부른다.
프리티어는 30기가까지 무료로 제공해줌.
인스턴스 실행 중 클릭 하면 실행중인 인스턴스 확인 가능
AWS EC2 인스턴스는 티켓팅 서비스와 같은 고트래픽 환경에서 유연한 서버 관리와 확장성을 제공한다.
이후에는 해당 EC2 인스턴스에 spring 프로젝트를 올리는 방법을 설명하겠다.