TIL 21.10.03 AWS

서재환·2021년 10월 4일
0

TIL

목록 보기
30/37

✏️ 학습목표

앞 선 시간에는 front 관련 파일을 AWS와 연동시키는 방법에 대해서 알아보았다. 이번시간에는 Backend 관련 파일을 AWS와 연동시키는 방법에 대해서 알아보고자 한다. 연동시키기에 앞서 네트워크 관련 개념을 숙지하면 해당 작업에 도움이 되어 네트워크 개념에 대해서 다루어보도록 하자.

🌐 네트워크

VPC (Virtual Private Cloud)

AWS가 만들어놓은 물리적인 서버 환경 위 클라우드 네트워크 공간에서 서비스 사용자가 공간을 구획하여 인터넷 연결의 유무를 설정해주는 AWS의 서비스이다. AWS 계정 생성시 외부 인터넷과 연결될 수 있는 default VPC가 생성이 된다.

VPC ID 클릭시 아래와 같은 화면이 뜨는데 이 중에서 살펴보아야 할 부분은 IPv4 CIDR이라는 부분이다.

IPV4 CIDR은 IP의 범위를 지정하는 방법입인데 예를 들어 172.32.0.0/16 이라고 하면 IP의 범위가 172.32.0.0 ~ 172.32.255.255 지정되게 된다.

VPC 에서 외부적으로 사용하는 IP 번호이고 앞으로 사용할 EC2 서비스 사용시 해당 IP 대역을 사용하게 된다. 즉 AWS의 VPC가 외부 인터넷 환경과의 소통에 필요한 창구의 대역대인 것이다.

위의 그림처럼 VPC는 외부 인터넷과 연결하는 VPC1과 내부에서 통신할 수 있는 VPC2로 구성할 수 있다.

서브넷

연결되는 서버 컴퓨팅 자원들에 내부 IP를 할당하는 것, 하나의 VPC에는 4개의 서브넷이 default로 할당되어 있다.

라우팅 테이블

어떤 서브넷을 연결하지 그리고 연결하지 말지를 라우팅 테이블에서 적용한다.

인터넷 게이트웨이 ID

외부 인터넷과 VPC를 연결하는 부분. 연결이 되어야지만 VPC가 외부 인터넷과 소통할 수 있다.

보안그룹

트래픽의 입출을 관리하는 인스턴스에 대한 방화벽 역할을 한다. S3와 Cloud Front는 포트를 조절 할 일이 없지만 EC2와 같은 백엔드 서비스를 사용하게 될시 특정 포트를 관리해주어야 하기 때문에 보안그룹을 사용한다.

  • 인바운드 규칙
    인바운드 규칙은 클라이언트가 자신의 서버 데이터에 들어올 수 있는 규칙을 의미한다. 서버에 접속하고, 해당 데이터들을 읽을 수 있으며 권한 여부에 따라서 생성, 수정, 삭제도 허용하는 규칙이다. 기본적으로 인바운드 규칙은 모든 포트를 닫는 것으로 한다.

  • 아웃바운드 규칙
    아웃바운드 규칙은 서버에서 나갈 수 있는 (반출할 수 있는) 데이터에 대한 규칙을 의미한다. 인바운드 규칙에서 허용된 포트로 들어왔다고 한들, 아웃바운드 규칙에서 데이터 반출이 허용되지 않은 포트라면 클라이언트는 "다운로드"를 할 수 없게 된다. 보통 아웃바운드 규칙은 기본 옵션으로 모든 포트에게 허용되어 있는 편이다.

탄력적 IP

고정 IP 입니다. 고정적인 IP가 필요할 때 사용합니다. 고정 IP를 사용하는 이유 EC2를 예로 들면 해당 인스턴스를 중지하고 다시 시작 할 경우 퍼블릭 IPv4의 주소가 변경되는 것을 확인할 수 있다. 이렇게 변경되는 IP가 싫을 경우 탄력적 IP사용을 통해 IP를 고정시킨다.

✏️ 백엔드 구성해보기

이번 시간에는 EC2를 통해서 서버를 돌려보도록 하자.

✏️ ELB (Elastic Load Balancer)

이번 시간에는 EC2 + ELB 를 구축해서 보다 안정적인 구조를 구축해보도록 하자. 가장 기초적인 형태는 EC2에 Elastic Load Balance를 연결하는 형태를 알아보도록 하자.

로드 발란서를 사용하는 이유는 트래픽이 증가 할 경우 EC2를 추가하는 것도 있고 특정 서버가 응답하지 않을 경우 그 서버로 요청을 보내지 않고 남은 서버에 요청을 보내기 위함도 있다.
Load Balancer가 EC2에 잘 연결이 됐을 경우 해당 DNS를 주소창에 입력 할 경우 EC2에서 표시되는 화면과 동일한 호면이 뜬다.

Image

Load Balancer 에서 자동으로 EC2가 추가될 경우 기존 EC2에 있던 파일들이 자동으로 새로 생긴 EC2에 추가될 수 있도록 만든 기능

0개의 댓글