6.17

w0nyyy·2022년 6월 17일
0

프로젝트

세미는 하이브리드 : aws + 오픈스택이 주다. GSLB

리전 넘나들기 : Cross-region -> GSLB

재해 복구, GSLB (ELB는 자기 리전을 벗어날 수 없어서 다른 벤더사 클라우드를 연결할 수 없음 . ELB뒷단에 HAPROXY를 두어야함.)

오픈스택

프로젝트

프로젝트 -네트워크 - 보안그룹

인바운드 규칙 추가

플로팅 IP

프로젝트에 IP 할당 클릭

이미지

Compute - 이미지 - 이미지 생성

키페어 생성

인스턴스

인터널 네트워크를 줘서 플로팅 ip와 nat 연결 해서 사용한다. 내부 네트워크를 줘야함

vpn(가상 사설 망)

IP 하나가 Customer gateway이다

Customer gateway 정의를 vpc 콘솔에서 한다.

VPC - VPN - 고객 게이트웨이 - 고객 게이트웨이 생성 클릭

* Transit Gateway 를 사용하지않고 가상 프라이빗 게이트웨이를 썻냐 ? 저렴해서

내 아이피 넣어주면 됨.

VPC - VPN - 가상 프라이빗 게이트웨이 - 가상 프라이빗 게이트웨이 생성 클릭

aws 인스턴스 생성

이름 seoul
MY-VPC, PUBLIC-2A, 보안그룹 : SG-WEB

// 사용자데이터
#!/bin/bash
yum install -y httpd
systemctl enable --now httpd
echo "<h1>SEOUL</h1>" > /var/www/html/index.html

azure 인스턴스 생성

리소스 그룹 - 만들기
리소스 이름 : RG-TEST
리소스 영역 : UK South

검토 + 만들기 클릭

가상머신 - 가상머신 만들기 클릭

리소스 그룹 : RG-TEST
이름 : london
가용성 옵션 : 가용성 영역
가용성 영역 : 영역1
이미지 : CentOS 7.9

// 고급 - 사용자 지정 데이터
#!/bin/bash
yum install -y httpd
systemctl enable --now httpd
echo "<h1>SEOUL</h1>" > /var/www/html/index.html

GCP 인스터늣 생성

Compute Engine - VM 인스턴스 만들기

ID 및 API 액세스 : 모든 Cloud API 에 대한 전체 액세스 허용

관리 - 자동화 -> 유저 데이터 추가

#!/bin/bash
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
yum install -y httpd
systemctl enable --now httpd
echo "<h1>OREGON</h1>" > /var/www/html/index.html

alibaba cloud

SEOUL(AWS) IP : 52.78.175.246
OREGON(GCP) IP : 34.168.43.106
LONDON(AZURE) IP : 20.77.69.167
HONGKONG(ALIBABA) IP : 47.243.28.191
글로벌 웹서버 구성 완료

Route53

route53 - 호스팅영역 생성

ACM을 이용하여 인증서 생성

ACM - 인증서 - 인증서 요청

퍼블릭 인증서 요청

haproxy를 설치하기 위한 인스턴스 생성

EC2 - 인스턴스 - 인스턴스 시작

이름 : HA-seoul

mobaxterm 접속


// AWS 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 52.78.175.246:80 cookie w1 check
    server             oregon 34.168.43.106:80 cookie w2 check
    server             london 20.77.69.167:80 cookie w3 check
    server             hongkong 47.243.28.191:80 cookie w4 check

# systemctl enable --now haproxy

haproxy 인스턴스의 퍼블릭 ip를 넣고 브라우저에서 접속하면 라운드 로빈 방식으로 사이트를 로드밸런싱 해줌

도쿄리전

서울리전에서 HA-seoul - 이미지 생성

이미지 생성 클릭

도쿄리전 EC2 - 인스턴스 - 인스턴스 시작 클릭

이름: HA-tokyo
내 AMI - 내 소유 : MY-AMI
네트워크
VPC : default
보안그룹 생성 - 이름은 그냥 자동생성 된걸로 사용 , SSH, 80포트 추가

HAPROXY 두개 구성 : 이중화 (VRRP)
로드밸런서 장치를 두개 구성, 로드밸런서가 라우터인 경우도 있따.

서울리전

로드밸런서 - 생성 클릭
ALB 생성 클릭 - 이름 : seoul-alb
서브넷 2A, 2C - 퍼블릭 서브넷으로 지정
보안그룹 : SG-ALB
리스너 : HTTPS

대상 그룹 생성 : tg-seoul, 프로토콜 HTTP !!!, 대상등록 : HA-seoul 만 체크, 아래보류 중인 것으로 포함
보안리스너 : 내 도메인 인증서 클릭

https://seoul.wonyyy.shop 접속

도쿄리전

로드밸런서 - 생성 클릭
ALB 생성 클릭 - 이름 : tokyo-alb
서브넷 1a, 1c
새 보안그룹
이름: SG-ALB 소문자로 쓰면 안됨. 충돌 우려
인바운드 규칙 : HTTPS, HTTP 추가해주기
리스너 : HTTPS

대상 그룹 생성 : tg-tokyo, 프로토콜 HTTP !!!, 대상등록 : HA-tokyo 체크, 아래보류 중인 것으로 포함
보안리스너 - 새 ACM 인증서 요청 - 도메인 이름 : *.wonyyy.shop

https://tokyo.wonyyy.shop 접속

상태검사

두 개의 로드밸런서가 active인지 stanby 인지 확인하려고 상태검사를 함.

route53 - 상태검사 - 이름:active

0개의 댓글