반응형

코딩/aws 4

AWS monolithic APP 고도화(3)

1. 개요이번 글에서는 route 53을 중점적으로 사용한다. 이를 이용해서 도메인을 등록하고 https 통신을 구축한다2. 세팅2.1 도메인 설정먼저 도메인이 필요하다. route53에서도 구매가 가능하지만 가비아에서 도메인을 구매해서 사용한다. route53에 접속해서 구매한 도메인 이름을 입력해서 호스팅 영역을 생성한다. 그러고 리스트로 돌아가게 되면 다음과 같이 NS 유형이 생성되고 값이 4개가 존재한다.이 4개의 값을 가비아의 도메인 통합 관리툴에 접속한 뒤 네임서버 설정을 통해 입력해 준다.그리고 10분 정도 기다리게 되면 가비아에서 구매한 도메인을 AWS에서 관리할 수 있게 된다. 설정이 완료된 것을 확인해보고 싶으면 이메일을 통해 가비아의 알림을 확인하거나 다음의 명령어를 입력해 결과가 A..

코딩/aws 2024.11.03

AWS monolithic APP 고도화(2)

1. 개요이번 글에서는 저번에 만들어 두었던 stateless한 application을 ALB와 Auto Scale을 통해서 대용량 요청에 대해 scability 하게 처리할수 있도록 구조를 변경한다.2. 세팅2.1 대상 그룹대상 그룹은 ALB를 통해 관리되는 대상으로 해당 그룹 내에서 트래픽을 분배해 준다. 인스턴스 유형을 선택하고 앞서 생성해 준 VPC를 연결해 준다. 이때 상태검사 경로로는 기본 "/"를 선택하게 되면 코드 내부에서 추가적인 외부 api를 호출하기 때문에 응답이 느려지거나 외부 api에서 주기적인 연결로 인해 연결을 차단할 때 unhealty 판정을 받을 수 있다. 이를 해결하기 위해 "/suppliers" 주소로 상태 검사를 요청한다.대상 등록하는 과정은 Auto Scale이 처리..

코딩/aws 2024.11.03

AWS monolithic APP 고도화(1)

1. 개요이번 파트에서는 DB와 어플리케이션을 분리하는 작업을 진행할 것이다. 이를 통해서 어플리케이션들은 하나의 DB를 참조하는 stateless 한 구조로 변경할 수 있다. 또한 private subnet에 DB를 위치함으로 외부로부터의 접근을 막고 어플리케이션을 통해서만 접근할 수 있다.2. 세팅2.1 VPC 생성프로젝트를 위한 가상 네트워크를 만들어 준다. 단순하게 이름과 IPv4 CIDR 만 임의로 설정해 주면 된다. 다음과 같이 설정했다2.1.1 인터넷 게이트웨이가상 네트워크인 VPC에서 외부 인터넷과 통신을 하기 위해서는 인터넷 게이트웨이가 필요하다. 생성한 후에 뒤에서 routing table과 연결해서 각각의 subnet에서 외부와 통신이 가능하다.2.2 Subnet 생성생성된 VPC ..

코딩/aws 2024.11.02

AWS monolithic APP 고도화

1. 개요클라우드 컴퓨팅 수업에서 첫 번째 과제로, 서버와 DB가 하나의 인스턴스로 결합된 coffeesuppliers라는 monolithic 앱을 고가용성 측면에서 개선하는 과제를 받았다. 이번에는 이 monolithic 앱의 문제점을 분석해보고자 한다.2. 발견한 문제점2.1 stateful 서버DB와 서버가 같은 인스턴스에서 실행되기 때문에, 하나의 인스턴스에서 작업을 진행하다 다른 인스턴스로 변경되면 모든 작업이 사라지게 된다. 즉 DB에 대한 의존도가 높아 stateless 설계를 적용할 수 없다.또한 서버와 DB가 같은 컴퓨팅 자원을 공유하기 때문에 리소스 경합(Resource Contention)이 발생한다. 이로 인해 해당 자원에 문제가 생기더라도 어느 어플리케이션에 의해 발생한 문제인지..

코딩/aws 2024.11.02
반응형