# load balancer

52개의 포스트
post-thumbnail

[AWS] Load Balancer를 사용해서 EC2를 HTTPS로 배포하기

시작하기에 앞서... 프런트엔드 팀원과 프로젝트를 협업하면서 EC2를 활용하여 배포를 완료하였습니다. 프런트엔드와 백엔드를 배포하고 이제 테스트를 진행하려 하는데... 이럴수가... 예상치 못한 에러 발생...🥺 원인을 확인한 결과, 프런트엔드는 헤로쿠를 활용하여 배포하였으므로 https로 배포가 되지만 EC2로 배포를 하였을 땐 http로 배포가 되므로 충돌이 나게 되는 것이었습니다...! 발생한 문제를 해결하고자 방법을 찾아내었으니, 를 사용하여 http로 가는 요청을 https로 우회하는 방법이었습니다. 따라서, 이번 포스팅에서는 를 사용하는 과정을 기록하고자 합니다! (찍어놓은 사진이 없어서 동일한 에러 사진을 가져왔습니다. / 출처 : [https://east-star.tistory.com

2023년 9월 13일
·
4개의 댓글
·
post-thumbnail

졸업작품 리뉴얼 - 도메인 설정/Test Api

배포에 사용되는 AWS서비스 > EC2 Instance 클라우드 서버 인스턴스 RDS 관리형 클라우드 기반 관계형 데이터베이스 Route 53 DNS 서비스를 제공하여 도메인 이름을 IP 주소에 매핑하고, 트래픽 라우팅 정책을 관리 AWS Certificate Manager(ACM) SSL/TLS 인증서를 프로비저닝, 관리, 배포 Load Balancer 들어오는 네트워크 트래픽을 여러 서버(대상 그룹에 정의된 서버)에 자동으로 분산 목표 1. 도메인네임을 대여해서 Route 53과 연결한다 2. prod 서브도메인을 이용하여 배포용 API서버를 연결한다 3. https 인증을 통해 안전한 연결을 추구한다 목차 1. 도메인네임 대여 및 Route 53 연동 2. ACM 도메인 SSL인증 3. Load Balancer Htt

2023년 9월 13일
·
0개의 댓글
·
post-thumbnail

AWS 오피스 교육 #2

스토리지 (S3) 클라우드 스토리지 개요 블록 스토리지 원시 스토리지 데이터가 관련없는 블록의 어레이로 구성된다. 파일 스토리지 파일 시스템이 관련없는 데이터 블록을 관리한다. 네이티브 파일 시스템이 디스크에 데이터를 배치한다 객체 스토리지 데이터, 데이터 속성, 메타데이터, 객체 ID를 캡슐화하는 가상 컨테이너를 저장한다. S3는 내구성, 고가용성이 높으며 최상의 수평 확장성을 특징으로 갖는다. S3 Storage Class S3의 종류는 다양하며 상황과 종류에 맞게 사양해줄 수 있다. Standard 자주 쓰는 데이터를 저장한다. 자주 쓰는 데이터란 30일을 기준으로 한 번 이상 Access하는 data를 의미한다. 저장 비용은 높지만 호출 비용이 낮은 특성을 갖는다.

2023년 7월 19일
·
1개의 댓글
·

kubectl 로 service 생성하기

Service 는 수시로 바뀌는 pod ip 에 대한 문제를 해결하기 위한 기능이다. Deployment 를 기반으로 service 를 생성하면 kubernetes 내에서 사용가능한 변하지 않는 ip 가 생성된다. 해당 ip 로 접속할 경우 준비된 pod 의 ip 와 상관없이 접속시킬 수 있다. ✏️ Cluster get all 로 deployment 를 확인 후 service 를 생성하면 편리하다. 📍 Cluster 생성 --type : 생략하면 “ClusterIP” 로 생성된다. --port : 생성할 클러스터 ip 의 포트 --target-port : 연결할 pod 의 포트 --name : 생성할 클러스터의 이름 (생략하면 deployment 와 동일한 이름이 생성됨) 📍 확인하기 kubectl get all 로 생성된 serveice 를 확인할 수 있다. 생성

2023년 7월 4일
·
0개의 댓글
·
post-thumbnail

[AWS] ECS Fargate Outbound 고정 IP 설정

서론 만약 운영중인 인스턴스가 써드파티 어플리케이션을 사용하는데 사용하는 어플의 방화벽에서 화이트리스트 ip등록이 필요할때 인스턴스의 아웃바운드 ip 는 고정이여야 한다. 필자는 해당 이슈가 생겼을때 관련 자료가 많이 없었어서 고통을 받았는데 같은 이슈로 고통받는분들한테 조금이라도 도움이 되고자 해당 포스트를 작성한다. VPC 생성 VPC 콘솔에서 VPC 생성을 클릭 한 후 이름 태그, IPv4 항목을 규칙에 맞춰 채워준다. 서브넷 생성 그 후 위에서 생성한 VPC로, 서브넷을 생성 해 준다 Priv

2023년 6월 28일
·
0개의 댓글
·
post-thumbnail

AWS Builders 100 - Web application

기본 설정 ![](https://

2023년 6월 22일
·
0개의 댓글
·
post-thumbnail

[Network] Load balancer

현 시대에서 그 누구도 직간접적으로 네트워크를 사용하지 않은 사람은 없을 것이다. 따라서 사용자가 많아질수록 서버의 부담은 당연히 커졌고 선택할 수 밖에 없었다. 서버 자체의 스펙을 높이던가(Scale-Up), 서버의 갯수를 늘리던가(Scale-Out). 보통 컴퓨터의 장비가 최신에 가까울수록 업그레이드 비용이 수직 상승하기 때문에 대체로 비용적, 효율적 측면을 모두 비교해도 서버의 갯수를 늘리는것이 일반적이다. 그렇다면 무조건 서버의 갯수를 늘리는것이 능사는 아니다. DB같은 경우 여러대의 서버를 동시에 돌리게 되면 write없이 read만 일어나는 사이트의 경우 문제가 없을 수 있지만 Table의 Data를 변경, 입력하게 되면 모든 DB서버가 동시에 같은 Data상태를 유지해야하기 때문에 이를 해결하는것이

2023년 6월 13일
·
0개의 댓글
·
post-thumbnail

<TIL> 112. Load Balancer

Load Balancer 쏟아지는 트래픽을 여러 대의 서버로 분산시켜주는 기술. 한 곳의 서버에 모든 트래픽이 몰리는 상황을 방지. 로드밸런서는 서버에 가해지는 부하(=로드)를 분산(=밸런싱)해주는 장치 or 기술. 클라이언트와 서버풀(Server Pool, 분산 네트워크를 구성하는 서버들의 그룹) 사이에 위치하며, 한 대의 서버로 부하가 집중되지 않도록 트래픽을 관리해 각각의 서버가 최적의 퍼포먼스를 보이게 함. Load Balancing 기능 부하 분산 처리 Load(부하) Balancing(분산)이란 컴퓨터 네트워크 기술의 일종, 둘 혹은 셋 이상의 중앙처리장치 or 저장장치와 같은 컴퓨터 자원들에게 작업을 나누는 것을 의미. 부하를 분산해 트래픽이 과도하게 몰려 서비스가 중단되는 현상을 막기 위한 기술. -> 지연없이 작업을 처리하고 속도를 낼 수 있다. 엔드포인트 역할 제공 로드밸런서는 스케일 아웃에 대한 하나의 엔드포인트 제공 우리는 오토

2023년 5월 10일
·
0개의 댓글
·
post-thumbnail

Cloud Armor를 사용한 Traffic Blocklisting

Cloud Armor DDoS 공격과 교차 사이트 스크립팅(XSS), SQL 삽입(SQLi)과 같은 애플리케이션 공격을 포함한 여러 유형의 위협으로부터 Google Cloud 배포를 보호할 수 있는 서비스. 사실 클라우드의 LB를 사용하면 기본적으로 엣지에서 DDoS 공격을 어느정도 방어해주긴 하나 확실하게 어플리케이션을 보호하고 액세스를 제어하기 위해 사용할 수 있다. Google Cloud Armor의 IP blocklists/allowlists을 사용하면 사용자 및 악성 트래픽에 최대한 가까운 Google Cloud 엣지에서 HTTP(S) LB에 대한 액세스를 제한하거나 허용할 수 있다. 이렇게 하면 악의적인 사용자 또는 트래픽이 리소스를 소비하거나 Virtual Private Cloud(VPC

2023년 5월 8일
·
0개의 댓글
·

DNS / Load Balancer

DNS란 Domain Name System의 약어로 인터넷 사이트에서 도메인이름과 IP주소를 1:1로 매칭 시키는 것을 의미함. 이것을 통해 사용자는 도메인 이름을 입력하여 해당하는 웹사이트에 접속을 할 수 있도록 도와줌 DNS 동작방식 ★ DNS 동작과정 DNS Query (from Web Browser to Local DNS) : "제가 원하는 웹 사이트의 IP 주소를 알고 계신가요?" Local DNS 서버에게 전달 DNS Query (from Local DNS to Root DNS) : "제가 원하는 웹 사이트의 IP 주소를 알고 계신가요?" Root DNS서버에게 전달 DNS Response (from Root DNS to Local DNS) : "저는 모르지만 , Com 도메인을 관리하는 네임서버의 이름과 IP 주소를 알려드릴 테니 거기에 물어보세요" DNS Query (from Local DNS to com NS

2023년 5월 7일
·
0개의 댓글
·
post-thumbnail

DNS / Load Balancer

📒 목차 > 📌 DNS란? 📌 Load Balancer란? 📌 DNS란? > 웹사이트에 접속 할 때 우리는 외우기 어려운 IP 주소 대신 도메인 이름을 사용한다. 예를들어 네이버에 접속하고 싶다면 naver.com과 같이 입력하여 접속한다. > > 도메인 이름을 사용했을 때 입력한 도메인을 실제 네트워크상에서 사용하는 IP 주소로 바꾸고 해당 IP 주소로 접속하는 과정이 필요하다. 즉, 단순히 naver.com이라고 입력하고 접속한다고 네이버에 접속이 되는 것이 아니다. > > 이러한 과정, 전체 시스템을 DNS(도메인 네임 시스템)라고 한다. > > 이러한 시스템은 전세계적으로 약속된 규칙을 공유하는데, 상위 기관에서 인증된 기관에게 도메인을 생성하거나 IP 주소로 변경할 수 있는 ‘권한’을 부여한다. > > DNS는 이처럼 상위 기관과 하위 기관과 같은 ‘계층 구조’를 가지는 분산 데이터베이스 구조를 가진다. 📌 Load Ba

2023년 5월 7일
·
0개의 댓글
·

DNS, Load Balancer

오늘의 공부 👍 > 오늘은 DNS, Load Balancer에 대해서 알아보겠습니다. > 📝 도메인(Domain) --- 원래 지정된 인터넷 접속 주소를 다른 이름으로 바꾸어 준 주소이다. http://111.111.1.1/ 이렇게 생긴 주소를 www.이름.com 이런 식으로 바꾸어 주는 것이다. www(호스팅 주소) + 이름.com(도메인) -> 뒷부분을 도메인이라고 한다. 간단하게 말해서 원래의 ip주소를 기억하기 쉬운 닉네임으로 바꾸는 개념이다. 📝 DNS(Domain Name System) --- IP주소를 기억하기 쉬운 도메인으로 바꾸거나 도메인을 다시 IP주소로 바꾸어주는 데이터베이스 시스템 연결되어있는 IP주소와 도메인이 저장된 곳이 DNS 도메인들마다 DNS와 연결해주는 서버 역할을 하는 DNS 서버, 다른 말로 네임서버가 있다. IP와 도메인을 연결해주는 시스템이다. ▷ DNS 작동 방식 주

2023년 5월 1일
·
0개의 댓글
·

2023.04.11 Cloud Computing 3

EC2 >EC2: Amazon Elastic Compute Cloud 사용자가 가상 컴퓨터를 임대 받아 그 위에 자신만의 컴퓨터 애플리케이션들을 실행할 수 있게 하는 서비스 1. EC2 관련 페이지 접속 2. EC2 - 보안그룹 ![](https://velog.velcdn.com/images/sanbon_8/p

2023년 4월 11일
·
0개의 댓글
·
post-thumbnail

DNS / Load Balancer

DNS (Domain Name Syetem) 우리는 웹사이트에 접속할 때 외우기 어려운 IP주소 대신에 도메인 이름을 사용하고 있는데, 도메인 이름을 사용했을 때 입력한 도메인을 실제 네트워크상에서 사용하는 IP 주소로 바꾸고 해당 IP 주소로 접속하는 과정이 필요합니다. 이러한 과정 및 전체 시스템을 DNS(도메인 네임 시스템)이라고 말합니다. 이러한 시스템은 전세계적으로 약속된 규칙을 공유하며, 상위 기관에서 인증된 기관에게 도메인을 생성하거나 IP 주소로 변경할 수 있는 권한을 부여합니다. DNS는 이처럼 상위 기관과 하위 기관과 같은 계층 구조를 가지는 분산 데이터베이스 구조를 가집니다. DNS 구성 요소 1️⃣ Domain Name Space( 도메인 네임 스페이스) 2️⃣ Name Server(네임 서버) = 권한 있는 DNS 서버 3️⃣ Resolver(리졸버) = 권한 없는 DNS 서버 Load

2023년 3월 7일
·
0개의 댓글
·
post-thumbnail

26. DNS / Load Balancer

DNS란 Domain Name System의 약자로 인터넷 사이트에서 도메인이름과 IP주소를 1:1로 매칭시키키는 시스템이다. 이를 통해 사용자는 도메인 이름을 입력하여 해당하는 웹사이트에 접속을 할 수 있도록 도와줍니다. Load Balancer란 한곳으로 몰려 병목현상이 생길 때를 대비하여 여러대의 서버에 대한 부하를 분산시켜주는 장치이다. 이를 통해 서버의 부하를 분산시켜 서버의 안정성과 가용성을 높일 수 있다. dns와 load balancer는 서로가 연관성을 갖는데, 로드밸런서는 여러대의 서버를 사용할 때 각서버에 대한 dns를 기록, 저장하여 각서버에대한 ip주소를 매칭시킨다. 또한, 로드밸런서를 사용하면 dns 기록에서 여러대의 서버 ip 주소를 반환해줄수 있기 때문에, 웹사이트나 앱

2023년 3월 3일
·
0개의 댓글
·
post-thumbnail

로드 밸런싱 알고리즘과 Load Balancer의 종류

로드 밸런서 (Load Balancer) >로드 밸런서는 특정 서버에 요청이 몰려 부하가 발생하는 것을 방지하기 위해 여러 서버에 트래픽을 분산시키는 장치 또는 소프트웨어이다. 로드 밸런서는 웹 서버의 앞단에 위치하며, 들어오는 요청을 적절한 서버로 라우팅해주고, 웹 서버가 뱉어낸 응답을 클라이언트에 다시 전달한다. 이 과정에서 로드 밸런서는 특정한 로드 밸런싱 알고리즘을 사용하여 요청을 수신해야 하는 웹 서버를 결정한다. 알고리즘은 각 서버의 사용량, 용량 및 전송된 요청 유형과 같은 요소를 고려한다. 로드 밸런서는 웹 서버의 앞단에 위치하기 때문에, 트래픽 분산 뿐만 아니라 보안 역할도 수행할 수 있다. 라우팅 알고리즘 (Routing Algorithm) 앞서 말했듯, 로드 밸런서가 서버로 요청을 넘겨줄 때 라우팅 알고리즘을 사용해 요청을 넘겨줄 서버를 결정한다. 가장 많이 사용되는 라우팅 알고리즘은 라운드 로빈 알고리즘

2022년 12월 31일
·
0개의 댓글
·

AWS ELB 사용시 Client IP를 확인할 수 없는 문제

문제 C# ForwardedHeader 설정만으로는 Elastic Load Balancer(여기서는 Application Load Balancer에 한하여)에서 Client IP 추적이 안된다. ASPNET의 예시 Load Balancer를 사용한다면, ForwardedFor 된 IP는 Client IP가 아니고, Load Balancer의 Private IP (172.따위로 시작하는)를 가져와 버리게 된다. 해결 방법 AWS공식 문서를 참조한다. > HTTP/HTTPS 리스너가 있는 Application Load Balancer 및 Classic Load Balancer의 경우 X-Forwarded-For HTTP 헤더에 클라이언트 IP 주소가 캡처됩니다. 이 IP 주소를

2022년 12월 29일
·
0개의 댓글
·
post-thumbnail

DAY35

1. Algorithm Study 2. Backend Class Load Balancer(로드밸런서) >로드밸런서 : 서버에 가해지는 부하를 분산시켜주는 장치로써, 클라이언트와 서버 사이에 위치하여 서버의 트래픽을 관리 📌 DNS와 백엔드 서버 컴퓨터 가운데 로드밸런서를 두고 DNS A레코드에는 로드밸런서의 IP주소를 연결시켜주고 로드밸런서를 백엔드 서버 컴퓨터와 연결시켜서 부하를 분산 로드밸런서를 기준으로 외부 트래픽이 접속하는 곳을 프론트 엔드, 외부 트래픽을 넘겨주는 곳을 백엔드 DNS & 로드밸런서 &인스턴스 연결 DNS를 거쳐 로드밸런서로 접속을 할 때에는 80번 포트로 접속이 되며 로드밸런서에서 인스턴스로 나갈때는 3000번 포트로 나감 → 3000번 포트를 지닌 플레이그라운드 접속이 가능 ![](https://velog.velcdn.com/images

2022년 12월 20일
·
0개의 댓글
·

DNS / Load Balancer

DNS DNS는 웹사이트의 IP주소와 도메인 주소를 이어주는 환경, 시스템이다. > ### Load Balancer 서버에 가해지는 부하를 분산시켜주는 장치로써, 클라이언트와 서버 사이에 위치하여 서버의 트래픽을 관리해준다.

2022년 12월 20일
·
0개의 댓글
·

DNS / Load Balancer

DNS / Load Balancer 접속자가 많아 두 대이상의 서버운용을 통해 트래픽을 분산시켜야 하는 경우에 사용하는 것이 로드밸런서, 로드밸런싱이라 한다. 위와 같이 접속자가 많아 웹서버를 2대로 운용을 한다면, DNS를 통해 로드밸런싱을 구현할 수 있다. 하지만 DNS를 이용한 로드밸런싱은 라운드로빈 방식으로 어느 작업이 먼저 끝날지 몰라, 각 서버의 실제 트래픽 양이나 생존 상태는 체크가 되지 않는다. 이러한 특성때문에 로드밸런싱은 분산형 웹서비스라고 불린다. 여기서 라운드로빈은 비선점형, 선점형 스케줄링 방식 중 선점형 방식으로 순서대로 진행되지 않고 동적으로 작업이 진행이 된다. 라운드 로빈은 다른 스케줄링 방식과는 다르게 작업에 우선순위를 두지 않고, 시간단위대로 cpu에 작업을 할당해 진행을 하는 방식이다. 만약에 웹서비스를 한대의 서버로 운용하게 될 경우 접속자가 많아서 생기는 문제점도 있겠지만, 디도스 공격에도 취약해진다. 공격자가 계속 한대의 서버로

2022년 12월 14일
·
0개의 댓글
·