1. 구성 파일 수정
(변경 전)
# lb
frontend haproxy-main
bind *:80
option forwardfor
default_backend apache_webserver
backend apache_webserver
balance roundrobin
server web01 192.168.56.210:80
server web02 192.168.56.220:80
(변경 후)
# lb
# vim /etc/haproxy/haproxy.cfg
frontend web-lb
bind *:80
option forwardfor
default_backend webserver
backend webserver
balance roundrobin
server web01 192.168.56.210:80
server web02 192.168.56.220:80
frontend db-lb
bind *:3306
mode tcp
option forwardfor
default_backend dbserver
backend dbserver
balance roundrobin
server db-m 192.168.56.230:3306
server db-s 192.168.56.240:3306
lb 서버에 설정을 추가하여 db와 웹의 균형을 맞춥니다.
2. 서비스 재시작
sudo systemctl restart haproxy.service
3. web01, web02 index.php 편집
# vim /var/www/html/index.php
<?php
$server_addr = "192.168.56.200"; # LB 서버 IP 주소
$user_name = "web_user";
$password = "dkagh1.";
$db_name = "web_db";
$connection = mysqli_connect($server_addr, $user_name, $password, $db_name);
$query = "SELECT * FROM web_tb";
$rst = mysqli_query($connection, $query);
if (mysqli_num_rows($rst) > 0) {
while($i = mysqli_fetch_assoc($rst)) {
echo "id : " . $i("id") . " | name : " . $i("name") . "<br>" ;
}
}
mysqli_close($connection);
?>
4. 연결 확인