Load Balancer - HAProxy
์๋น์ค ๊ตฌ์ฑ๋

์๋ฒ ์ ๋ณด
VM1
192.168.10.116
Linux (CentOS 7)
Load Balancer
VM2
192.168.10.121
WindowsServer2016
์น ์๋น์ค (IIS)
VM3
192.168.10.122
WindowsServer2016
์น ์๋น์ค (IIS)
VM4
192.168.10.123
WindowsServer2016
์น ์๋น์ค (IIS)
VM5
192.168.10.125
WindowsServer2016
์น ์๋น์ค (IIS)
HAProxy ์ค์
์ค์น
์ค์น๊ฐ ์๋ฃ๋๋ฉด ๊ธฐ๋ณธ์ ์ธ ์ค์ ํ์ผ์ ๋ค์ ๊ฒฝ๋ก์ ์์
ํ์ผ ๋ด์ฉ ์์
๋ฐฑ์๋ ์ค์
HTTP ์ค์
WEB UI ์ค์
HAProxy ์๋น์ค
์์
๋ถํ ํ ์๋ ์คํ
์ํ ํ์ธ
์คํ ์ค๋ฅ ์ ํ์ธ ๋ฐฉ๋ฒ: ๋ฃจํธ๋ก ํฌ๊ทธ๋ผ์ด๋์์ ์๋์ผ๋ก ์์ํ๊ณ ์ค๋ฅ ๋ฉ์์ง๋ฅผ ํ์ธ
์๋น์ค๊ฐ ์์๋์ง ์๊ณ ์๋ ์ค๋ฅ ๋ฉ์์ง์ ๊ฐ์ด ๋ฐ ๊ฒฝ์ฐ
์ค๋ฅ๋ฉ์์ง: "Starting frontend mssql_frontend: cannot bind socket [0.0.0.0:1433]"
setsebool -P haproxy_connect_any=1 ๋ช
๋ น์ด์ ์ญํ
setsebool -P haproxy_connect_any=1 ๋ช
๋ น์ด์ ์ญํ setsebool: SELinux์ boolean ๊ฐ์ ์ค์ ํ๋ ๋ช ๋ น์ด
-P: ๋ณ๊ฒฝ ์ฌํญ์ ์๊ตฌ์ ์ผ๋ก ์ ์ฉํ์ฌ ์์คํ ์ฌ๋ถํ ํ์๋ ์ ์ง
haproxy_connect_any=1: HAProxy๊ฐ ๋ชจ๋ ๋คํธ์ํฌ ์๋น์ค์ ์ฐ๊ฒฐํ ์ ์๋๋ก ํ์ฉํ๋ boolean ๊ฐ์ ํ์ฑํ
๋ฐฉํ๋ฒฝ ์ค์ (ํฌํธ ๋ฐ ์๋น์ค ๋ฑ๋ก)
์๋ก์ด zone ์์ฑ
๋ฐฉํ๋ฒฝ์ ์๋น์ค ์ถ๊ฐ
๋ฐฉํ๋ฒฝ์ ํฌํธ ์ถ๊ฐ
firewalld ์ฌ์์ ๋ฐ ์๋ก ๋ฑ๋กํ zone ํ์ฑํ
์ ์ ์ค์ ์ฌ๋ถ ํ์ธ
์์ ์ค์ธ ํฌํธ ํ์ธ
๋ฐฉํ๋ฒฝ์์ ํฌํธ๋ฅผ ์ค์ ํด๋ ํด๋น ํฌํธ๋ก ์ค์ ์๋น์ค๊ฐ ์์ ๋๊ณ ์์ด์ผ ๋ํ๋จ
๋ฐฉํ๋ฒฝ ์คํ์ ๋์์ผ๋ ํ๋ก์ธ์ค๊ฐ ์ ๋ ์๋ ๊ฒ (ํฌํธ๋ฅผ ์ด๊ณ ๋๊ธฐํ๊ณ ์์ง ์์ ์ํ)
certbot SSL ์ธ์ฆ์ ๋ฐ๊ธ
letsencrypt์ผ๋ก ๋ฐ๊ธํ๊ธฐ ์ํด์๋ certbot ํ๋ก์ธ์๋ก ๋ฐ๊ธํ ์ ์์ผ๋ฉฐ CentOS7์์๋ epel-release๋ฅผ ์ค์นํด์ผ ๋ค์ด๋ก๋๊ฐ ๊ฐ๋ฅ
๋ฐ๊ธํ๋ ๋ฐฉ๋ฒ
Multi-Domain
์ฃผ์ํ ์ ์ 80๋ฒ ํฌํธ๋ก ์ ์ํ์ฌ ssl์ ๋ฐ๊ธํ๊ฒ ๋๋๋ฐ haproxy๋ฅผ 80๋ฒ ํฌํธ๋ฅผ ์ฌ์ฉํ๊ณ ์๋ค๋ฉด ์๋น์ค๋ฅผ ์ค๋จํ๊ณ ์งํ
์ค์น๊ฐ ์๋ฃ๋๋ฉด ๋ค์ ๊ฒฝ๋ก์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ค์น
ํ์ผ์ ๋ถ๋ฌ์ค๋๊ฒ์ ๊ฐ์ํ ํ๊ธฐ ์ํด์ ๋ค์ ๋ช
๋ น์ด๋ก ํ๋๋ก ํฉ์น๋ค
์ธ์ฆ์ ์๋ ๊ฐฑ์ ์ค์
Bash ์ ์คํฌ๋ฆฝํธ ํ์ผ ์์ฑ
์คํฌ๋ฆฝํธ ํ์ผ์ ๊ถํ ๋ถ์ฌ
์คํฌ๋ฆฝํธ ํ์ผ ์คํํ๊ณ ์์ฑ๋ ๋ก๊ทธ ํ์ผ ๋ง์ง๋ง ์์ ์ผ์ ํ์ธ
crontab์ ์ด์ฉํ์ฌ ์คํฌ๋ฆฝํธ ํ์ผ ์๋ ์คํ ์ค์
๋งค์ผ ์ค์ 3์ ๋ง๋ค ์คํ
crontab ์๋น์ค ์์
HTTPS ๋ฐ ๋๋ฉ์ธ๋ณ ์ ์ํ ๋ฐฑ์๋ ์ค์
๊ธฐ์กด ์ ์ํ 80 ํฌํธ ์ค์ ์ ๋ค์๊ณผ ๊ฐ์ด ๋ณ๊ฒฝ
HTTP ์์ฒญ์ ๋ฐ์๋ค์ด๋ ํ๋ก ํธ์๋๋ก, ํด๋ผ์ด์ธํธ๊ฐ HTTPS๊ฐ ์๋ ์์ฒญ์ ๋ณด๋ผ ๊ฒฝ์ฐ์๋ redirect ์ง์์ด๋ฅผ ์ฌ์ฉํ์ฌ HTTPS๋ก ๋ฆฌ๋๋ ์
HTTPS ์ค์
์ฌ๋ฌ๊ฐ ์ธ์ฆ์ ํ์ผ(.pem) ์ธํ
๋ฐฉ๋ฒ <์ฐธ๊ณ >
โป ๋ฆฌ๋
์ค ์คํ๋ ํฌํธ ํ์ธ ๋ฐ ๋ฑ๋ก
์คํ๋ HTTP Port ํ์ธ๋ฐฉ๋ฒ
HTTP Port ์คํํ๊ธฐ ์ํด ์ถ๊ฐํด์ฃผ๋ ๋ฐฉ๋ฒ
HTTP Port ๋ซ๊ธฐ ์ํด ์ ๊ฑฐ
๊ธฐํ
CentOS ์ค์น ์ฐธ๊ณ : https://copycoding.tistory.com/269
Last updated