โ๏ธAWS ์คํ ๋ฆฌ์ง ๊ณต๊ฐ์ ESXi์ ์ฐ๊ฒฐ.
โ๏ธAWS์ Openstack VPN ์ฐ๊ฒฐ
โ๏ธGSLB;Global Server Load Balancing
GSLB๋ฅผ ์ด์ฉํด์ failover(=์ฅ์ ์กฐ์น)(active passive์ํ) active์ ๋ฌธ์ ์๊ธฐ๋ฉด passive๋ก ๋๊ธฐ๋ ๋ฐฉ์์ผ๋ก.
ํ์ง๋ง route53์ ELB๋ ๋ฆฌ์ ์ ๋ฒ์ด๋๋ ๊ฒ์ ํ๊ณ๊ฐ ์์ด์ ELB๋ง์ผ๋ก๋ GSLB๋ถ๊ฐ.(๋ค๋ฅธ ๋๋ฅ, ๋ค๋ฅธ ํ๋ซํผ์ผ๋ก ๋๊ธฐ๋ ๊ฒ๋ค)
=> ๋๋ฌธ์ HAproxy๋ฅผ ELB๋ท๋จ์ ์ค์นํด์ ์ฐ๊ฒฐํด์ผํจ.
๋ง์ฝ์ ELB๋๋ฌธ์ ๋ญ๊ฐ ์๋๋ฉด ELB ๊ฑท์ด๋ด๊ณ HAproxy ํ๊ณ http๋ก ์ด์ฉํ๊ธฐ. ELBํ๋ ์ด์ ๋ https,ACM์ด์ฉํ๊ณ ์ถ๊ธฐ ๋๋ฌธ์.
AzureDB์๋ฒ ์ด์ฉํ๊ธฐ.
outbound ๋ด๋ณด๋ด๋ ๊ฒ์ ํธ๋ํฝ์ด ๋ค ํ์ฉ ์ค. ๋ค์ด์ค๋ ๊ฒ์ด ์ฐจ๋จ๋๊ณ ์์ด์ ๊ท์น์ถ๊ฐ ํด์ผํจ.
1-1. ๊ท์น ์ถ๊ฐ - ๊ท์น - ALL ICMP(ping), HTTP(web), SSH(keypair) - ์ถ๊ฐ
โ๏ธ ํ๋ก์ ํธ - ๋คํธ์ํฌ - Floating IP - ํ๋ก์ ํธ์ IPํ ๋น - Pool : External-Network - IPํ ๋น => 3๊ฐ ์์ฑ
ํ๋ก์ ํธ - COMPUTE - ์ด๋ฏธ์ง - ์ด๋ฏธ์ง ์์ฑ - ์ด๋ฏธ์ง ์ด๋ฆ : CentOS7 - ์ด๋ฏธ์ง ์์ค ํ์ผ : CentOS-7-x86_64-GenericCloud-2111.qcow2 / ํฌ๋ฉง :QCOW2 - ์ด๋ฏธ์ง์์ฑ
โ๏ธ ํ๋ก์ ํธ - COMPUTE - ํค ํ์ด - ํค ํ์ด ์์ฑ - ํค ํ์ด ์ด๋ฆ : open-key - ํค ์ ํ : SSHํค - ํค ํ์ด ์์ฑ
โ๏ธ 1. ํ๋ก์ ํธ - compute - ์ธ์คํด์ค - ์ธ์คํด์ค ์์ - ์ธ์คํด์ค ์ด๋ฆ : CentOS7 - next
โ๏ธ 1-1. ๋ณผ๋ฅจ ํฌ๊ธฐ : 10gb - centos7ํ ๋น - next
โ๏ธ 1-2. m1.micro ํ ๋น - next
โ๏ธ 1-3. ๋คํธ์ํฌ internal-network ๊ทธ๋๋ก -next
โ๏ธ1:1๋ํธ ๋งคํ์ ํตํด์ ์ธ๋ถ์ ๋ด๋ถ๋ฅผ ์ฐ๊ฒฐํ ์์ ์. ๊ผญ Internal์ ํด์ ์ฌ์ค IP๋ฅผ ๋ฐ์ ์ ์๋๋ก ํด์ผํจ.
โ๏ธ 1-4. ๋คํธ์ํฌ ํฌํธ skip (next) - ๋ณด์๊ทธ๋ฃน : default ํ ๋น ํด์ ํ SG-WEB ํ ๋น - next
โ๏ธ 1-5. open-key ํ ๋น ํ์ธ ํ next
โ๏ธ 1-6. ๊ตฌ์ฑ - ์ฌ์ฉ์ ์ ์ ์คํฌ๋ฆฝํธ :
#!/bin/bash
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
yum install -y httpd
systemctl enable --now httpd
https://docs.aws.amazon.com/ko_kr/vpn/latest/s2svpn/VPC_VPN.html
๋ ์ง์ ๊ฐ์ ์ฐ๊ฒฐ์ ์ธํฐ๋ท์ผ๋ก ์ฐ๊ฒฐ.
๋ฐ์ดํฐ ๋ณด์์ ์ํด์ key์ด์ฉ .
VP๊ฒ์ดํธ์จ์ด๋ ์ธํฐ๋ท๊ฒ์ดํธ์จ์ด๋ ๋๊ฐ์ ๊ฑด๋ฐ VPN์ฐ๊ฒฐ๋ง์ ์ํด์ ์๋ ๊ฒ์ด ๋ค๋ฆ.
customer gateway๋ ์ฐ๋ฆฌ ์ปดํจํฐ์ ๊ณต์ฉIP
์ด๊ฑฐ ๋ ์ฐ๊ฒฐ์ VPC์ปค๋ฅ์
์ด ์ํธํ๋ฅผ ํด์ค .
๋๊ตฐ๊ฐ๊ฐ ๋ณด๋๋ผ๋(ํ์ณ๊ฐ๋๋ผ๋) ์์ ํ๊ฒ ์ง์ผ์ค. ์ ์์ฒด๋ ์ธํฐ๋ท. VPN์ค์ ํด๋์ ์ํธํ๋ฅผ ํด์ ๋ฐ์ดํฐ๋ฅผ ์ง์ผ์ค.
โ๏ธ 0. VPN-๊ณ ๊ฐ๊ฒ์ดํธ์จ์ด(customer gateway)-๊ณ ๊ฐ ๊ฒ์ดํธ์จ์ด ์์ฑ
โ๏ธ 1. ์ด๋ฆ : MY-CGW - IP์ฃผ์ : ๋ด PC์ ๊ณต์ฉ IP
โ๏ธ 0. VPN-๊ฐ์ํ๋ผ์ด๋น๊ฒ์ดํธ์จ์ด-๊ฐ์ํ๋ผ์ด๋น๊ฒ์ดํธ์จ์ด ์์ฑ
โ๏ธ 1. ์ด๋ฆ : MY-VGW - ๊ฐ์ ํ๋ผ์ด๋น ๊ฒ์ดํธ์จ์ด ์์ฑ
โ๏ธ ์ด๋ฆ : SEOUL - ์ด๋ฏธ์ง : ์๋ง์กด๋ฆฌ๋ ์ค - ์ธ์คํด์ค ์ ํ : t2.micro - ํคํ์ด : aws-key - VPC: MY-VPC - ์๋ธ๋ท : MY-PUBLIC-SUBNET-2A - ํผ๋ธ๋ฆญ IP: ํ์ฑํ -๋ณด์๊ทธ๋ฃน : SG-WEB - ์ฌ์ฉ์ ๋ฐ์ดํฐ :
#!/bin/bash
yum install -y httpd
systemctl enable --now httpd
echo "<h1>SEOUL</h1>" > /var/www/html/index.html
โ๏ธ ์ด๋ฆ : RG-TEST , ๋ฆฌ์ : UK(south)
๊ฒํ + ๋ง๋ค๊ธฐ - ๋ง๋ค๊ธฐ ํด๋ฆญ
โ๏ธ ๋ง๋ค๊ธฐ - Azure๊ฐ์๋จธ์ - ๋ฆฌ์์ค ๊ทธ๋ฃน : RG-TEST - ์ด๋ฆ : LONDON - ์ง์ญ : UK South - ๊ฐ์ฉ์ ์์ญ : ์์ญ 1 - ์ด๋ฏธ์ง : Centos based 7.9-ํฌ๊ธฐ : ์ ๊ฒฉ๋ฌด๋ฃ
โ๏ธ ํค ์ ์ด๋ฆ : azure-key -์ธ๋ฐ์ด๋ ํฌํธ : HTTP, SSH - ๊ณ ๊ธ
โ๏ธ ์ฌ์ฉ์ ์ง์ ๋ฐ์ดํฐ ๋ฐ cloud-init :
#!/bin/bash
yum install -y httpd
systemctl enable --now httpd
echo "<h1>LONDON</h1>" > /var/www/html/index.html
=> ๊ฒํ + ๋ง๋ค๊ธฐ - ๋ง๋ค๊ธฐ - ํ๋ผ์ด๋น ํค ๋ค์ด๋ก๋ ๋ฐ ๋ฆฌ์์ค ๋ง๋ค๊ธฐ
์ธ์คํด์ค ๋ง๋ค๊ธฐ - ์ด๋ฆ : oregon ๋ฆฌ์ : ์ค๋ฆฌ๊ฑด - ์์ญ us-west1-b-๋จธ์ ์ ํ e2-micro
๋ถํ
๋์คํฌ - ๋ณ๊ฒฝ - ์ด์์ฒด์ : centos-๋ฒ์ : centos7
์ก์ธ์ค ๋ฒ์ : ๋ชจ๋ cloud API์ ๋ํ ์ ์ฒด ์ก์ธ์ค ํ์ฉ
๋ฐฉํ๋ฒฝ : HTTPํธ๋ํฝ ํ์ฉ
์๋ ๋๋๋ค์ด ๋ด๋ ค์ ๊ด๋ฆฌ - ์๋ํ ์์์คํฌ๋ฆฝํธ :
#!/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
=> ๋ง๋ค๊ธฐ
โ๏ธ ์ ์ ๋ง๋ค์ด๋ ์ธ์คํด์ค start ๋ฒํผ ํด๋ฆญ
[root@webserver ~]# echo "<h1>HONGKONG</h1>" > /var/www/html/index.html
SEOUL(AWS) IP : 13.124.205.118
HONGKONG(alibaba) IP : 47.242.193.56
LONDON(Azure) IP : 20.0.8.179
OREGON(GCP) IP : 34.145.88.165
ํธ์คํ ์์ญ ์์ฑ - ๋๋ฉ์ธ ์ด๋ฆ๋ฃ๊ณ ์์ฑํด๋๊ธฐ.
โ๏ธ AWS Certificate Manager - ์ธ์ฆ์ ์์ฒญ - ํผ๋ธ๋ฆญ ์ธ์ฆ์ ์์ฒญ - ์์ ํ ์ ๊ทํ๋ ๋๋ฉ์ธ ์ด๋ฆ : *.lovemj.shop - DNS ๊ฒ์ฆ - ๊ถ์ฅ ์ฒดํฌ - ์์ฒญ ํด๋ฆญ
โ๏ธ ์ธ์ฆ์ ID ํด๋ฆญ - CNAME๋ณด์ผ ๋๊น์ง ๊ธฐ๋ค๋ ธ๋ค๊ฐ Route53์์ ๋ ์ฝ๋ ์์ฑ ํด๋ฆญ - ๋ ์ฝ๋ ์์ฑ -
โ๏ธ EC2-์ธ์คํด์ค - ์ธ์คํด์ค ์์ - ์ด๋ฆ : HA-seoul - ์๋ง์กด ๋ฆฌ๋ ์ค (๋ํดํธ) - ํค ํ์ด - aws-key - ๋คํธ์ํฌ - ํธ์ง - VPC : MY-VPC - ์๋ธ๋ท: ๋ง์ด ํผ๋ธ๋ฆญ ์๋ธ๋ท C - ๋ณด์๊ทธ๋ฃน : SG-WEB - ์ธ์คํด์ค ์์
# 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 13.124.205.118:80 cookie w1 check
server hongkong 47.242.193.56:80 cookie w2 check
server london 20.0.8.179:80 cookie w3 check
server oregon 34.145.88.165:80 cookie w4 check
# systemctl enable --now haproxy
โ๏ธ ์ธ์คํด์ค ํญ - HA-seoul์ฒดํฌ - ์์
- ์ด๋ฏธ์ง ๋ฐ ํ
ํ๋ฆฟ - ์ด๋ฏธ์ง ์์ฑ
์ด๋ฏธ์ง ์ด๋ฆ : MY-AMI - ์ด๋ฏธ์ง ์์ฑ - ์ฌ๋ถํ
์ ํจ : ํ์ฑํ ํญ์์ NAME MY-AMi, ์ฒดํฌํ๊ณ - ์์
- AMI ๋ณต์ฌ - ๋์ ๋ฆฌ์ : ์์์ ํํ์(๋์ฟ)- AMI๋ณต์ฌ ํด๋ฆญ
โ๏ธ ๋์ฟ - EC2- ์ธ์คํด์ค -์ธ์คํด์ค ์์ - ์ด๋ฆ : HA-tokyo - ์ด๋ฏธ์ง : ๋ด AMI ; MY-AMI -์ ํค ํ์ด ์์ฑ - ์ด๋ฆ : tokyo-key - RSA,.pem - ํค ํ์ด ์์ฑ - ๋คํธ์ํฌ ์ค์ : VPC , ์๋ธ๋ท : DEF - ๋ณด์๊ทธ๋ฃน์์ฑ - SSH, HTTP - ์ธ์คํด์ค ์์
โ๏ธ์์ธ - ๋ก๋๋ฐธ๋ฐ์ - ALB ์์ฑ - ์ด๋ฆ : seoul-alb - VPC : MY-VPC - ๋งคํ : a,c ;์๋ธ๋ท : ํผ๋ธ๋ฆญ - ๋ณด์๊ทธ๋ฃน : SG-ALB - ๋ฆฌ์ค๋ : HTTPS ; ๋์๊ทธ๋ฃน ์์ฑ - ์ด๋ฆ : TG-SEOUL - ํ๋กํ ์ฝ : HTTP - ๋ค์ - ์ธ์คํด์ค HA-seoul๋ง ์ ํ - ์๋์ ๋ณด๋ฅ ์ค์ธ ๊ฒ์ ํฌํจ - ๋์๊ทธ๋ฃน์์ฑ - ๋ค์๋ก๋๋ฐธ๋ฐ์ ํญ - ๋์๊ทธ๋ฃน TG-SEOUL์ ํ - ACM์ธ์ฆ์ - ๋ง๋ค์ด๋ ๋๋ฉ์ธ์ธ์ฆ์์ ํ - ๋ก๋๋ฐธ๋ฐ์ ์์ฑ
โ๏ธ ๋์ฟ - ๋ก๋๋ฐธ๋ฐ์ - ALB ์์ฑ - ์ด๋ฆ : tokyo-alb - VPC : DEF - ๋งคํ : a,c - ๋ณด์๊ทธ๋ฃน : ์ ๋ณด์๊ทธ๋ฃน ์์ฑ - ๋ณด์๊ทธ๋ฃน ์ด๋ฆ : SG-ALB - ์ค๋ช : SG-ALB - ์ธ๋ฐ์ด๋ ๊ท์น์ถ๊ฐ - HTTP,HTTPS (any.ipv4) - ๋ณด์๊ทธ๋ฃน์์ฑ ํด๋ฆญ - ๋ค์๋ก๋๋ฐธ๋ฐ์ ์์ฑ ํญ์ผ๋ก ์์, SG-ALB์ ํ - ๋ฆฌ์ค๋ : HTTPS, ๋์๊ทธ๋ฃน์์ฑ ํด๋ฆญ - ์ด๋ฆ : TG-TOKYO- ํ๋กํ ์ฝ : HTTP - ๋ค์ - ์ธ์คํด์ค HA-tokyo๋ง ์ ํ - ์๋์ ๋ณด๋ฅ ์ค์ธ ๊ฒ์ ํฌํจ - ๋์๊ทธ๋ฃน ์์ฑ ํด๋ฆญ -๋ค์๋ก๋๋ฐธ๋ฐ์ ํญ - ๋์๊ทธ๋ฃน TG-TOKYO์ ํ - ACM์ธ์ฆ์ ; ์ ACM์ธ์ฆ์ ์์ฒญ - ์ธ์ฆ์ ์์ฒญ - ํผ๋ธ๋ฆญ ์ธ์ฆ์ ์์ฒญ - ์์ ํ ์ ๊ทํ๋ ๋๋ฉ์ธ ์ด๋ฆ : *.lovemj.shop - DNS ๊ฒ์ฆ - ๊ถ์ฅ ์ฒดํฌ - ์์ฒญ ํด๋ฆญ - ๋ค์ ๋ก๋๋ฐธ๋ฐ์ค ์์ฑ๋ชฐ๋ก์์ - ๋ง๋ค์ด๋ ์ธ์ฆ์ ์ ํ - ๋ก๋ ๋ฐธ๋ฐ์์์ฑ
๊ฐ ์ง์ญ์ด๋ฆ์ ์น์๋ฒ IP๋ค ๋ฃ๊ธฐ
์์ธ
๋์ฟ
โ๏ธactive
์ํ๊ฒ์ฌ - ์ํ๊ฒ์ฌ ์์ฑ- ์ด๋ฆ : active - ๋๋ฉ์ธ ์ด๋ฆ ์ฒดํฌ - ํ๋กํ ์ฝ : HTTPS - ๋๋ฉ์ธ์ด๋ฆ : ์์ธ alb ๋๋ฉ์ธ
๊ณ ๊ธ๊ตฌ์ฑ - ์์ฒญ ๊ฐ๊ฒฉ : ํ์ค30์ด - ์คํจ ์๊ณ๊ฐ : 1 - ๋ค์ - ๊ฒฝ๋ณด์์ฑ ์๋์ค - ์ํ๊ฒ์ฌ์์ฑ
โ๏ธpassive
์ํ๊ฒ์ฌ์์ฑ - ์ด๋ฆ : passive - ๋๋ฉ์ธ ์ด๋ฆ - ํ๋กํ ์ฝ : HTTPS - ๋๋ฉ์ธ ์ด๋ฆ : ๋์ฟ alb ๋๋ฉ์ธ - ๊ณ ๊ธ - ์๊ณ๊ฐ : 1 - ๋ค์ - ๊ฒฝ๋ณด์์ฑ ์๋์ค- ์ํ๊ฒ์ฌ์์ฑ
๐โ๏ธโ๏ธ๐ขโญ๏ธ๐
OPENSTACK ์ด๋ฏธ์ง ๋ค๋ฃจ๋ ์๋น์ค
Site to Site
๊ฐ์ํ๋ผ์ด๋น ๊ฒ์ดํธ์จ์ด๋ฅผ ์ด์ฉํ๋ ์ด์ ? VPN์ฐ๊ฒฐ๋ง์ ์ํด. transit์ ์ฌ๋ฌ ๊ธฐ๋ฅ์ด ์์.
๊ฐ์ ํ๋ผ์ด๋น์ด ๋ ์ ๋ ดํจ. ๋น์ฉํจ์จ์ .