티스토리 뷰
본 포스팅은 Apache의 Load Balancing에 대한 가이드입니다.
본 포스팅은 Apache의 worker별 load balancing 을 구성하는 시나리오입니다.
먼저 Standalone Mode에서의 Clustering환경 구성과 Apache와의 연동이 필요하니, 지난 포스팅을 꼭 참고해주세요.
Apache 구성파트입니다.
1.부하 분산을 위해 요청을 마운트할 worker는 load_balancer 입니다. 이를 httpd.conf 에 설정합니다.
- httpd.conf
..
###AJP13 Setting For Node1,2
LoadModule jk_module /home/test/apache/modules/mod_jk.so
JkWorkersFile /home/test/apache/conf/worker.properties
JkShmFile /home/test/apache/logs/mod_jk.shm
JkLogFile /home/test/apache/logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkMount /* load_balancer
2.worker에 대한 설정입니다.
노드별 worker, 그리고 이 worker들을 묶어 관리할 load_balancer라는 worker에 대한 구성을 해야합니다.
- worker.properties
# Set properties for worker_node1.worker_node2,load_balancer
worker.list=load_balancer
worker.load_balancer.type=lb
worker.load_balancer.balance_workers=worker_node1,worker_node2
worker.load_balancer.sticky_session=true
# worker properties
worker.worker_node1.host=IP
worker.worker_node1.port=Port
worker.worker_node1.type=ajp13
worker.worker_node1.route=worker_node1
worker.worker_node1.lbfactor=1 //부하분산
worker.worker_node2.host=IP
worker.worker_node2.port=Port
worker.worker_node2.type=ajp13
worker.worker_node2.route=worker_node2
worker.worker_node2.lbfactor=5 //부하분산
- worker.[worker명].lbfactor : 요청을 몇번 처리하고 다음 worker에게 부하를 분산시킬것인지 결정합니다.
위 가이드에서는 worker_node1이 1번 요청을 받고 worker_node2가 5번의 요청을 받겠네요.
구성은 끝났습니다. Apache 재기동을 하고 테스트를 시작해보겠습니다.
- http://localhost/session.jsp
access.log
- 172.21.70.219 - - [09/Aug/2018:13:01:36 +0900] GET /4/session.jsp HTTP/1.1 200 620 %{Referer}i %{User-Agent}i GQKqml6dG10cK-fjvx5QTYiPllv1yRCQAV7vp11d default task-1 |
b. session.jsp 재호출 - Count 2~6
- http://localhost/session.jsp
access.log
- 172.21.70.219 - - [09/Aug/2018:13:01:49 +0900] GET /4/session.jsp HTTP/1.1 200 621 %{Referer}i %{User-Agent}i GQKqml6dG10cK-fjvx5QTYiPllv1yRCQAV7vp11d default task-1 |
c. session.jsp 재호출 - Count 7
access.log
- 172.21.70.219 - - [09/Aug/2018:13:02:57 +0900] GET /4/session.jsp HTTP/1.1 200 621 %{Referer}i %{User-Agent}i GQKqml6dG10cK-fjvx5QTYiPllv1yRCQAV7vp11d default task-1 |
두 노드간의 처리 비율이 설정한대로 1:5인것을 확인할 수 있습니다.
하드웨어의 성능이 다른 서버(WAS)로의 요청이 필요한 상황인경우, Load Balancing 처리를 통해 처리비율을 다르게 줌으로써 성능상의 이점을 얻을 수 있습니다.
고맙습니다.
'④ 미들웨어 > ⓐ Apache' 카테고리의 다른 글
[Apache] Sticky Session 사용가이드 (0) | 2018.08.13 |
---|---|
[Apache] mod_status.c 를 이용한 Web Console 모니터링 (0) | 2018.08.13 |
[Apache] mod proxy balancer 를 이용한 Active/Passive Setup (0) | 2018.08.09 |
[Apache 고수] Part 2. Apache Application Deploy (0) | 2018.07.31 |
[Apache 고수] Part 1. Apache Install & Windows Service (0) | 2018.06.05 |
- Total
- Today
- Yesterday
- jeus
- Da
- aa
- API Gateway
- JEUS7
- node.js
- nodejs
- SWA
- wildfly
- MSA
- 아키텍처
- webtob
- apache
- 쿠버네티스
- git
- kubernetes
- SA
- Architecture
- k8s
- JBoss
- openstack tenant
- Docker
- aws
- 마이크로서비스 아키텍처
- JEUS6
- 마이크로서비스
- 오픈스택
- OpenStack
- TA
- openstack token issue
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |