VPC란?
Amazon Virtual Private Cloud(Amazon VPC)를 사용하면 정의한 논리적으로 격리된 가상 네트워크에서 AWS 리소스를 시작할 수 있다. 이 가상 네트워크는 AWS의 확장 가능한 인프라를 사용한다는 이점과 함께 고객의 자체 데이터 센터에서 운영하는 기존 네트워크와 매우 유사하다.
오케스트레이션
오케스트레이션은 여러 개의 컴퓨터 시스템, 애플리케이션 및/또는 서비스를 조율하고 관리하는 것으로, 여러 개의 작업을 함께 연결하여 크기가 큰 워크플로나 프로세스를 실행하는 방식을 취한다.
ECS
도커와 AWS가 합작하여 만든 컨테이너 오케스트레이션 서비스
ECS는 애플리케이션을 여러 개의 독리벅인 컨테이너로 분리하여 실행하고, 각 컨테이너 간에 리소스를 효율적으로 할당하여 확장 및 축소할 수 있는 기능을 제공
ECS는 컨테이너 관리를 위한 클러스터를 생성 컨테이너 인스턴스를 배치하고 관리하기 위해 서비스 및 작업 개념을 사용한다.
서비스는 컨테이너 인스턴스의 그룹을 관리하고, 컨테이너의 개수를 유지하거나 스케일링을 자동으로 조정할 수 있습니다. 작업은 단일 작업 또는 일괄 처리 작업을 실행하기 위한 설정을 제공합니다.
EKS
EKS는 "Elastic Kubernetes Service"의 약자로, 아마존 웹 서비스(Amazon Web Services, AWS)의 관리형 쿠버네티스 서비스
EKS는 Elastic Load Balancer, Auto Scaling, IAM 등과 연동하여 애플리케이션을 확장하고 관리하는데 도움을 준다.
MSA
MSA는 "Microservices Architecture"의 약어로, 마이크로서비스 아키텍처를 의미합니다. MSA는 소프트웨어 개발 방법론으로, 애플리케이션을 작고 독립적인 기능 단위인 마이크로서비스로 분할하여 구축하는 접근 방식이다.
MSA의 주요 특징
- 독립적인 마이크로서비스
- 경량 통신 방식
- 분산 데이터 관리
- 자동화된 배포 및 확장
vpc 생성을 하려면 root 계정 사용자가 권한을 부여해야 함
private 서브넷 2개 / public 서브넷 2개 생성
한 지역에서 사건이 발생하여 제대로 작동하지 않아도 다른 지역에서 가능하도록 함
인터넷 게이트웨이(Internet Gateway)는 가상 사설 네트워크(VPC) 내의 인스턴스들이 인터넷과 통신할 수 있도록 하는 서비스
NAT(Network Address Translation) 게이트웨이는 가상 사설 네트워크(VPC) 내의 프라이빗 서브넷에 속한 인스턴스들이 인터넷과 통신할 수 있도록 하는 기능을 제공하는 AWS의 관리형 서비스. NAT 게이트웨이는 인터넷 게이트웨이와 함께 사용되어 프라이빗 서브넷에 속한 인스턴스들이 인터넷과 통신할 수 있는 방법을 제공한다.
생성한 후 라우팅 편집 -> 라우팅 추가 -> 대상 IP는 모두 접속 가능하도록 0.0.0.0/0 -> 오른쪽 대상 부분에는 인터넷 게이트웨이 선택 -> 앞서 만들어놓은 게이트웨이 선택 -> 변경사항 저장
alb와 instance 이름의 보안 그룹 생성
보안그룹은 방화벽 역할을 함. 80번 포트를 열겠다.
alb 보안그룹은 instance 보안그룹에 마음대로 접속이 가능하도록 설정함
앞서 만든 두 개의 public 서브넷 선택 -> 작업 -> 서브넷 설정 편집 -> 퍼블릭 IPv4 주소 자동 할당 활성화
서브넷은 둘다 public으로 선택
Create Target Group 생성
🏻 REST API를 대체할 수 있는 구글의 프로시저 호출 시스템
gRPC는 구글이 최초로 개발한 오픈 소스 원격 프로시저 호출 시스템이다. 전송을 위해 HTTP/2를, 인터페이스 정의 언어로 프로토콜 버퍼를 사용하며 인증, 양방향 스트리밍 및 흐름 제어, 차단 및 비차단 바인딩, 취소 및 타임아웃 등의 기능을 제공한다.