[KB_최종 프로젝트 CI/CD] 티켓팅 서비스 구축 - AWS EC2 인스턴스 생성 및 설정 가이드

JUN·2024년 10월 6일
0

KB IT's your life

목록 보기
13/16

서론

최종 프로젝트를 티켓팅 서비스로 기획한 만큼, 많은 사용자가 동시에 몰릴 경우 서버에서의 트래픽 관리가 매우 중요하다.
티켓팅 시스템은 특정 시간대에 급격한 트래픽 증가가 발생하는 특성이 있어, 서버가 이를 효과적으로 처리하지 못하면 서비스 중단이나 지연 문제가 발생할 수 있다.

이를 위해 AWS EC2 인스턴스를 활용하여 필요한 만큼의 컴퓨팅 자원을 유연하게 관리하고, Github Actions를 통해 CI/CD 파이프라인을 구축하여 코드 변경 사항을 자동으로 배포할 수 있는 환경을 구성하는 것이 필수적이다.

이 글에서는 기본적인 EC2 인스턴스 설정CI/CD 구축 과정을 설명하고 이후 글에서 트래픽 관리를 위한 기본적인 서버 운영 방법을 설명하고자 한다.

세팅 방법

0. 아마존 로그인 후 EC2 검색 및 선택

💡

EC2 인스턴스

1. Region 선택하기

💡

Region 선택이란?

실제 서버가 있는 공간. 각 Region 마다 고유의 값을 가지고 있음.

 Region 선택 기준?

해당 애플리케이션의 주된 사용자들의 위치에 ㄸ라ㅏ 가까운 Region 을 선택하는것이 유리함.

 주의 할 점

자신이 선택한 Region 에서 EC2 를 생성해두고 다른 Region 에 들어가면 생성한 EC2 가 보이지 않는다!

2. EC2 생성

  1. 해당 EC2 인스턴스의 이름 입력

  1. EC2 인스턴스의 서버 선택

  1. EC2 인스턴스의 유형 선택
💡

EC2 인스턴스의 유형이란?

인스턴스 : 아마존에서 지원하는 논리적 컴퓨터 1대

인스턴스 유형 : 그 컴퓨터 1대의 사양.

  1. 키 페어 해당 EC2 인스턴스에 접속할 때 필요한 암호.

인스턴스 유형 : 아마존 aws에서 지원하는 컴퓨터 유형 (컴퓨터 1개)

키페어: 빌린 컴퓨터의 접근할 수 있는 키들의 모음 (직관적으로 알아볼 수 있게짓는게 좋다.)

해당 키페어를 생성하면 {키페어 이름}.pem 파일이 생성됨.

해당 키페어 파일이 접속 시 활용되니 잘 보관할 것!

  1. 네트워크 설정

    💡

    VPC, 서브넷 관련 개념 : https://youtu.be/tkP5u_SrF-8?si=MIui_Lw5T1zuwisr

    ✅ 보안그룹이란?

    AWS 클라우드 내에서의 네트워크 보안 을 의미

    • 인바운드 트래픽 : 외부에서 EC2 인스턴스로 보내는 트래픽

      ssh란? 원격 접속을 위한 프로토콜

      화면에 보이는 인바운드 트래픽 보안 그룹은

      1. 전체 IP에서 22번 포트로 접속하는 ssh 프로토콜 요청을 허용하겠다.

      2. 전체 IP에서 80 번 포트로 접속하는 HTTP 프로토콜 요청을 허용하겠다.

        을 의미

    아웃바운드 트래픽 : EC2 인스턴스에서 외부로 보내는 트래픽

    → 허용할 IP와 Port 범위를 설정할 수 있다.

    • 방화벽(보안그룹) :
      • aws 클라우드에서의 네트워크 보안.
      • 해당 빌린 컴퓨터에 누가 접근할 수 있는지 체크하는 역할
      • 인바운드 : 외부에서 경계 안쪽으로 보내는 트래픽
        • IP&port 설정
        • 기본 ssh(원격 접속 경로) : 22번 Port 가 할당되어있음
          • PORT: 한 컴퓨터에서 실행되고 있는 특정 프로그램의 주소
            • 브라우저에서 왜 Port는 입력하지 않을까? 기본적으로 80번이 default → 80번 아닐때는 포트번호 지정해주면 됨
            • 0~1023 (well known port): 주요 통신 규약으로 지정되어있음
              • 22 : ssh(원격 접속을 위한 포트번호)
              • 80 : http 통신용 포트
              • 443 : https 통신용 포트
        • IP를 직접 입력하여 해당 Ip의 컴퓨터가 접속할 수 있도록 할 수도 있음
      • 아웃바운드 : 인스턴스에서 바깥으로 나가는 트래픽
      • 허용할 Ip & Port 를 설정할 수 있음
  2. 스토리지 구성

    💡

    EC2인스턴스의 저장 공간을 EBS(Elastic Block Storage)라고 부름 더 포괄적인 용어로 스토맂 볼륨이라고도 부른다.

프리티어는 30기가까지 무료로 제공해줌.

  1. 인스턴스 시작을 누르면 인스턴스가 생성됨.

인스턴스 실행 중 클릭 하면 실행중인 인스턴스 확인 가능

결론

AWS EC2 인스턴스는 티켓팅 서비스와 같은 고트래픽 환경에서 유연한 서버 관리와 확장성을 제공한다.
이후에는 해당 EC2 인스턴스에 spring 프로젝트를 올리는 방법을 설명하겠다.

profile
순간은 기록하고 반복은 단순화하자 🚀

0개의 댓글