본문 바로가기

KOSA 클라우드 솔루션즈 아키텍트 양성과정

[6.17] 오픈스택, 퍼블릭 클라우드(하이브리드 클라우드 기초)

하이브리드 클라우드

 

* SLB (Server Load Balancing) : L4(NLB), L7 (ALB)스위치 : 서버를 로드 밸런싱 하는 역할

* 도쿄 리전이 6시간 정도 멈췄던 사건이 있었음, 하지만 ELB는 리전에 국한

-> 따라서 더 높은 가용성을 위해 리전을 넘나드는 작업이 필요함

-> CROSS-REGION이 가능한 GSLB 필요 (실습 때는 대륙별로 구현하는 것이 좋을 것)

 

오렌지 색 : active

파란색 : passive(standby의 의미)

ELB는 리전에 국한되기에 다른 퍼블릭 클라우드와 연동 불가

-> 리전을 벗어나 로드밸런싱 하고 싶으면 ELB 뒷단에 HAProxy가 들어감

-> Route 53은 AWS를 제외한 타 퍼블릭 클라우드와는 연동 불가

 

 

ESXI는 스토리지 게이트웨이

EFS는 프라이빗 IP를 가지고 있어서, VPN을 통해 오픈스택에서도 이용 가능

 


동일 방식으로 Floating IP 세 개정도 생성
프로젝트 / Compute / 이미지

 

프로젝트 / Compute / 키 페어

 

 

인스턴스 시작 클릭

 


# AWS Site to Site(s2s) 개념

 

* VPN (Virtual Private Network) - 가상 사설망

* Virtual Private Gateway : IGW와 동일한 역할, 하지만 오직 VPN 연결만을 위해 사용됨

-> VPC 내부 VM들을 인터넷에 연결시키고, 인터넷으로부터의 트래픽을 받아오는 역할

* Customer gateway : 내 아이피 검색했을 때 나오는 IP를 유일한 퍼블릭ip로 사용

* VPN connection : 비밀 키들이 이용해서 오가는 데이터를 암호화, 복호화(중간에 데이터를 훔쳐가도 복호화X)

 

-> 위의 세 가지 장치들은 aws에서 설정해야 함

 


# AWS Site to Site(s2s)

 

이름, IP주소만 설정하고 고객게이트웨이 생성

 

이름만 정의하고 가상 프라이빗 게이트웨이 생성


# Route 53 생성

 

가비아에 도메인을 입력, 소유자 인증, 적용 클릭


# ACM

 

Route53에서 레코드 생성
Route 53에 자동으로 CNAME이 입력됨


# HAProxy를 설치하기 위한 인스턴스 만들기

 

 

인스턴스 생성 후 퍼블릭 IP로 mobaXterm에서 아래의 명령어 실행하여 HAProxy 설치

# yum install -y haproxy
# vi /etc/haproxy/haproxy.cfg
global
    daemon

defaults
    mode               http

frontend  http-in
    bind *:80
    default_backend    backend_servers
    
backend backend_servers
    balance            roundrobin
#    cookie  SVID insert indirect nocache maxlife 10s
    server         seoul 3.34.123.28:80 cookie w1 check
    server         oregon 34.145.100.147:80 cookie w2 check
    server         london 40.81.128.1:80 cookie w3 check

# systemctl enable --now haproxy

 

도쿄에서도 HAProxy 설치하기 위해 인스턴스 이미지 복사해서 도쿄로 넘기기

* 이미지를 넘기면 스냅샷도 같이 넘어감

 

도쿄 리전으로 AMI 전송, 해당 AMI로 인스턴스 생성

 

* 결과적으로 SEOUL의 HA-seoul VM이 엑티브 상태, 도쿄의 HA-tokyo VM이 스탠바이 상태

* 이중화 : 서울 리전의 HAProxy 서버와 도쿄 리전에도 HAProxy 서버를 만들어 놓은 것


# HTTPS를 적용하기 위한 ELB 셋팅

 

* https 보안 접속을 위해서는 ALB나 Cloudfront를 거쳐야 함

 

# 서울 리전에서 로드 밸런서 생성

 

대상 그룹 생성
대상 그룹 : 백엔드는 80번 포트니까 HTTP 80으로 변경

 

다시 ALB생성 화면으로 와서 대상 그룹 선택

 

인증서도 선택

 

# 도쿄 리전에서 로드 밸런서 생성

 

새 보안 그룹 생성

* SG를 소문자로 쓰게 되면 디폴트 보안 그룹과 충돌하니까 대문자로 쓰기

 

다시 ALB생성 화면으로 돌아 와서 보안 그룹 선택

 

대상 그룹도 생성해주기

 

백엔드는 HTTP이므로 HTTP 선택

 

ALB 생성 화면으로 돌아 와서 새로 만든 대상 그룹 선택

 

새 ACM 인증서 요청

 

Route 53에서 레코드 생성

 

다시 ALB 생성 화면 와서 인증서 선택
Route 53에 서울, 런던, 오레곤 IP주소 넣어줌

* 단순 라우팅 정책으로 하면 단순하게 라우팅 되어 랜덤하게 세 가지 ip 중 아무거나 나옴

-> 도메인 하나에 여러 개의 IP를 연동 시키는 것

 

 

만들어 놓은 alb에 도메인을 주는 작업
만들어 놓은 alb에 도메인을 주는 작업

 

서울 리전 상태검사 생성

 

도쿄 리전 상태 검사 생성