본문 바로가기
카테고리 없음

리눅스 haproxy로 로드밸런싱(트래픽 분산)

by redbear0077 2023. 8. 1.
반응형

1. 웹서버(아파치) 설치

- 1,2 서버 모두 설치

# yum -y install httpd

 

2.haproxy 설치

- 1서버 설치

# yum -y install haproxy

 

3. 서비스 정상확인

상태확인
# systemctl staus httpd
# systemctl staus haproxy

시작
# systemctl start httpd
# systemctl start haproxy

종료
# systemctl stop httpd
# systemctl stop haproxy

재시작
# systemctl restart httpd
# systemctl restart haproxy

4. 로드밸런싱 설정

-서버 1 설정

-웹포트 : 80

-haproxy 포트 : 5000

-설정파일 경로 : /etc/haproxy/haproxy.cfg

# vi /etc/haproxy/haproxy.cfg

- 추가또는 변경 (검색 : round robin balancing between the verious backends)

#---------------------------------------------------------------------
# round robin balancing between the various backends
#---------------------------------------------------------------------
backend app
    mode                    http
    log                     global
    option                  httplog
    option                  dontlognull
    option http-server-close
    option forwardfor       except 127.0.0.0/8
    option                  redispatch
    retries                 1
    timeout http-request    10s
    timeout queue           1m
    timeout connect         10s
    timeout client          1m
    timeout server          1m
    timeout http-keep-alive 10s
    timeout check           10s
    maxconn                 3000
    balance     roundrobin
    server  app1 192.168.0.181:80 check #사용할서버 IP1
    server  app2 192.168.0.182:80 check #사용할서버 IP2

5. 웹서버 재기동

- 서버 1,2 모두확인

# systemctl restart http

 

6.포트정상확인

-서버 1,2 모두확인

- LISTEN이면 정상

-80, 5000 모두확인

# netstat -nltp | grep 80
# netstat -nltp | grep 5000

 

7. 로드밸런싱 정상 테스트

-index.html 파일로 테스트

서버1

# vi /var/www/html/index.html

추가
<!doctype html>
<html>
	<head>
		<title> server 1 </title>
	</head>
	<body>
		<h1> server 1 </h1>
	</body>
</html>

서버2

# vi /var/www/html/index.html

추가
<!doctype html>
<html>
	<head>
		<title> server 2 </title>
	</head>
	<body>
		<h1> server 2 </h1>
	</body>
</html>

-각 서버 IP로 화면확인

-서버 IP접속시 뜨는 화면

-haproxy포트로 접속

-아이피 뒤에 :5000으로 접속

-1번서버 2번서버가 번갈아가며 들어가진다.

 

반응형